Files
libremetaverse/Programs/Simian
John Hurliman 44e49f8195 * Reverted the Simulator.ParcelOverlay change to an array of enums, Buffer.BlockCopy and Array.Copy both barf. Added a comment that you can typecast afterward to decode the byte
* Finished TerrainManager.DecompressWind() and added TerrainManager.WindSpeeds. Holds a 16x16 array of Vector2s, each one representing the wind speed at a 16x16m area
* Added a WindCommand to TestClient to print the wind speed where the avatar is standing

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2241 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-26 13:11:00 +00:00
..
2008-09-24 15:04:35 +00:00
2008-09-24 14:55:52 +00:00
2008-09-24 14:55:52 +00:00

Introduction
------------

Simian is a lightweight simulator built on the libOpenMetaverse framework. Its
primary uses are rapid prototyping of new designs, a lightweight benchmarking
suite, and unit testing of client applications.

Extensions
------------

Extensions can be written in one of three ways.

1) Add a class that inherits from ISimianExtension directly in the Simian
   project. Typically this is done by adding a new .cs file in the
   extensions folder.

2) Create a new assembly containing one or more extensions. The assembly must
   follow the naming convention of Simian.*.dll.

3) Put a source code file alongside the running Simian.exe binary that will be
   compiled at runtime. The code must follow the naming convention Simian.*.cs.
   Look at Simian.ViewerEffectPrinter.cs.example for an example. Remove the
   .example extension and drop the file alongside the Simian.exe binary to see
   it in action.

All extensions must inherit from ISimianExtension and have a constructor that
takes a Simian object as the only parameter.