Jump to content

Unity (game engine): Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
No edit summary
Adding warnings, to note that half of our references are to the primary source; adding a Reception section, which would go a long way toward alleviating that
(9 intermediate revisions by the same user not shown)
Line 33: Line 33:
|17 = [[Windows Store]]
|17 = [[Windows Store]]
}}
}}
|programming_language = [[C++]] is used for the core engine, which is exposed through [[C Sharp (programming language)|C#]], in which the [[Integrated development environment|IDE]] is programmed.<ref>{{cite web
|programming_language = [[C++]] and [[C Sharp (programming language)|C#]]<ref>{{cite web
|title = Is Unity Engine written in Mono/C# or C++?
|title = Is Unity Engine written in Mono/C# or C++
|url = http://answers.unity3d.com/questions/9675/is-unity-engine-written-in-monoc-or-c.html
|url = http://answers.unity3d.com/questions/9675/is-unity-engine-written-in-monoc-or-c.html
|last = Meijer
|last = Meijer
Line 44: Line 44:
| language = [[English language|English]]
| language = [[English language|English]]
| status =
| status =
|license = [[Proprietary software|Proprietary]]<br>
|license = [[Proprietary software|Proprietary]]
|website = {{Official website | http://www.unity3d.com/}}
''Unity Pro'': cost aprox. $1,500 USD or $75/month subscription for a minimum of 12 months<br>
''Unity Free'': free, but limited in features, only available to private and small business
|website = [http://www.unity3d.com/ www.unity3d.com]
}}
}}


'''Unity''' is a [[cross-platform]]<ref>GNU/Linux is not supported</ref> [[game engine]] with a built-in [[Integrated development environment|IDE]] developed by [[Unity Technologies]]. It is used to develop [[video game]]s for web plugins, desktop platforms, [[Video game console|consoles]] and mobile devices. It grew from an [[OS X]] supported game development tool in 2005 to a multi-platform game engine.<ref>http://slashdot.org/topic/cloud/how-unity3d-become-a-game-development-beast/</ref>
'''Unity''' is a [[cross-platform]] [[game creation system]] developed by [[Unity Technologies]], including a [[game engine]] and [[integrated development environment]] (IDE). It is used to develop [[video game]]s for web plugins, desktop platforms, [[Video game console|consoles]] and mobile devices. First announced only for [[Mac OS]], at Apple’s Worldwide Developers Conference in 2005, it was later extended to other platforms.<ref name="Unity Fast Facts">{{cite web|title=Unity - Fast Facts|url=http://unity3d.com/company/public-relations/|accessdate=5 February 2013}}</ref><ref>{{cite web|url=http://slashdot.org/topic/cloud/how-unity3d-become-a-game-development-beast/ |title=How Unity3D Became a Game-Development Beast |publisher=Dice | website=Slashdot.org |date=2013-06-03 |accessdate=2014-07-13}}</ref>


==Features==
==Features==
Unity is notable for its ability to target games to multiple platforms. Within a project, developers have control over delivery to mobile devices, web browsers, desktops, and consoles.<ref name="Unity Multiplatform">{{cite web|title=Unleash your game with effortless deployment to 10 global platforms|url=http://unity3d.com/unity/multiplatform/|publisher=[[Unity Technologies]]|accessdate=19 February 2013}}</ref> Supported platforms include [[BlackBerry 10]], [[Windows 8]], [[Windows Phone 8]], [[Microsoft Windows|Windows]], [[OS X]], [[Linux]] (mainly Ubuntu<ref>[http://www.omgubuntu.co.uk/2012/10/canonical-setting-up-dedicated-games-dev-team three engineers from games company Unity 3D]</ref>), [[Android (operating system)|Android]], [[iOS]], Unity Web Player (including Facebook<ref>{{cite web|url=http://www.marketwatch.com/story/unity-technologies-releases-facebook-functionality-update-to-unity-4-2013-03-26 |title=Unity technologies releases Facebook functionality update to unity 4 |publisher=MarketWatch.com |date=2013-03-26 |accessdate=2014-07-13}}</ref>), [[Adobe Flash]], [[PlayStation 3]], [[PlayStation Vita]], [[Xbox 360]], [[Wii U]], and [[Wii]]. It includes an asset server and [[Nvidia|Nvidia's]] [[PhysX]] physics engine.


The graphics engine targets the following APIs: [[Microsoft Direct3D|Direct3D]] on Windows and Xbox 360; [[OpenGL]] on Mac, Windows, and Linux; [[OpenGL ES]] on Android and iOS; and proprietary APIs on [[video game console]]s. Unity allows specification of [[texture compression]] and resolution settings for each platform the game supports,<ref name="Unity Multiplatform" /> and provides support for [[bump mapping]], [[reflection mapping]], [[parallax mapping]], [[screen space ambient occlusion]] (SSAO), dynamic shadows using [[shadow map]]s, [[Render to Texture|render-to-texture]] and full-screen post-processing effects.<ref name="Unity 4 DirectX11">{{cite web|title=Using DirectX11 in Unity 4|url=http://docs.unity3d.com/Documentation/Manual/DirectX11.html|publisher=[[Unity Technologies]]|accessdate=19 February 2013}}</ref> Unity's graphics engine's platform diversity can provision a shader with multiple variants and a declarative fallback specification, allowing Unity to detect the best variant for the current video hardware; and if none are compatible, fall back to an alternative shader that may sacrifice features for performance.<ref name="Unity Shaders">{{cite web|title=Shaders|url=http://docs.unity3d.com/Documentation/Manual/Shaders.html|publisher=[[Unity Technologies]]|accessdate=19 February 2013}}</ref>
===Rendering===
[[File:Gone Home - TV Room.jpg|thumb|upright=1.2|''[[Gone Home]]'' is a 2013 video game built with the Unity engine]]
The graphics engine uses [[Microsoft Direct3D|Direct3D]] (Windows, Xbox 360), [[OpenGL]] (Mac, Windows, Linux), [[OpenGL ES]] (Android, iOS), and proprietary APIs (consoles). There is support for [[bump mapping]], [[reflection mapping]], [[parallax mapping]], [[screen space ambient occlusion]] (SSAO), dynamic shadows using [[shadow map]]s, [[Render to Texture|render-to-texture]] and full-screen post-processing effects.<ref name="Unity 4 DirectX11">{{cite web|title=Using DirectX11 in Unity 4|url=http://docs.unity3d.com/Documentation/Manual/DirectX11.html|publisher=[[Unity Technologies]]|accessdate=19 February 2013}}</ref>


Unity supports art assets and file formats from [[Autodesk 3ds Max|3ds Max]], [[Autodesk Maya|Maya]], [[Softimage]], [[Blender (software)|Blender]], [[Modo (software)|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.<ref name="Unity 3D models">{{cite web|title=How do I import objects from my 3D app?|url=http://docs.unity3d.com/Documentation/Manual/HOWTO-importObject.html|publisher=[[Unity Technologies]]|accessdate=19 February 2013}}</ref>
The game engine's scripting is built on [[Mono (software)|Mono]], the open-source implementation of the [[.NET Framework]]. Programmers can use UnityScript (a custom language with [[ECMAScript]]-inspired syntax, referred to as [[JavaScript]] by the software),<ref>[//wiki.unity3d.com/index.php?title=UnityScript_versus_JavaScript UnityScript versus JavaScript]. Unify Wiki. Retrieved 29. May 2014.</ref><ref>[//answers.unity3d.com/questions/199524/difference-between-unityscript-and-javascript.html Difference between UnityScript and JavaScript?]. Unity Answers. Retrieved 29 May 2014.</ref> [[C Sharp (programming language)|C#]], or [[Boo (programming language)|Boo]] (which has a [[Python (programming language)|Python]]-inspired syntax).<ref name="Unity Scripts">{{cite web|title=Using Scripts|url=http://docs.unity3d.com/Documentation/Manual/Scripting.html|publisher=[[Unity Technologies]]|accessdate=19 February 2013}}</ref>


The ShaderLab language is used for [[shader]]s, supporting both declarative "programming" of the fixed-function pipeline and shader programs written in [[GLSL]] or [[Cg (programming language)|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.<ref name="Unity Shaders">{{cite web|title=Shaders|url=http://docs.unity3d.com/Documentation/Manual/Shaders.html|publisher=[[Unity Technologies]]|accessdate=19 February 2013}}</ref>
Unity Pro is available for a fee, and Unity Free has no fee for noncommercial and low-end use.<ref name="eula">{{cite web | url=http://unity3d.com/company/legal/eula| title=Unity Software License Agreement 4.x | publisher= [[Unity Technologies]]| date = 23 July 2013 | accessdate = 5 September 2013}}</ref>


===Scripting===
==Reception==
{{empty section | date=July 2014}}
The game engine's scripting is built on [[Mono (software)|Mono]], the open-source implementation of the [[.NET Framework]]. Programmers can use UnityScript (a custom language with [[ECMAScript]]-inspired syntax, referred to as [[JavaScript]] by the software),<ref>[//wiki.unity3d.com/index.php?title=UnityScript_versus_JavaScript UnityScript versus JavaScript]. Unify Wiki. Retrieved 29. May 2014.</ref><ref>[//answers.unity3d.com/questions/199524/difference-between-unityscript-and-javascript.html Difference between UnityScript and JavaScript?]. Unity Answers. Retrieved 29 May 2014.</ref> [[C Sharp (programming language)|C#]], or [[Boo (programming language)|Boo]] (which has a [[Python (programming language)|Python]]-inspired syntax).<ref name="Unity Scripts">{{cite web|title=Using Scripts|url=http://docs.unity3d.com/Documentation/Manual/Scripting.html|publisher=[[Unity Technologies]]|accessdate=19 February 2013}}</ref> Starting with the 3.0 release, Unity ships with a customized version of [[MonoDevelop]] for debugging scripts.<ref name="Unity Mono Develop">{{cite web|title=MonoDevelop|url=http://docs.unity3d.com/Manual/MonoDevelop.html|website=Unity documentation|publisher=[[Unity Technologies]]|accessdate=9 June 2014}}</ref>

===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>

===Platforms===
[[File:Pid - Attic.png|thumb|upright=1.2|''[[Pid (video game)|Pid]]'' is a Unity engine game available on [[OS X]], [[PlayStation 3]], [[Microsoft Windows|Windows]] & [[Xbox 360]].]]
Unity supports deployment to multiple platforms. Within a project, developers have control over delivery to mobile devices, web browsers, desktops, and consoles.<ref name="Unity Multiplatform">{{cite web|title=Unleash your game with effortless deployment to 10 global platforms|url=http://unity3d.com/unity/multiplatform/|publisher=[[Unity Technologies]]|accessdate=19 February 2013}}</ref> Unity also allows specification of [[texture compression]] and resolution settings for each platform the game supports.<ref name="Unity Multiplatform" />

Currently supported platforms include [[BlackBerry 10]], [[Windows 8]], [[Windows Phone 8]], [[Microsoft Windows|Windows]], [[OS X|Mac]], [[Linux]], [[Android (operating system)|Android]], [[iOS]], Unity Web Player, [[Adobe Flash]], [[PlayStation 3]], [[PlayStation Vita]], [[Xbox 360]], [[Wii U]] and [[Wii]].

Upcoming platforms include [[PlayStation 4]] and [[Xbox One]].

===Physics===
Unity also has built-in support for [[Nvidia|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.<ref name="Unity Physics">{{cite web|title=Physics|url=http://docs.unity3d.com/Documentation/Manual/Physics.html|publisher=[[Unity Technologies]]|accessdate=19 February 2013}}</ref> Unity 4.3 introduced built-in support for the [[Box2D]] physics engine for 2D games.<ref name="Unity 2D Physics">{{cite web|title=Unity 2D and 3D|url=http://unity3d.com/unity/2d-3d|publisher=[[Unity Technologies]]|accessdate=28 February 2014}}</ref>

==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.<ref name="Unity Fast Facts">{{cite web|title=Unity - Fast Facts|url=http://unity3d.com/company/public-relations/|accessdate=5 February 2013}}</ref> 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 major 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===
[[File:Shelter - Screenshot 02.jpg|thumb|upright=1.2|''[[Shelter (video game)|Shelter]]'' was built in Unity 3.5.7.]]
Unity 3.5 was one of the largest releases for the Unity development platform and added new features and improvements to existing technology.<ref>http://www.lynda.com/Unity-D-training-tutorials/1243-0.html</ref> These included the Shuriken particle system, [[Navigation mesh|Navigation meshes]] for pathfinding and obstacle avoidance, linear space (gamma correct) lighting, [[High dynamic range rendering|HDR rendering]], multi-threaded rendering, light probes, [[Google Native Client]] deployment, re-written [[Hidden surface determination|occlusion culling]], built-in [[level of detail]] support, [[Adobe Flash Player]] add-on preview, a GPU profiler, and directional lightmaps.<ref>{{cite web|url=http://unity3d.com/unity/whats-new/unity-3.5 |title=Unity 3.5 |accessdate=23 September 2012}}</ref>

===Unity 4===
Unity 4 was announced on June 18, 2012 and included 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.<ref name="Unity 4.0 Launches">{{cite web|title=Unity 4.0 Launches|url=http://www.marketwire.com/press-release/unity-40-launches-1726144.htm|publisher=MarketWire|accessdate=5 February 2013}}</ref>

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. However, it has some limitations such as restricted to only one directional light and "hard" shadows.<ref name="Unity 4 features">{{cite web|title=What's new in Unity 4?|url=http://unity3d.com/promo/unity4/|publisher=[[Unity Technologies]]|accessdate=19 February 2013}}</ref>

Unity 4 also includes a new deployment option to publish games to Linux desktops.<ref>{{cite web|url=http://video.unity3d.com/video/6420694 |title=Introducing Unity 4 - Unity Videos |publisher=Video.unity3d.com |date= |accessdate=2012-11-07}}</ref><ref>{{cite web|url=http://forum.unity3d.com/threads/140299-Unity-4-Details |title=Unity 4 Details |publisher=Forum.unity3d.com |date= |accessdate=2012-11-07}}</ref><ref>{{cite web|url=http://video.unity3d.com//video/6481739/unity-4-linux-export |title=Unity 4 - Linux Export - Unity Videos |publisher=Video.unity3d.com |date= |accessdate=2012-11-07}}</ref> While the deployment add-on can potentially work with various forms of Linux, development is primarily focused on Ubuntu for its primary release.<ref>{{cite web|url=http://forum.unity3d.com/threads/915-Linux-Support-D?p=957830&viewfull=1#post957830 |title=Linux Support :D |publisher=Forum.unity3d.com |date= |accessdate=2012-11-07}}</ref> This deployment option will be provided to all Unity 4 users at no additional cost.<ref>{{cite web|url=http://unity3d.com/unity/licenses |title=UNITY: License Comparison |publisher=Unity3d.com |date= |accessdate=2012-11-07}}</ref>
Engineers from Unity work with [[Ubuntu (operating system)|Ubuntu]] in Canonical's team for games.<ref>[http://www.omgubuntu.co.uk/2012/10/canonical-setting-up-dedicated-games-dev-team three engineers from games company Unity 3D]</ref> Since version 4, Unity is working in collaboration with [[Facebook]] to launch an improved Unity experience on the social platform<ref>http://www.marketwatch.com/story/unity-technologies-releases-facebook-functionality-update-to-unity-4-2013-03-26</ref> through its ''Unity Web Player''.

===Unity 5===

Going to release in 2014, Unity 5 adds several new features over previous version, including high-end shaders, cross-platform real-time global illumination, New Advertisement service known as Unity cloud, updated audio features and WebGL support. Also, for the first time, Unity are offering a 64-bit editor with version 5, providing a much more powerful editor capable of handling demanding tasks more efficiently than ever before.

====High-End Shaders====
Unity 5 introduces the physically-based shader to the editor. This new shader is designed to provide high visual fidelity to almost all types of materials. This allows developers to use this new shader across 95% of materials in their project

====Global Illumination====
Unity 5 supports real-time global illuminations. This allows you to effect and animate lights in a scene, alter emissive materials and have the changes reflected on your characters in the scene.

====Audio Mixing====
Unity 5 has created a new audio mixing system that will be familiar to audio engineers but is lightweight enough for everyone to get to grips with. This new system will allow developers to add much more depth of sound to their games without the trade-off in performance.

====WebGL support====
A new advanced build option in Unity 5 allows your creations to be supported in any browser supporting WebGL, with no additional plug-ins. Users can experience the same workflow and multi-platform advantages of the Unity web-player when taking their creations online with WebGL.

===Unity2D===
The Unity 4.3 release on November 12, 2013 introduced native 2D support.<ref>http://blogs.unity3d.com/2013/11/12/unity-4-3-2d-game-development-overview/</ref> The release includes support for [[Sprite (computer graphics)|sprites]], improved animation support, 2D Physics and more.<ref>http://www.youtube.com/watch?v=MoZlMGU99qk</ref> The development environment is similar to the 3D game engine.<ref>http://unity3d.com/pages/2d-power</ref>

====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 animations were 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

==Community==
The Unity community has around 2 million registered developers as of January 11, 2014.<ref>https://unity3d.com/company/public-relations</ref>

===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 12,000 asset packages, including 3D models, textures and materials, particle systems, music and sound effects, tutorials and projects, scripting packages, editor extensions and online services.<ref>https://store.unity3d.com/</ref>

==Licensing==
There are two main licenses for developers: ''Unity Free'' and ''Unity Pro''.<ref name="licensing">{{cite web | url=http://unity3d.com/unity/licenses| title=Unity License Comparison | publisher=[[Unity Technologies]]}}</ref> Unity Pro is available for $1500. Unity Free is free as long as the user is not a commercial organization with annual gross revenues in excess of US$100,000, or an educational, academic, non-profit or government entity with a total annual budget for the entire entity in excess of US$100,000.<ref name="eula">{{cite web | url=http://unity3d.com/company/legal/eula| title=Unity Software License Agreement 4.x | publisher= [[Unity Technologies]]| date = 23 July 2013 | accessdate = 5 September 2013}}</ref>

The ''Pro'' version has additional features, such as render-to-texture, [[Hidden surface determination|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 Free 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 4 gets all future Unity Pro 4.x updates for free).

In May 2013 Unity Technologies announced that Unity for Android, iOS, Windows Phone 8, BlackBerry 10, and Windows Store are included with the free Unity license.<ref>{{cite web | url=http://blogs.unity3d.com/2013/05/21/putting-the-power-of-unity-in-the-hands-of-every-mobile-developer/ | title = Putting the power of Unity in the hands of every mobile developer | publisher = [[Unity Technologies]]}}</ref> A Unity Pro license will still be required to purchase an Android Pro or iOS Pro license. However, as of April 23, 2013, Unity dropped Flash support because they don't see Adobe being committed to the development of it in the future.<ref name="Sunsetting Flash">{{cite web|title=Sunsetting Flash|url=http://blogs.unity3d.com/2013/04/23/sunsetting-flash/|publisher=[[Unity Technologies]]|accessdate=23 April 2013}}</ref>

Source code, [[PlayStation 3]], [[Xbox 360]], [[Wii U]] and [[Wii]] licenses are negotiated on a case by case basis.<ref>{{cite web | url=https://store.unity3d.com/shop/ | title = UNITY | publisher = [[Unity Technologies]]}}</ref>

==Education==
Unity provides free online training on their website.<ref>http://unity3d.com/learn/live-training/</ref> Documentation for the game engine classes and interfaces are also available online.<ref>http://docs.unity3d.com/Documentation/Manual/index.html</ref>


==See also==
==See also==
Line 160: Line 68:


==References==
==References==
{{Multiple issues |
{{Primary source | date=July 2014}}
{{refimprove | date=July 2014}}
}}
{{Reflist|30em}}
{{Reflist|30em}}



Revision as of 09:29, 13 July 2014

Unity
Developer(s)Unity Technologies
Stable release
4.5 / May 2014
Written inC++ and C#[1]
Operating system
Creation
Available inEnglish
TypeGame creation system
LicenseProprietary
WebsiteOfficial website

Unity is a cross-platform game creation system developed by Unity Technologies, including a game engine and integrated development environment (IDE). It is used to develop video games for web plugins, desktop platforms, consoles and mobile devices. First announced only for Mac OS, at Apple’s Worldwide Developers Conference in 2005, it was later extended to other platforms.[2][3]

Features

Unity is notable for its ability to target games to multiple platforms. Within a project, developers have control over delivery to mobile devices, web browsers, desktops, and consoles.[4] Supported platforms include BlackBerry 10, Windows 8, Windows Phone 8, Windows, OS X, Linux (mainly Ubuntu[5]), Android, iOS, Unity Web Player (including Facebook[6]), Adobe Flash, PlayStation 3, PlayStation Vita, Xbox 360, Wii U, and Wii. It includes an asset server and Nvidia's PhysX physics engine.

The graphics engine targets the following APIs: Direct3D on Windows and Xbox 360; OpenGL on Mac, Windows, and Linux; OpenGL ES on Android and iOS; and proprietary APIs on video game consoles. Unity allows specification of texture compression and resolution settings for each platform the game supports,[4] and provides 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.[7] Unity's graphics engine's platform diversity can provision a shader with multiple variants and a declarative fallback specification, allowing Unity to detect the best variant for the current video hardware; and if none are compatible, fall back to an alternative shader that may sacrifice features for performance.[8]

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, referred to as JavaScript by the software),[9][10] C#, or Boo (which has a Python-inspired syntax).[11]

Unity Pro is available for a fee, and Unity Free has no fee for noncommercial and low-end use.[12]

Reception

See also

References

  1. ^ Meijer, Lucas. "Is Unity Engine written in Mono/C# or C++". Retrieved 2014-06-15.
  2. ^ "Unity - Fast Facts". Retrieved 5 February 2013.
  3. ^ "How Unity3D Became a Game-Development Beast". Slashdot.org. Dice. 2013-06-03. Retrieved 2014-07-13.
  4. ^ a b "Unleash your game with effortless deployment to 10 global platforms". Unity Technologies. Retrieved 19 February 2013.
  5. ^ three engineers from games company Unity 3D
  6. ^ "Unity technologies releases Facebook functionality update to unity 4". MarketWatch.com. 2013-03-26. Retrieved 2014-07-13.
  7. ^ "Using DirectX11 in Unity 4". Unity Technologies. Retrieved 19 February 2013.
  8. ^ "Shaders". Unity Technologies. Retrieved 19 February 2013.
  9. ^ UnityScript versus JavaScript. Unify Wiki. Retrieved 29. May 2014.
  10. ^ Difference between UnityScript and JavaScript?. Unity Answers. Retrieved 29 May 2014.
  11. ^ "Using Scripts". Unity Technologies. Retrieved 19 February 2013.
  12. ^ "Unity Software License Agreement 4.x". Unity Technologies. 23 July 2013. Retrieved 5 September 2013.

Template:Unity engine games Template:IPhone video game engines