Jump to content

Unity (game engine): Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
→‎Games using Unity: Cleanup, alphabetizing, wp:wtaf
Line 52: Line 52:


===Asset Tracking===
===Asset Tracking===
Unity also includes the Unity Asset Server - a version control solution for the developer's game assets and scripts. It uses [[PostgreSQL]] as a backend, an audio system built on the [[FMOD]] library (with ability to playback [[Vorbis|Ogg Vorbis]] compressed audio), video playback using the[[Theora]] codec, a terrain and vegetation engine (which supports tree billboarding, Occlusion Culling with Umbra), built-in lightmapping and global illumination with Beast, multiplayer networking using [[RakNet]], and built-in pathfinding navigation meshes.<ref name="Unity Asset Server">{{cite web|title=Asset Server (Pro Only)|url=http://docs.unity3d.com/Documentation/Manual/AssetServer.html|publisher=Unity Technologies|accessdate=19 February 2013}}</ref>
Unity also includes the Unity Asset Server - a version control solution for the developer's game assets and scripts. It uses [[PostgreSQL]] as a backend, an audio system built on the [[FMOD]] library (with ability to playback [[Vorbis|Ogg Vorbis]] compressed audio), video playback using the [[Theora]] codec, a terrain and vegetation engine (which supports tree billboarding, Occlusion Culling with Umbra), built-in lightmapping and global illumination with Beast, multiplayer networking using [[RakNet]], and built-in pathfinding navigation meshes.<ref name="Unity Asset Server">{{cite web|title=Asset Server (Pro Only)|url=http://docs.unity3d.com/Documentation/Manual/AssetServer.html|publisher=Unity Technologies|accessdate=19 February 2013}}</ref>


===Platforms===
===Platforms===

Revision as of 13:15, 24 February 2013

Unity
Developer(s)Unity Technologies
Stable release
4.0.1 / December 2012
Written inC/C++ [1]
Operating system
Creation
TypeGame engine
LicenseProprietary
Websitewww.unity3d.com

Unity (also called Unity3D) is a cross-platform game engine with a built-in IDE developed by Unity Technologies. It is used to develop video games for web plugins, desktop platforms, consoles and mobile devices, and is utilized by over one million developers.[2] Unity is primarily used to create mobile and web games, but can also deploy games to consoles or the PC. The game engine was developed in C/C++, and is able to support code written in C# or javascript. It grew from an OS X supported game development tool in 2005 to the multi-platform game engine that it is today.[2]

The latest update, Unity 4.0, was released in November, 2012. It currently supports development for iOS, Android, Windows, OS X, Linux, web browsers, Flash, PlayStation 3, Xbox 360, and Wii U.[3] The game engine is downloadable from their website in two different versions: Unity and Unity Pro.

Features

Rendering

The graphics engine uses Direct3D (Windows), OpenGL (Mac, Windows, Linux), OpenGL ES (Android, iOS), and proprietary APIs (Wii). There is support for bump mapping, reflection mapping, parallax mapping, screen space ambient occlusion (SSAO), dynamic shadows using shadow maps, render-to-texture and full-screen post-processing effects.[4]

Unity supports art assets and file formats from 3ds Max, Maya, Softimage, Blender, Modo, ZBrush, Cinema 4D, Cheetah3D, Adobe Photoshop, Adobe Fireworks and Allegorithmic Substance. These assets can be added to the game project, and managed through Unity's graphical user interface.[5]

The ShaderLab language is used for shaders, supporting both declarative "programming" of the fixed-function pipeline and shader programs written in GLSL or Cg. A shader can include multiple variants and a declarative fallback specification, allowing Unity to detect the best variant for the current video card, and if none are compatible, fall back to an alternative shader that may sacrifice features for performance.[6] Unity also has built-in support for Nvidia's (formerly Ageia's) PhysX physics engine, (as of Unity 3.0) with added support for real-time cloth simulation on arbitrary and skinned meshes, thick ray casts, and collision layers. [7]

Scripting

The game engine's scripting is built on Mono, the open-source implementation of the .NET Framework. Programmers can use UnityScript (a custom language with ECMAScript-inspired syntax), C# or Boo (which has a Python-inspired syntax).[8] Starting with the 3.0 release, Unity ships with a customized version of MonoDevelop for debugging scripts.[9]

Asset Tracking

Unity also includes the Unity Asset Server - a version control solution for the developer's game assets and scripts. It uses PostgreSQL as a backend, an audio system built on the FMOD library (with ability to playback Ogg Vorbis compressed audio), video playback using the Theora codec, a terrain and vegetation engine (which supports tree billboarding, Occlusion Culling with Umbra), built-in lightmapping and global illumination with Beast, multiplayer networking using RakNet, and built-in pathfinding navigation meshes.[10]

Platforms

Unity supports deployment to multiple platforms. Within a project, developers have control over delivery to mobile devices, web browsers, desktops, and consoles.[11] Unity also allows specification of texture compression and resolution settings for each platform the game supports.[11]

Currently supported platforms include Windows, Linux, Mac, Android, iOS, Unity Web Player, Adobe Flash, PlayStation 3, Xbox 360, and Wii. Although not officially confirmed, Unity also supports the PlayStation Vita as can be seen on the game Escape Plan.

Upcoming platforms include BlackBerry 10, Wii U, Windows 8, and Windows Phone 8.

Asset Store

Launched in November 2010, the Unity Asset Store is a resource available within the Unity editor. The store consists of a collection of over 4,400 asset packages, including 3D models, textures and materials, particle systems, music and sound effects, tutorials and projects, scripting packages, editor extensions and online services.

The store also contains many extensions, tools and asset packages such as the package NGUI: Next-Gen UI by Tasharen Entertainment,[12] and the visual scripting extension uScript by Detox Studios, Tidy Tile Mapper,[13] a 2D/3D tile-based game design extension by Doppler Interactive and the input scripting package FingerGestures.

Versions

The first version of Unity was launched at Apple’s Worldwide Developers Conference in 2005. It was built to function and build projects on Mac computers and garnered enough success to continue development of the engine and tools for other platforms.[2] Unity 3 was released in September 2010 and focused on introducing more of the tools that high-end studios have at their disposal. This allowed the company to capture the interest of bigger developers while providing independent and smaller teams with a game engine in one affordable package. The latest version of Unity, Unity 4.0, was released in late 2012, and includes additions such as Mecanim animation and DirectX 11 support.

Unity 3.5

Unity 3.5 was one of the largest releases for the Unity development platform and added new features and improvements to existing technology. These included the Shuriken particle system, navmesh for pathfinding and obstacle avoidance, linear space (gamma correct) lighting, HDR rendering, multi-threaded rendering, light probes, Google Native Client deployment, re-written occlusion culling, built-in level of detail support, Adobe Flash Player add-on preview, GPU profiler, and directional lightmaps.[14]

Unity 4

Unity 4 was announced on June 18, 2012 and includes several new additions to the technology in the initial Unity 4.0 release. The Unity 4 release cycle will, like previous releases, include several updates with additional features over the course of its lifespan, such as the new Retained GUI, which is due in a future 4.x update. It was released on November 14, 2012.[15]

New features include DirectX 11 support and Mecanim animation. Mobile graphics enhancements include real-time shadows, skinned mesh instancing, the ability to use normal maps when baking lightmaps and a refined GPU profiler. Furthermore, the Adobe Flash deployment add-on has also been released with Unity 4.0. While deployment has been possible for those with the Unity 3.5 compatible beta tool, the final release of the deployment add-on will require Unity 4.[16]

Unity 4 also includes a new deployment option to publish games to the desktop.[17][18][19] While the deployment add-on can potentially work with various forms of Linux, development is primarily focused on Ubuntu for its primary release.[20] This deployment option will be provided to all Unity 4 users at no additional cost.[21] Engineers from Unity work with Ubuntu in Canonical's team for games.[22]

Mecanim

Mecanim is Unity's animation technology that has been in development for years, first by the company of the same name, and then at the Unity Canada offices following the acquisition. The technology is built to bring fluid and natural motion to characters with an efficient interface. Mecanim includes tools for creating state machines, blend trees, IK rigging, and automatic retargeting of animations from within the Unity editor.

Additionally, an array of retargetable animation will be available in the Unity Asset Store upon launch of the tool. Many of these animation files use motion capture and are provided at no cost by Unity Technologies.

Other enhancements

  • Shuriken particle system supports external forces, bent normals and automatic culling
  • 3D texture support
  • Navigation: dynamic obstacles and avoidance priority
  • Major optimizations in UnityGUI performance and memory usage
  • Dynamic fonts on all platforms with HTML-like markup
  • Remote Unity Web Player debugging
  • New Project Window workflows
  • Iterative lightmap baking
  • Refined component-based workflows
  • Extensible inspectors for custom classes
  • Improved Cubemap import pipeline
  • Geometry data improvements for huge memory and performance savings
  • Meshes can be constructed from non-triangle geometry—render points & lines efficiently
  • Search, live preview and buy Asset Store assets from the Project Window

Licensing

There are two main licenses for developers: Unity and Unity Pro,.[23] The Pro version is available for $1500, and the regular version is a free download. The Pro version has additional features, such as render-to-texture, occlusion culling, global lighting and post-processing effects. The Free version, on the other hand, displays a splash screen (in standalone games) and a watermark (in web games) that cannot be customized or disabled.

Both Unity and Unity Pro include the development environment, tutorials, sample projects and content, support via web forums, wiki access, and future updates in the same major version (i.e. buying Unity Pro 3 gets all future Unity Pro 3.x updates for free).

Unity for Android, iOS, Adobe Flash Player, and Windows Phone 8 (in development), are add-ons to an existing Unity purchase. A Unity Pro license is required to purchase an Android Pro or iOS Pro license. The regular Android and iOS licenses can be used with the free version of Unity.

Source code, PlayStation 3, Xbox 360, and Wii licenses are negotiated on a case by case basis.[24]

Educational licenses are provided by Studica with the stipulation that it is for purchase and use by schools, purely for education.[25]

As of version 4.0, a new licensing model was put into place for gambling organizations. They must contact Unity directly to obtain a distribution license. This license is at the distribution level, not the developer level.[26]

For a list of feature comparisons for each license, visit: http://unity3d.com/unity/licenses

Games using Unity

See also

References

  1. ^ Meijer, Lucas. "Is Unity Engine written in Mono/C# or C++?". Retrieved 2011-04-26.
  2. ^ a b c "Unity - Fast Facts". Retrieved 5 February 2013. {{cite web}}: Text "Technologies" ignored (help)
  3. ^ "Unity - Multiplatform". Unity Technologies. Retrieved 5 February 2013.
  4. ^ "Using DirectX11 in Unity 4". Unity Technologies. Retrieved 19 February 2013.
  5. ^ "How do I import objects from my 3D app?". Unity Technologies. Retrieved 19 February 2013.
  6. ^ "Shaders". Unity Technologies. Retrieved 19 February 2013.
  7. ^ "Physics". Unity Technologies. Retrieved 19 February 2013.
  8. ^ "Using Scripts". Unity Technologies. Retrieved 19 February 2013.
  9. ^ "Getting started with Mono Develop". Unity Technologies. Retrieved 19 February 2013.
  10. ^ "Asset Server (Pro Only)". Unity Technologies. Retrieved 19 February 2013.
  11. ^ a b "Unleash your game with effortless deployment to 10 global platforms". Unity Technologies. Retrieved 19 February 2013.
  12. ^ "NGUI: Next-Gen UI kit". Tasheren.
  13. ^ "Tidy TileMapper: Streaming Maps - the update!". Doppler Interactive. 4 September 2012. Retrieved 23 September 2012.
  14. ^ "Unity 3.5". Retrieved 23 September 2012.
  15. ^ "Unity 4.0 Launches". MarketWire. Retrieved 5 February 2013.
  16. ^ "What's new in Unity 4?". Unity Technologies. Retrieved 19 February 2013.
  17. ^ "Introducing Unity 4 - Unity Videos". Video.unity3d.com. Retrieved 2012-11-07.
  18. ^ "Unity 4 Details". Forum.unity3d.com. Retrieved 2012-11-07.
  19. ^ "Unity 4 - Linux Export - Unity Videos". Video.unity3d.com. Retrieved 2012-11-07.
  20. ^ "Linux Support :D". Forum.unity3d.com. Retrieved 2012-11-07.
  21. ^ "UNITY: License Comparison". Unity3d.com. Retrieved 2012-11-07.
  22. ^ three engineers from games company Unity 3D
  23. ^ "Unity License Comparison". Unity Technologies.
  24. ^ "UNITY". Unity Technologies.
  25. ^ "Unity Pro 3 - Education - Academic Software Discounts for Students".
  26. ^ "Unity and Gambling". Unity Technologies.

Template:Unity engine games Template:IPhone video game engines