Extensions

{| style="width:100%; margin:auto; background:transparent;" cellspacing="0" cellpadding="0" valign="top" border="0" |
 * style="padding:0 .3em; background-color:#CEE0F2; font-size:90%; border:solid 2px #A3B1BF; text-align:center" width="8%" |
 * style="border-bottom:2px solid #A3B1BF" width="1%" |


 * style="padding:0.3em; font-size:90%; background-color:#CEE0F2; border:solid 2px #A3B1BF; text-align:center" width="8%" |


 * style="border-bottom:2px solid #A3B1BF" width="1%" |

{|cellspacing="10px" valign="top" style="background:white; border-left:2px solid #A3B1BF; border-right:2px solid #A3B1BF"
 * style="padding:0.3em; font-size:90%; background-color:#CEE0F2; border:solid 2px #A3B1BF; text-align:center" width="8%" |
 * valign="top"|
 * valign="top"|

These extensions, or plugins, allow you to add special features to your unity projects without the hassle of writing them yourself from the ground up.

There are two kinds of plugin: those containing only .NET code and those which contain binary code.

.NET Plugins
.NET plugins are simply DLLs which have been built from Mono/.NET source code. When your project is built, they are merged with the compiled Mono code from your project's scripts. This means that you can use them with a Unity Indie licence as well as with Pro and in web players.

Cross-Platform Plugins

 * Antares.dll : a shareware part of the freeware Antares Project. Including Antares.Manager (Events message system), Antares.Async (asynchronous Asset Bundle loading and management classes) and some more helpers.


 * Path - Add pathfinding to your unity projects. Path implements the A* algorithm on NavMeshes, using multi-threading and several optimisation tricks to reduce calculation time.


 * Behave - Via an editor extension and a runtime library, this project implements behaviour trees in unity for AI decision making. It features an easy to use drag-and-drop design interface and compiles designed behaviour trees are compiled to .NET plugins with a simple, but versatile runtime interface.


 * UnitySteer - UnitySteer contains a series of classes that help your game characters or vehicles maneuver around a scene: how to accelerate and for how long, how to turn depending on vehicle characteristics, how to act when avoiding obstacles or neighbors, how to keep a distance from other agents, or many other cases. Some of these behaviors are quite simple, but they can easily be combined to generate more complex vehicles.


 * Amplify - Amplify is a Virtual Texturing extension for Unity Pro. It allows scene/level designers to use a huge amount of textures without worrying much about texture memory limits or streaming.


 * Libnoise dotnet - libnoise is used to generate coherent noise, a type of smoothly-changing noise. libnoise can generate Perlin noise, ridged multifractal noise, and other types of coherent-noise. Pure c# port including Improved perlin noise, simplex perlin noise, fractal filters (ridged, heterogeneous, multi, hybrid, sum, sin), all the libnoise utilities except Terragen renderer. More stuff here


 * ManagedSqlite - Pointers to fully managed versions of Sqlite

Windows Only Plugins

 * XInput.NET - Add complete support for Xbox 360 Controller, all buttons, axes, trigges, buttons and vibration. API very similar to Microsoft.Xna.Framework.Input. Tested with Unity Indie 2.6.0.(If you get a missing DLL Error, then you may need to download the source files from his website, and rebuild the DLL's > I fixed this in the updated archive on my website, thanks for the tip)

Native Code Plugins
Native code plugins can be written in many languages, including C and C++. A Unity Pro licence is required to use these plugins. This kind of plugin can only be used in the editor and in standalone builds. The web player is prevented from using them for security reasons.

The Unity documentation outlines how native code plugins are made here.

Cross-Platform Plugins

 * QTPlayback - Play any QuickTime movie to a texture with synchronized sound.


 * UniWii - Use Wiimotes as input devices.

Mac OS X Only Plugins

 * AudioInput - Use AudioInput.Volume to provide microphone or other audio input to your Unity projects.


 * HtmlTexturePlugin - Display an HTML page as a texture, for use on a mesh or in a GUI.


 * Syphon - Syphon is an open source Mac OS X technology that allows applications to share frames - full frame rate video or stills - with one another in realtime.


 * }