Techniques

= = =Techniques-Animation= = = =//General// = = = =Excluding objects from effects (for blob shadow for example)=
 * Create a user layer
 * Assign objects to be excluded to the user layer
 * "Tell" the effect to exclude the layer

=Respawning when "fall off" level platform=
 * Create and empty GameObject
 * Add a Box Collider (Component - Physics)
 * Add Fallout Death script (Component - Third Person Props)

=Adding Components into the Unity Editor Menu=
 * ======Example======

@script AddComponentMenu("Third Person Props/Fallout Death")

=Order of object rendering in scripts (at least GUI objects like text)=


 * Unity’s GUI system will always render these elements in the order they appear in the code, so this text will appear on top of the shadow.

=Sound=
 * Always compress sound using Ogg Vorbis (built in to Unity too?)
 * Check "Decompress on load" for 'shorter', frequently used sound effects

=Pivoting a game object around a point in world space=
 * Having an empty gameObject be a parent object to a more complete (and visible) object allows the child object to be pivoted around the parent object.

=Assets=
 * External : 3D Models, Textures, Sound Effects, Scripts
 * Internal: materials, shaders, cube maps, physic material, prefabs

=Maya Export=

=LightMapping= =Manipulating Objects in Editor= =Prefabs=
 * Make sure to model in meters but then file convert to centimeters as Unity divides by 100 on import so then the scale is correct.
 * Model sizes need to match the person controller "size"
 * Unity doesn't know how to tile textures which are exported from Maya so must know how they were tiled in Maya to provide info to Unity
 * Click "Generate Lightmap UVs" in FBX asset properties and apply
 * This generates a 0 to 1 UV space and eliminates overlapping UVs
 * Lightmapping doesn't work if there are any overlapping UVs
 * Local vs Global
 * Local uses the world coordinate system of the terrain UNLESS it has been repositioned using "Align with View" and then the coordinate system will align with the "view" of the editor camera -- the viewport plane.
 * Global uses the "world" coordinates of the terrain
 * Objects are created using the terrain coordinate system
 * In orthogonal view, using the center gizmo to move object only moves in a plane based on the scene gizmo
 * Duplicating parents duplicates all children too
 * The position of the prefab created from an object in the scene will be the same as the objects
 * To use the prefab in other levels/scenes (or export), zero out position and rotation so it will be instantiated at world origin not the original coordinates/position

Unity3D