2010-07-26
We are hiring
Our company is growing so we would be happy to see new team members: developers, PM, sales manager and system administrator. Moreover, the good news is our convenient office in Tomsk is now doubled in size!
2010-05-25
Heaven 2.1, Tropics 1.3, Sanctuary 2.3
Released updated versions of Unigine benchmarks with support of OpenGL 4.0 (including hardware tessellation) and stereo 3D technology (including 3D Vision): Heaven 2.1, Tropics 1.3 and Sanctuary 2.3.
2010-05-04
5 years since the first commercial release of Unigine
The first commercial version of Unigine engine was released five years ago, on May 4, 2005. With the release number 0.3, it had codebase size of approximately 10% relative to the current one. At that time, there used to be 5 people on board.
2010-03-23
Unigine Heaven Benchmark 2.0
Updated version of Unigine Heaven DirectX 11 benchmark is now publicly available. Main changes are: added more content, improved engine, introduced "moderate" and "extreme" tessellation modes, added Linux version (32/64 bit).
2010-02-22
Unigine booth at GDC SF 2010
We gladly invite you to come visit our booth #1344 at Game Developers Conference, San Francisco, 2010. There you will be presented the recent version of Unigine Engine and the Heaven Benchmark 2.0 along with a lot of featured Unigine-based content. Feel free to contact us for an appointment.

Development Log

You can subscribe to our RSS feed.
There is also a translated LiveJournal account: unigine_devlog.
2009-12-23 Link

Water

What's new:

  • Added SpawnThreshold parameter for particle systems (spawn rate for 'random' and 'spark' emitters depends on the speed of parent objects).
  • Separate axis flip for particles: 'variation_x' and 'variation_y' parameters (run upgrade.py script for data upgrade).
  • Shared 2D reflections (the same way as cube reflections are shared).
  • New BodyWater for physical simulation of shallow water with two-way interaction.
  • Access to floating objects in PhysicalWater.
  • PhysicalWater and BodyWater spawn spark particles on contact, if particle system is made a child node.
  • Emitters of child particle systems are synchronously enabled when the parent emitter is enabled.
  • Continuous collision detection for spheres vs convex hulls, spheres vs meshes, capsules vs convex hulls and capsules vs meshes.
  • Less memory allocations by render.
  • Added two more flags for nodes: isVisible (the node was shown in a viewport) and isShadow (the node casted shadow).
  • Added camera limitations for PlayerSpectator.
  • Per-object freeze speed of physical objects.
  • Inverse kinematics for ragdolls.
  • Added more physical cloth samples, including ones of attaching the cloth to skinned mesh.
  • Added BodyWater samples.
  • Added inverse kinematics samples.
  • Visualization of full ragdoll hierarchy and bone hierarchy in UnigineEditor.
  • Reduced memory consumption by plugins for 3D editors.
  • Fixed MeshSkinnedImport plugin for 3ds Max.
  • Updated Softimage plugins (usability improvements).
  • Added documentation on grass ("Principles of Operation / Objects / Grass" section of the manual).

API changes:

  • engine.world.addVisibleNode() is renamed into engine.world.addUpdateNode().
  • engine.world.getNodes() is renamed into engine.world.getIntersectionNodes().
  • engine.world.getObjects() is renamed into engine.world.getIntersectionObjects().

Physical cloth on skinned mesh objects:

Video demonstrating physical cloth on skinned mesh objects

Interaction of objects with physical water:

Video demonstrating interaction of objects with physical water

2009-12-10 Link

Physical force fields, particles improvements and Softimage plugin

Physics:

  • New PhysicalForce, PhysicalWind and PhysicalWater objects (simulation of viscous medium, buoyancy and resistance forces).
  • Fluid buoyancy for all physical shapes.
  • Added a set of samples with physical force fields and a rope sample.
  • JointPin can attach cloth to ragdolls.
  • Physics visualizers are now shown only with the editor loaded.
  • Particle systems are now affected by force fields.
  • Fixed velocity calculation for ragdolls transformed with setVelocityTransform() function.
  • Added 'world_show_physicals' console variable.

Particles:

  • New Chain type of particles for shift emitters to generate a seamless flow.
  • Particles reset emitter parameters on disabling/enabling of the node.
  • Some renaming in world/node files: 'stretch' -> 'length_stretch' and 'point_force' -> 'force' (run upgrade.py script to convert your data). This affected ObjectParticles API as well.
  • Removed 'emitter_velocity' and 'emitter_scale' parameters from the particle systems; added slightly different 'emitter_direction' and 'emitter_spread' instead.

Chain particle systems affected by force fields: Chain particles
Chain particles

Other stuff:

  • Export plugins for Softimage 2010 (static geometry, skinned mesh animation).
  • Fixed AppWindow in Linux: it provides the same keycodes regardless of the current key layout.
  • Fixed node type filter in UnigineEditor.
  • Refactored tessellation shaders; there is some performance improvement.
  • Added 'post_filter_rgb2yuv' post-process filter that is useful for TV broadcasting.
  • Improved Unigine::Image C++ API: added more functions for image processing.
  • Added WidgetSpriteShader object, which can be used with a custom shader for post-process material.
  • Added Unigine::ObjectMeshDynamic::updateIndices() function.
  • Shadow objects force node update, there will be no shadow stalls.
  • Timestamps in log files.
  • WorldTransformExpression is renamed to WorldExpression.
  • Refactored stereo 3D launchers, now they can are not limited to dual view mode.
  • Adding array of visible nodes into the world is possible via UnigineScript.
  • Swizzling is now available in UnigineScript for functions; foo().x and foo()[2] is acceptable now.
  • Added EngineAnalyzer system, output can be seen via 'engine_analyze' console command.
  • Fixed occluders rasterizator.
  • All GUI fonts have anisotropy enabled now.
  • Updated documentation on particle systems ("Principles of Operation / Objects / Particle systems" section of the manual).
  • Updated article on blending in materials ("Content Creation / Materials Overview / Blending Options").

Softimage export plugin GUI (see documentation for more information on options):
Softimage export plugin GUI

2009-11-18 Link

Physical cloth

What's new:

  • Added support of physical cloth.
  • Added JointPin for pinning cloth to BodyRigid and BodyDummy.
  • Added PhysicalWind for setting wind areas affecting cloth.
  • Fixed saving of instanced materials.
  • Access to contact time in physical contacts.
  • Access to more verbose info from JointWheel.
  • "Frozenable" flag for rigid bodies.
  • Correct handling of setVelocityTransform() by BodyRagDoll.
  • Fixed Unicode issue with log file names in Windows.
  • Added plugins for Maya 2009 Linux 64 bit.
  • Fixed issue with particles inside sectors.
  • Added a bunch of new physical samples.
  • Updated documentation on common object options ("Principles of Operation / Objects" section of the manual).

Cloth-based propellers drive airplanes in the field of PhysicalWind:

Video demonstrating interaction of physical cloth with wind

Cloth tearing:

Video demonstrating cloth tearing

Cloth-based leaves:

Video demonstrating cloth-based leaves

You can find more videos with new features in Unigine crew's blog.

PS: By the way, here is another blog entry regarding Unigine in AMD Underground Blog: 11 Days of DirectX® 11, Day Eight: Unigine "Heaven".

2009-11-02 Link

Heaven DX11 benchmark released

What's new:

  • Released the first DirectX 11 benchmark on the basis of Unigine.
  • '-Os' replaced by '-O3' in GCC flags, which gave a 20% speed boost in Linux.
  • Fixed water artifacts produced by overlaping waves.
  • Line intersection functions for all physics shapes.
  • Fixed detail textures with SRGB enabled.
  • Added access to image pixels via C++ API.
  • Vertex cache optimization is now optional (see export plugins settings).
  • Optional axes flip on import in ResourceEditor.
  • Added "frame based" flag for every bone of the ragdoll to mix physics-driven and skinned mesh animations.
  • New Body::setVelocityTransform() function that calculates linear and angular velocities based on the body transformation.
  • Fixed a rare startup crash caused by multi-threading access to archived files.
  • More verbose XML parser.
  • Fixed saving of materials into nodes.
  • 'restitution' and 'softness' joint parameters splitted into linear_restitution / angular_restitution and linear_softness / angular_softness (don't forget to run the upgrade script).
  • Optimized tessellation shaders for DirectX 11.
  • Added documentation on sky ("Principles of Operation / Objects / Sky" section of the manual).

Here are some technical details on how tessellation works under the hood:

Video demonstrating hardware tessellation in action (based on Heaven DX11 benchmark content)

Release of the Heaven benchmark attracted a lot of attention in the Net (our webserver has had a near-death experience several times) since there are no DX11 benchmarks so far: news item on Tom's Hardware. Wow, we made it.

2009-10-08 Link

OpenGL 3.2 support

Recent changes:

  • Support of OpenGL 3.2 (MSAA on scattering and SSAO; support of signed textures for normal maps).
  • Added new mesh_tessellation_paint_base base material.
  • Granted access to ObjectMeshSkinned via C++ API.
  • Updated C++ API documentation.
  • Fixed bug with parsing '#' symbol inside define-disabled blocks in scripts.
  • Memory allocator is more verbose now.
  • Decreased CPU cache miss count.
  • Replacing the 'inline' statement by '__forceinline' provided a huge performance speedup under Windows.
  • Refactoring of XML parser.
  • Less system memory consumption on DirectX 9.
  • Empty maps can be declared as (:) in UnigineScript.
  • Refactored KeyLine system, please refer to the documentation for more info.
  • Fixed crash of import plugins on surfaces with zero vertex count.
  • Fixed batch changing of light options in UnigineEditor.
  • Improved seams removing algorithm for ResourceEditor.
  • ObjectGrass intersects with the parent object with the use of intersection mask.
  • Updated documentation on lighting ("Principles of Operation / Lighting and Shadows" section of the manual).

Here is a preliminary screenshot from the upcoming DirectX 11 benchmark based on Unigine:
Heaven benchmark draft
The demonstration of the benchmark will be held on the major forthcoming event, stay tuned for more news.