Unity is the only Mac-based high-end game development tool sporting a stylish pro-app GUI, no-friction workflow and top-of-the-line technical features such as extensible graphics, great particle effects, highly optimized scripting, the Ageia physX Engine, skinned character animation and ragdolls, and making standalone games for Mac and Windows (and Dashboard Widgets and web-plugins).
Unity is a 3D game editor which happens to contain one of the most advanced game engines out there. Packed with power it is built to meet the demands of next-generation game developers.
Automatic asset importing, prefabs, and ultra fast editplaymodify turnaround while you assemble and test your game helps maintain the creative flow. Asset production was never this fast before. The editor ties together all the powerful features of the engine in an intuitive way.
- Keyframe animation system with an easy to use interface that allows you to animate almost all game object parameters.
- Drag'n'drop to set values and hook up everythign from game logic to graphical effects.
- Play button for instantly trying out your work, and pause and step*frame to try out the game as you go.
- High performance automated asset pipeline. Never think about importing your assets again. Save your .psd file in Photoshop and see it update live in Unity without clicking a single button.
- Customizable pane layout system. Allowing you to customize your work environment as you see fit.
- All settings are editable in an easy to use property editor.
- Mac OS X web plugin.
- Mac OS X standalone player.
- Dashboard Widget.
- Windows web player (coming soon).
- Windows standalone [Unity Pro feature] coming soon.
- Protected deployment [Unity Pro feature].
- Game logic and AI most easily implementable in scripting.
- All aspects of a game are scriptable with an easy to understandbut powerful interface. Scripts can be assigned to objects via drag & drop.
- Edit script properties in the editor, and drag'n'drop to assign values.
- High performance mesh rendering engine. Mesh skinning with multiple bones. Realtime animation mixing for believable characters.
- Very fast and flexible particle system which supports collisions as well as color and texture animation.
- Animated textures.
- Normal map generation from meshes.
- Superb multiple camera support.
Flexible Shader Engine
- Extendible render to texture effects, including glow [Unity Pro feature].
- Spotlights, omni-lights and directional ligths, as well as projected textures, halos and volumetric light cones.
- Support for latest graphics card features such as bumpmapping, reflection mapping, refraction, cubemaps, trilinear filtering and mipmapping.
- Unity comes with an extensive library of 32 shaders including Vertex Lit, Diffuse, Glossy, Bumped, Bumped Specular, Reflective, Self-illuminating and 9 different particle shaders.
Novodex Physics Engine
- Flat out world's best physics engine by Ageia.
- Fast and realistic simulation allowing for physics based gameplay with large interactive environments.
- Ragdolls, box stacks, cars, helicopters. Whatever you want to simulate.
- Flexible dynamics system featuring hinges, ball*sockets and suspensions.
- Tune friction, slipping, and restitution.
- Support for meshmesh as well as meshprimitive collisions.
- 3D positional audio with distance attenuation.
- Support for all common file formats.
- Component based modelling of game entities. Components can be added and removed while the game is running.
- Powerful (and fast) query and messaging system for communication between components.
- Support for switching between scenes, data that survives across scenes, and saving game settings and status.
Import File Formats
- Import models, animations and animated characters from all major 3D applications such as Maya, Cinema 4D, Lightwave and MotionBuilder. Supported file formats are: fbx, maya mb files, 3DS and blender. With the 3DS format virtually every 3D modelling application can be used with Unity.
- Imports all major image and movie formats using QuickTime. Save your Photoshop files complete with layers and let Unity automatically compress your images with Unity's high quality S3TC texture compressor. All automatic without even pressing a button.
- Automatic heightmap to normalmap conversion.
- Different mipmap generation methods (detail fade, Kaiser filters, gamma corrected, and others).
- Mac OS X 10.3 or later
- Radeon or Geforce MX GFX card with at least 32 MB VRAM.
- 500MHz recommended.
- Games run on Rage 128 GFX cards depending on the scene complexity.
- Works with most 3D modelling apps, and imports almost any media file*format.
Unity 4.0 is our biggest release to date. It brings you all new powerful features never before seen in Unity, such as:
- Mecanim, the new animation system to animate any character or object
- Real-time shadows for all platforms
- DirectX 11 rendering
- Shuriken particle system updated with world collision functionality
- Adobe Flash and Linux as two new platforms
- Cross-platform dynamic fonts
- And of course, many more new features and updates. Keep reading to learn more.
New Animation System
- Once imported as muscle clips, animations can be used with all humanoid characters with no additional conversions needed.
- Use the same animations on different proportion characters with no overhead or need for storing multiple versions of the clip.
- Map the bones of your model to human muscles with a single click, or fine tune the setup for full control.
- Slice up your authored or motion-captured animations directly inside Unity with the industry's best tool for the job.
- Preview the animation as your drag the ranges of a clip.
- Indicators for pose looping quality and motion looping quality lets you easily pick the range with optimal looping.
- Differences between start and end pose is smoothed out by the importer to ensure perfect looping.
- Support for arbitrary animations:
- Support for Generic Skeletons.
- Support for human avatars with additionals bones (“hybrids”).
- Preview of generic or hybrid skeleton in Animation Clip, Blend Tree and Transition inspector.
- Multiple IK layer solving (changes to OnAvatarIK() API).
- Supports Culling (Animator.cullingMode = AnimatorCullingMode).
DirectX 11 Rendering
- On Windows Vista and later, and with DX10 or better level GPU, you can use DirectX 11 now.
- New features:
- Geometry shaders (require DX10 GPU) and hull/domain shaders (require DX11 GPU). #pragma geometry, hull, domain in shader files.
- Compute shaders (*.compute files, ComputeShader in scripts).
- ComputeBuffer scripting API ("structured buffers" in DX11 lingo). Can use them in compute shaders and regular shader model 5.0 shaders (Material.SetBuffer, Shader.SetGlobalBuffer).
- Render textures with "random write" access ("UAVs" in DX11 lingo). Graphics.SetRandomWriteTarget, RenderTexture.enableRandomWrite.
- Graphics.DrawProcedural & DrawProceduralIndirect.
- DX11-specific RenderTexture formats: RenderTextureFormat.R8, ARGBInt, RGInt, RInt.
- 3D RenderTextures (RenderTexture.isVolume, volumeDepth). Fill them as "random write" textures from a compute or pixel shader.
- In shaders, can optionally use CBUFFERSTART(name) .. CBUFFEREND macros to markup separate constant buffers.
- Usage and documentation:
- Player Settings has "Use DX11" option; when it it set the editor and player will try using DX11. Editor will have “” in the title bar when it is in DX11 mode.
- See “Using DirectX 11” page in the documentation.
- New image effects take advantage of DX11: Depth of Field, Camera Motion Blur, Noise.
- “Tessellation Shaders” standard package has several shaders that use DX11 tessellation.
- Export a standalone player for 32-bit (x86) or 64-bit (x86_64) Linux.
- Select "Linux" from the Target Platform list in the Build Settings.
- After building a Linux player on Windows, you will first need to make the binary executable on Linux before being able to run it. Do this by running 'chmod +x' on the executable or right clicking and selecting "Allow to run as application".
- Supported Platforms
- Standalone players will run on most modern Linux systems with vendor-supplied graphics drivers.
- Official support will be provided for 32 or 64-bit Ubuntu Linux, version 10.10 (Maverick Meerkat) or newer, with graphics cards using vendor-supplied drivers.
- Terrain: Normal map & custom shader support for Terrain. Added built-in shader Nature/Terrain/Bumped Specular; added "normal map" texture slot to terrain splat maps; added Material field under terrain settings.
- 3D (volume) textures support. Currently no way to import them, but you can create them from script (Texture3D) and use them in shaders (sampler3D and tex3D). Also SystemInfo.supports3DTextures.
- Shadows on mobile devices!
- Only directional lights, no shadow cascades, no soft shadows.
- Requires GLOESdepth_texture extension. Most notably, Tegra 2/3-based devices do not support it.
- On Android, requires Honeycomb of later OS.
- Dynamic font rendering on all platforms (including mobiles) with identical results (via FreeType).
- Simple html-style text markup support to have multiple font sizes, styles and colors in a string in UnityGUI, GUIText & TextMesh.
- Image Effects updates:
- Depth of Field (Scatter), an improved version of existing Depth of Field 3.4 effect. Has a DX11 mode that splats bokeh sprites on the bright spots.
- Camera Motion Blur, does what it says: camera motion based motion blur. Has DX11-optimized mode for better quality.
- Noise and Grain does a fancier film noise simulation (also has a DX11-optimized mode).
- Bloom, an improved version of Bloom and Lens Flares. New "High Quality" mode simulates aberration, glint, better treatment of high frequency parts.
- Color Correction LUT effect that uses a 3D texture to do arbitrary color correction.
- Edge Detection (Geometry) effect got ability to interact nicely with other depth-based effects (DOF, Motion Blur etc.) with new "Sobel Depth Thin" mode.
- Color Correction Curves now supports (de)saturation and has a fix for color key correction.
- New Generate Cubemap texture import option that creates a cubemap from vertical/horizontal cross or row/column of images.
- Seamless cubemap option that makes sure edges of faces match up. Also runtime scripting API, Cubemap.SmoothEdges.
- Cubemap assets reference their original textures in the editor instead of copying their pixels at assign time.
- Lightmapping: "Bake selected" no longer destroys lightmaps on objects that aren't selected. Instead it updates lightmaps on selected objects, as expected.
- Lightmapping: Normalmaps are taken into account when lightmapping, which allows to add detail to lightmaps and makes the transition between near and far distance in Dual Lightmaps mode less visible.
- Lightmapping: FIxed issue with generated lightmap uvs being different across mac/win on some occasions.
- Render Textures: added RenderTextureFormat.ARGBFloat, RGFloat, RGHalf, RFloat, RHalf formats.
- Meshes can have a non-triangle topology now. You can create meshes that are lines, points or quads from scripts. See MeshTopology enum, Mesh.GetIndices, SetIndices, GetTopology.
- Added SkinnedMeshRenderer.BakeMesh to "bake" skinned mesh result into a regular mesh. You can use this to implement semi-instanced crowd rendering schemes.
- Graphics: Added resizable window support for standalone builds; see Resizable Window option in player settings.
- LOD: Add an API that allows for the construction / configuration of LODs at runtime. You can now add a LODGroup and configure it without using the UI.
- Shuriken particle system:
- World collision support - world collisions can be high/medium/low quality. High quality raycasts all particles and is expensive. Medium/low quality traces some of the particles, while the rest reuses older collisions. While this is approximate, in many cases where there are a lot of particles it will look fine and perform very well. The ray casting budget is set in quality settings.
- Automatic simulation culling support. Particle systems will only update when visible. When it is not possible to support this automatically, Shuriken shows why directly inside the UI.
- External forces support - use Wind Zones with particles.
- Bent normals support for sprites.
- Support for sorting and rendering with immediate children (solving sorting issues for combined systems).
- Added built-in matrix variables, UNITYMATRIXV (view matrix), UNITYMATRIXVP (view*projection).
- Added float4 unity_DeltaTime, contains (dt, 1/dt, smoothdt, 1/smoothdt).
- Shader helper macros added:
- UNITYDECLARESHADOWMAP(tex), UNITYSAMPLESHADOW(tex,uv), UNITYSAMPLESHADOW_PROJ(tex,uv).
- UNITYNEARCLIP_VALUE, defined to 0.0 on D3D-like, -1.0 on GL-like platforms.
- UNITYCOMPILERHLSL (d3d11, 360), UNITYCOMPILERHLSL2GLSL (gles), UNITYCOMPILERCG if you need to determine which shader compiler is used on a platform.
- UNITYINITIALIZEOUTPUT(type,name) to help with DX11 shader compiler requiring full initialization of "out" parameters.
- OpenGL ES 2.0: Supports depth textures on Android.
- Scripting API: added Texture.SetGlobalAnisotropicFilteringLimits.