Jump to content

Unity (game engine)

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Interframe (talk | contribs) at 21:02, 16 February 2013. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
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 is a cross-platform game engine and 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. The game engine was developed in C/C++, and is able to support code written in C# or javascript. The game engine 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 to the game engine has been in Unity 4.0, which was released in November, 2012. Unity 4.0 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: the free version and Unity Pro.

Unity Development Platform

The first version of Unity was launched at Apple’s Worldwide Developers Conference in 2005. It was built only to function and build projects on Mac platform computers and garnered enough success to continue development of the engine and tools. Unity 3 was released in September 2010 and focused on introducing more of the tools that high-end studios usually 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 supports art assets and file formats from 3ds Max, Maya, Softimage, Blender, Modo, ZBrush, Cinema 4D, Cheetah3D, Adobe Photoshop, Adobe Fireworks and Allegorithmic Substance. Changes made to assets created in these products automatically update all instances of that asset throughout the project without needing to manually reimport.

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.

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 broader compatibility.

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.

Game scripting in Unity is via Mono. 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). Starting with the 3.0 release, Unity ships with a customized version of MonoDevelop for debugging scripts.

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 theTheora 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.

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.[4]

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.[5]

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 providers on the Asset Store will also be providing animations for use with Mecanim, either for free or a fee.

DirectX 11

Unity 4 supports Microsoft's DirectX 11.

Mobile graphics enhancements

Unity 4 features real-time shadows on mobile, skinned mesh instancing, the ability to use normal maps when baking lightmaps, and a refined GPU profiler.

Unity add-on for Adobe Flash Player

The Adobe Flash Player deployment add-on will also be 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.

Linux publishing preview

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

Additional Unity 4 additions and 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

Platforms "Author Once, Deploy Everywhere"

Unity supports deployment to multiple platforms; the game engine allows developers to deploy to different platforms and switch between them from a single tool. Within a project, developers have control over delivery to mobile devices, web browsers, desktops, and consoles. Unity abstracts away the majority of platform differences while maintaining the option for precise control when needed. Unity also allows specification of texture compression and resolution settings for each platform the game supports. This means a single high resolution file will work for all targeted platforms.

Currently supported platforms

Windows, Linux, Mac, Android, iOS, Unity Web Player, Adobe Flash Player, 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 announced platforms

BlackBerry 10, Wii U, Windows 8, and Windows Phone 8.

Licensing

There are two main licenses for developers: Unity and Unity Pro,.[12] 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, Unity for iOS, Unity for Adobe Flash Player, and soon Unity for Windows Phone 8 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.[13]

Educational licenses are provided by http://www.Studica.com with the stipulation that it is for purchase and use by schools, purely for education.[14]

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.[15]

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

Democratization initiatives

To bolster their democratization of game development, Unity Technologies invests in initiatives that are seen as avenues to help empower developers by expanding their capabilities and customer reach.

Asset Store

Launched in November 2010, the Unity Asset Store is a resource available within the Unity editor. Over 150,000 Unity users access the collection of over 4,400 asset packages in a wide range of categories, including 3D models, textures and materials, particle systems, music and sound effects, tutorials and projects, scripting packages, editor extensions and online services.

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

inXile Entertainment has been vocal in its use of the Asset Store for production of Wasteland 2.[18]

Union

Union[19] is a division of Unity Technologies dedicated to syndicating Unity games to mobile phones, app stores, tablets, set-top boxes, connected TVs and other emerging platforms. With the goal of democratizing games distribution, Union works with Unity developers to license games for release on new devices.

Union includes a portfolio of over 125 games that have generated a cumulative 120 million downloads in their collective releases. Examples of Union titles include Shadowgun, Super Crossfire HD, Frisbee Forever, Falling Fred, and Cordy.

Union provides platform partners access to games while empowering Unity developers with new distribution opportunities. Union is free to join and provides an 80 percent revenue share to its developers.

Union platforms include Intel, LGTV, Roku, BlackBerry, Nokia, Sony, and Lenovo.

Uses

See also

References

  1. ^ Meijer, Lucas. "Is Unity Engine written in Mono/C# or C++?". Retrieved 2011-04-26.
  2. ^ a b "Unity - Fast Facts". Unity Technologies. Retrieved 5 February 2013.
  3. ^ "Unity - Multiplatform". Unity Technologies. Retrieved 5 February 2013.
  4. ^ "Unity 3.5". Retrieved 23 September 2012.
  5. ^ "Unity 4.0 Launches". MarketWire. Retrieved 5 February 2013.
  6. ^ "Introducing Unity 4 - Unity Videos". Video.unity3d.com. Retrieved 2012-11-07.
  7. ^ "Unity 4 Details". Forum.unity3d.com. Retrieved 2012-11-07.
  8. ^ "Unity 4 - Linux Export - Unity Videos". Video.unity3d.com. Retrieved 2012-11-07.
  9. ^ "Linux Support :D". Forum.unity3d.com. Retrieved 2012-11-07.
  10. ^ "UNITY: License Comparison". Unity3d.com. Retrieved 2012-11-07.
  11. ^ three engineers from games company Unity 3D
  12. ^ "Unity License Comparison". Unity Technologies.
  13. ^ "UNITY". Unity Technologies.
  14. ^ "Unity Pro 3 - Education - Academic Software Discounts for Students".
  15. ^ "Unity and Gambling". Unity Technologies.
  16. ^ "NGUI: Next-Gen UI kit". Tasheren.
  17. ^ "Tidy TileMapper: Streaming Maps - the update!". Doppler Interactive. 4 September 2012. Retrieved 23 September 2012.
  18. ^ "Early Screen Shot and Website News - The Wasteland Chronicles".
  19. ^ "Union website".

Template:Unity engine games Template:IPhone video game engines