Commit Graph

53 Commits

Author SHA1 Message Date
John Hurliman
692d2927a9 * Add a copy constructor to IRendering.SimpleMesh
[Simian]
* Avoid remeshing whenever possible by reverting back to using the untransformed mesh for the world mesh generation
* Add forceMeshing and forceTransform booleans to SimulationObject to specify when a new untransformed mesh needs to be generated and when the transformation needs to be reapplied

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2477 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-09 18:20:19 +00:00
6f7df8ea1b [Simian]
* Tweaked inertia values for falling avatars
* First pass at avatar/object collision physics

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2474 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-06 16:32:03 +00:00
John Hurliman
a464b54dd1 [Simian]
* Added an IPhysicsProvider and a PhysicsSimple implementation that provides basic physics-related functionality. Currently only ray/prim intersection and getting a prim's mass
* Initial prim CRC handling
* Porting some LSL fixes from OpenSim

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2473 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-06 02:10:52 +00:00
193a7c531b Simian:
* Fixed avatar rotation not being locked while sitting
* Fixed owner info being lost on link/unlink
* First pass at attachment support

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2468 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-05 22:09:58 +00:00
John Hurliman
96acab524b [Simian]
* Fixed object duplication regression
* Cleaned up the mess that was adding an agent to the scene
* Sitting kind of works ("proper" sitting is extremely complex and requires a lot of computation)

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2466 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-03 22:25:29 +00:00
John Hurliman
871ffb42a6 [Simian]
* Clearing up confusion with Agent.Avatar by making it a SimulationObject that is passed in through the constructor. This should prevent duplicate notions of an avatar in the scene
* Fixed the "you don't own this object" issue after moving a prim. The fix is rather hacky and will be replaced when we stop sending full object updates for every change

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2465 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-03 21:01:57 +00:00
c8312a0777 Simian: Committing first pass at sit/unsit support (offset is still incorrect)
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2464 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-03 19:08:04 +00:00
John Hurliman
18b5f70e53 [Simian]
* (Untested) implementation of ObjectExtraParamsHandler
* Fixed several mono compiler warnings and one compiler error
* Converted to a non-deprecated method of fetching the local IP address

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2463 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-02 23:43:12 +00:00
John Hurliman
abf0c15384 [Simian]
* Completed a partial port of OpenSim's LSL API. Thank you to everyone on the OpenSim team for their hard work on this incredibly large feature
* Added Agent.GetSimulatorPosition()
* Corrected default PrimFlags for agents and prims
* Stubs for encoding/decoding prim linkset assets
* Route chat through the scene
* Stub for grid messaging (IM and email)
* Add GetTerrainHeightAt(), removed duplicate heightmap storage in Movement.cs
* Added a permissions manager stub
* Store wind speeds, added functions to get wind speed
* Make sure all of the important prim properties are set before creating an object
* Lots of new object manipulation functions in scene
* Properly clean up event queues on agent exit
* Stubbed out a space for a scripting engine
* Stubbed out task inventory
* Added ScriptingConsole, which allows you to run LSL functions from the chat console
* Added new PacketCategory, Messaging, for chat-related packets
* Fixed InventoryObject overrides
* Added a NotecardCache, useful for the scripting engine and may become generally useful later
* Added several helper functions and new members to SimulationObject

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2462 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-02 23:00:28 +00:00
John Hurliman
1ab82e4f17 * Removed Agent.CurrentPosition in favor of Agent.Avatar.Position
* Stubbed out the UDP teleport request handler
* Removed some redundancies in the ISceneProvider interface between objects and agents, and fixed SceneManager to operate on both agent and object stores where needed

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2424 52acb1d6-8a22-11de-b505-999d5b087335
2009-02-03 01:59:46 +00:00
29738e5ff8 * Added new TerrainCompressor overloads
[Simian]
* Moved RegionID, RegionX, RegionY, RegionHandle to ISceneProvider
* Converted to a patch-based terrain interface

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2422 52acb1d6-8a22-11de-b505-999d5b087335
2009-02-02 21:33:21 +00:00
John Hurliman
54c4ae80fd * Default Primitive.Rotation to Quaternion.Identity
* Quaternion.Conjugate() was accidentally set private, fixed
[Simian]
* Move login code to LindenLogin extension
* Move avatar tracking to ISceneProvider (Simian class is now "pure" and contains no implementation code)

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2421 52acb1d6-8a22-11de-b505-999d5b087335
2009-01-30 19:24:38 +00:00
John Hurliman
344d327a15 * Removed all strings from _Packets_.cs, including warning messages for null arrays and Packet.ToString(). GridProxy needs a new Packet.ToString() method that uses reflection now
* Fixed foliage decoding and removed OnNewFoliage in favor of OnNewPrim only
* Flexi, light, sculpt, and object properties (all inside of Primitive) are now classes that can be null instead of structs
* Added Primitive.GetExtraParamsBytes()
* Massive improvements to Simian and periscope

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2384 52acb1d6-8a22-11de-b505-999d5b087335
2008-12-18 21:45:38 +00:00
John Hurliman
194752abc1 * Moved TexturePipeline into libOpenMetaverse (still needs to be instantiated separately)
* Moved TextureCache into its own file
* New version of Periscope, major improvements. Check the Simian.ini file for usage, and change the const values in Periscope.cs
* Lots of miscellaneous cleanups and improvements in Simian

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2383 52acb1d6-8a22-11de-b505-999d5b087335
2008-12-17 03:49:42 +00:00
John Hurliman
126ccc79bb * Added a List<string> extensionList param to ExtensionLoader.LoadAllExtensions() to only load whitelisted extensions (used in conjunction with .ini file support)
* Modified ExtensionLoader .ini support to allow values with no keys by default
* Added Simian .ini file config support
* Merged Simian's CoarseLocationUpdates extension into AvatarManager

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2328 52acb1d6-8a22-11de-b505-999d5b087335
2008-11-06 23:41:07 +00:00
John Hurliman
dad28f767a * HttpRequestSignature uses regular expressions for the path now
* Added a simplified HttpListener.AddHandler() overload
* Lots of improvements in ExtensionLoader, simplified interface
* Updated Simian to latest ExtensionLoader

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2316 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-29 20:11:28 +00:00
8b2875f0d7 Simian: Fixed "bouncing" when jump button is held. A new jump is now started each time the avatar lands.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2297 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-12 16:17:45 +00:00
John Hurliman
644d415e60 * Added ExtensionLoader, a generic plugin system with internal, external assembly, and source file plugin loading as well as interface binding
* Switched Simian over to ExtensionLoader

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2258 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-05 22:05:18 +00:00
John Hurliman
1e9ee1f5b6 Simian:
* Moved water height to ISceneProvider
* Removed + 3m hack for prim placement
* Added ParcelPropertiesUpdate handler. Media textures are working now

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2235 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-22 16:33:42 +00:00
John Hurliman
53072cf669 * Adding GetHashCode override to Permissions
* Adding PrimFlags.None back (for OpenSim), marking as obsolete
* Slowly transitioning ISceneProvider to become the central resource of Simian (instead of the Simian class). The callbacks are going to change soon

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2200 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-06 18:02:38 +00:00
John Hurliman
f656d185a3 * Removed unused AgentManager.AgentMovementCallback
* Added Avatar.ControlFlags (not used by libomv directly)
Simian:
* Added ISceneProvider interface
* Fixed ObjectSelect crash (due to a packet block not being filled out if the selected object was missing)
* Simplified BuildFullUpdate()

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2196 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-04 21:09:44 +00:00
7e07cf44f4 Added support for linked sets in Simian (unlinking is not yet supported). Moved static BuildFullUpdate and related functions to SimulationObject.cs
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2190 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-30 22:48:37 +00:00
a6662645b3 Implemented avatar sounds in Simian
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2184 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-29 20:31:12 +00:00
36bed01326 Hopefully fixes previous commit
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2183 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-29 19:48:20 +00:00
9ee1462e7d Fixed Simian gravity bug which caused "warping" when falling large distances. Added initial upward impulse when beginning to fly. Began implementation of environment sounds.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2182 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-29 19:29:40 +00:00
John Hurliman
fe869df89f Major change in Simian to abstract all UDP handling away from Agent into an IUDPProvider. UDPServer is now thinly wrapped with a UDPManager extension to provide the main packet handling facilities of Simian
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2180 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-28 22:11:47 +00:00
cb59251c66 Fixed a problem with Simian horizontal jump impulse, fixed swimming at improper water level sometimes.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2169 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-25 21:39:39 +00:00
8054e49347 Added interactive water to Swimian... I mean Simian.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2168 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-25 21:08:13 +00:00
a41762de19 Simian avatar physics update: Fixed TERMINAL_VELOCITY not adjusting for elapsed time, adjusted horizontal inertia falloff for flying and falling
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2167 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-25 15:56:34 +00:00
bc44b7bda6 Simian avatar physics update: Removed horizontal resistance while falling, made jump distance constant, fixed animation switching to falling when descending from a long jump, fixed gravity still accumulating while "falling up".
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2166 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-25 15:33:15 +00:00
c419b3b9db Implemented IDisposable for Simian Agent class in an attempt to halt callbacks triggering after removal (by using the existing .Dispose() function and checking .Disposed). Improved terrain height prediction. Corrected jumps while running.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2165 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-25 01:34:30 +00:00
d98cd327b5 Improved Simian avatar physics (added jumping and horizontal inertia, but still needs work). Added ObjectManager.RayTriangleIntersection.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2164 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-24 22:42:14 +00:00
John Hurliman
c7474faed6 * Fixed a typo in OpenMetaverse.ObjectManager
* Improved BuildFullUpdate in Simian
* Added ObjectManager in Simian, prim creation is working (no editing yet)

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2162 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-24 05:21:42 +00:00
John Hurliman
07754f7016 OpenMetaverse:
* LLObject is gone, it is now merged into Primitive
* Avatar inherits from Primitive
Simian:
* Added SimulationObject to track prims
* Added IMeshingProvider and a connector to OpenMetaverse.Rendering plugins

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2161 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-24 05:06:51 +00:00
32afe0ca35 Added horizontal inertia to Simian avatar movement when toggling flying in mid-air (vertical inertia still absent)
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2159 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-22 23:50:37 +00:00
John Hurliman
d672f821ce Simian:
* Implemented the first interface, IAvatarManager, along with automatic interface binding
* Changed the way animations are tracked and sent to minimize locking/execution time/redundant packets
* Fixed TimeDilation value to correct the walking animation

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2158 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-22 19:20:02 +00:00
18883fbf2f More improvements to Simian movement
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2155 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-22 05:05:43 +00:00
35be756b4c Resolved a locking conflict in previous commit for Simian animation
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2153 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-22 00:57:19 +00:00
eef87410bf Improved Simian avatar movement/animation
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2152 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-22 00:34:18 +00:00
eac16d38d6 Started on Simian avatar animations (default t-pose has been upgraded to standing normally)
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2147 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-21 21:40:10 +00:00
John Hurliman
c2df9878db Simian:
* VisualParams are now stored in Agent and sent to new clients on connect
* Experimental ViewerEffect sending

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2146 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-21 21:00:51 +00:00
0cdac87480 Fixed previous commit to Simian
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2138 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-21 08:47:19 +00:00
5eb3707804 Fixed terrain affecting Simian movement speed while flying, merged Chat extension into new Messaging extension, fixed resend timer not cleaning up when avatars are removed, fixed some xml comments
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2136 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-21 08:36:37 +00:00
John Hurliman
908e31fa04 Simian:
* Agent stores more data
* Fixed ImageDelivery to return default bakes along with default textures
* ObjectUpdates for avatars contain more (and corrected) data

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2130 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-21 05:14:16 +00:00
967da500c1 Cleaned up Simian movement code and added running.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2123 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-20 03:46:11 +00:00
4e7d11dce7 Fixed Simian's Movement extension crashing when an avatar hits the border.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2121 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-19 21:55:29 +00:00
bb145b9070 Added flying to Simian and improved terrain-walking using Lerp to calculate the terrain height at more precise offsets.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2117 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-19 20:24:22 +00:00
John Hurliman
24055f1e79 * Changed HttpRequestCallback to pass the signature of the incoming request
* Added NameValue.NameValuesToString() to serialize NameValue arrays
* Fixed the avatar name tag in Simian, and added a hack to keep the client from trying to download wearables (for now)

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2116 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-19 18:38:29 +00:00
1c51da9c11 Moved Simian's Heightmap to the main class, updated Movement extension to walk along the heightmap.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2114 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-19 11:03:05 +00:00
aa620883c3 Added avatar names to Simian.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2109 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-19 01:29:22 +00:00