Android support, pathfinding
2011-01-16
Android port:
- Full port of Unigine framework, render, UnigineScript, physics and other subsystems.
- Support of NVIDIA Tegra 2 platform.
- Added Java-based launcher.
- Added support of multi-touch screens.
- Added OpenGL ES 2.0 support.
Yes, now Unigine engine works on Android-based tablets and smartphones! More handheld devices will be supported soon (there will be a loud public announcement later), you can contact us on licensing Unigine for mobile platforms as well.
Render:
- Performance optimization of SSDO rendering.
- Fixed wrong culling of meshes on PlayStation 3.
- Improved DIP performance.
- Correct work of alpha to coverage with depth-based effects (enabled with 'd3d10_render_use_alpha_test_level_101' or 'd3d11_render_use_alpha_test_level_101' or 'gl_render_use_arb_sample_shading' console options disabled).
- Added native support of ETC1 texture format for mobile devices.
- Introduced improved lightmap rendering by using directional lightmaps. Existing ligtmaps must be tiled 2x2 in order to work correctly with the new system. Re-bake lightmaps with internal tool from UnigineEditor to achieve better quality.
- Reflection masks replaced with viewport mask: players now have both viewport and reflection mask, objects have only viewport one. The object surfaces, materials, decals and lights are rendered, if its mask matches the player's one. Reflections are rendered in the viewport if masks of reflective materials match the player's one.
Pathfinding:
- Introduced a new pathfinding system, which works in a separate thread.
- Added new node types for pathfinding: Navigation and Obstacle.
- PathRoute object allows to find 2D or 3D paths inside Navigation nodes.
- Added new NavigationSector object (objects can lay paths inside it); intersecting sectors will be automatically merged.
- Added several types of dynamic obstacles: box, sphere and capsule.
- Added pathfinding samples.
GUI:
- Fixed mouse buttons handling in ObjectGui and ObjectGuiMesh.
- Changed focus model for multiple Gui objects: overlapped, previous and permanent focuses are now set per Gui object, only the current widget in focus is shared.
- Added sample of layer rotation in WidgetSprite.
- Fixed clipboard in Linux/X11.
- WidgetSpriteRender is renamed into WidgetSpriteViewport.
- Added viewport and reflection masks in WidgetSpriteViewport and WidgetSpriteNode.
- ObjectGui can be used as a main 2D GUI with support of post-processing (see the screenshot below).
Tools:
- Lightmap calculation tool with support of global illumination in UnigineEditor (based on LigthProb, see detailshere).
- Fixed Softimage plugins, added support of Softimage 2011.
- Added 'reload all' buttons into all tools of ResourceEditor suite.
- Fixed animation playback in ResourceEditor.
- Added support of ETC1 format into ImageDDS.
- Improved DXT comression quality in ImageDDS.
Other:
- Memory consumption is reduced even more.
- Support of compilers without exception and RTTI support.
- Faster RTTI implementation.
- No more std:: dependencies in C++ API.
- Fixed inverse kinematics samples.
- Fixed D3D9AppMFC sample.
- Fixed crashes on restoring broken ExternClass objects.
- Added 'Emitter Limit' option in particle systems limiting number of particles to be created per frame.
- Reduced binaries size.
Documentation:
- New tutorials: "Adding Grass", "Adding Vegetation".
- Updated UnigineScript library documentation.