Commit Graph

262 Commits

Author SHA1 Message Date
John Hurliman
cabd9c3d58 Removing Simian from the libomv folder now that it has been moved to http://openmetaverse.org/svn/omf/Simian/
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2525 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-20 13:12:15 +00:00
John Hurliman
47c6034f9c [Simian]
* Partial implementation of RezScript
* Ported LSL to C# conversion code from OpenSim. Big thank you to all of the OpenSim contributors
* Moved Simian scripting code to a new folder

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2518 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-20 00:19:32 +00:00
b8d7cdc027 OpenMetaverse.GUI:
* Fixed duplicate avatars in the avatar list
* Implemented StatusOutput control in Dashboard example

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2515 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-19 22:09:20 +00:00
John Hurliman
c20afbbf80 * Added InventoryItemFlags, which is actually only the upper half of the Flags field for inventory items. Stores slam bits, permission override flags, and other things we don't use at all right now
[Simian]
* Initial task inventory support. Move, remove, and RezScript are not supported yet
* SimulationObject Frozen and RotationAxis properties now point to the root prim in the linkset

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2503 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-19 00:25:03 +00:00
Robin Cornelius
59d048fe33 LIBOMV-457, Hack grid proxy to allow caps to work from a libomv client. Proxy now is functional with both LL code baesed viewers and libomv based viewers
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2502 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-18 21:41:34 +00:00
Jim Radford
e5b5fdceec LIBOMV-412 Adds new TestClient Turnto command, Thanks glem02 for the patch
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2499 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-18 19:08:51 +00:00
Jim Radford
674a61e195 Removing unsupported SimExport example, functionality is replaced with Simian+Periscope plugin
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2497 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-18 18:50:31 +00:00
Jim Radford
6dec5d92a0 Removed DoubleDictionary class from SimExport in favor of DoubleDictionary class in Types
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2496 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-18 18:24:34 +00:00
Robin Cornelius
a998494b90 Fix GridProxys support of xml+llsd logins
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2494 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-18 17:41:05 +00:00
Jim Radford
23e2086fb1 git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2493 52acb1d6-8a22-11de-b505-999d5b087335 2009-03-18 16:51:39 +00:00
John Hurliman
311d86c0e7 Fixing a small typo in the previous commit
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2491 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-17 23:04:31 +00:00
John Hurliman
241b480320 [Simian]
* Created an LLUDP folder to hold extensions that are purely LLUDP packet handlers. This is not a complete abstraction away from transport protocols, but it's a start
* Moved physics code from Movement.cs into PhysicsSimple.cs, and moved the physics loop into a thread in SceneManager
* Simian.ini cleanup


git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2490 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-17 22:33:22 +00:00
John Hurliman
3c5d40402f [Simian]
* Added region flags to the region config files
* Implemented grid map support (still acts weird until MapLayerReply is properly implemented)
* Temporarily disabling HyperGrid teleport until proper HyperGrid config file support is added

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2489 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-17 01:26:59 +00:00
John Hurliman
d4e07b8c4d * Few more tweaks to event queue server to improve performance and thread safety
[Simian]
* Made default assets for map water overlay and HyperGrid portals
* Fixed asset store loading regression
* Start synchronization after RegionHandshakeReply instead of CompleteAgentMovement (allows the sync function to be called for child agents as well)
* Start informing clients of neighbor regions when AgentThrottle is received (prevents client crashes, and this will become necessary data in the future)
* Minor fixes in map handling

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2488 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-17 00:17:07 +00:00
John Hurliman
cb4e07b6c1 [Simian]
* Make sure ISceneProvider.IPAndPort gets set to a valid IP address
* Send circuit_code in enable_client cap so the existing circuit code is reused for child agent connections

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2487 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-16 21:38:23 +00:00
John Hurliman
e69157a4af [Simian]
* Sim to sim caps for establishing child agents
* Still working out a bug in the libomv event queue, committing what is done for now

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2485 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-16 18:02:48 +00:00
John Hurliman
1506846d36 * All nine regions in Simian come online at startup now (one step at a time)
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2484 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-13 08:57:52 +00:00
John Hurliman
7b2154cd89 Go away little file
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2483 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-12 23:51:52 +00:00
John Hurliman
70fe1f8f2a [Simian]
* Initial framework support for multiple simulators. Currently only the first region config is loaded, but the framework is there
* Big reorganization of config and data files
* Started renaming extensions that handle LLUDP packets to start with the LL prefix. Work in progress
* Initial SSL support

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2482 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-12 23:02:42 +00:00
Latif Khalifa
627e0dbef7 * Added DoubleDictionary.FindAll and DoubleDictionary.RemoveAll
[Simian]
* Fixed several Periscope regressions
* OAR file writing works now (from Periscope only, this will change soon)
* Added /objectkill [on/off] to Periscope, useful when saving OAR files
* Fixed miscellaneous issues (mostly with adding/removing agents in a scene)

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2481 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-11 20:38:35 +00:00
John Hurliman
00ded81d19 * Sanity check that we are connected to a simulator before teleporting
* Gracefully handle zero length layers in JPEG2000 decoding
[Simian]
* Adding OAR file archive writing (untested)
* Add a /save command to Periscope to save an OAR archive of a scene

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2480 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-11 00:09:47 +00:00
John Hurliman
342008176e [Simian]
* Added IPhysicsProvider.TimeDilation (not functional yet)
* Completed ObjectUpdateCompressed implementation

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2479 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-10 18:40:11 +00:00
John Hurliman
8106fccdd2 * Changed Primitive.TextureEntry.ToBytes() to GetBytes() to follow naming conventions
* Added Primitive.TreeSpecies and Primitive.ScratchPad
* Converted Primitive.SoundFlags to the new SoundFlags enum
* Added a Utils.BytesToString() overload that accepts index and count parameters
* Added Utils.FloatToUInt16()
[Simian]
* Lots of changes in Simian to use the new unified ISceneProvider.ObjectAddOrUpdate() function
* Update flags are checked to determine the minimum sized packet that needs to be sent out for an update. ImprovedTerseObjectUpdate is working, and started work on ObjectUpdateCached (updates using this will currently not send)
* Adding three new variables to SimulationObject to store attachment-related state

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2478 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-10 01:54:45 +00:00
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
John Hurliman
7e0529d58d [Simian]
* SimulationObject.GetWorldMesh() now has an option to force rebuild
* RayTriangleIntersection returns the actual collision point
* PhysicsSimple regenerates meshes when objects are moved or edited

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2476 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-09 03:01:34 +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
John Hurliman
ac354b5fb0 * Cleaned up GetBytes/ToBytes in OMV types to eliminate duplicate code
* Fixed a typo in the previous commit for Utils.EmptyBytes
* Switched _Packets_.cs over to the new ToBytes() functions, should significantly reduce the number of temporary byte arrays allocated

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2471 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-06 01:55:22 +00:00
John Hurliman
3ad7551a4a * Added Utils.EmptyBytes which is equal to new byte[0] and replaced all references of new byte[0] to Utils.EmptyBytes
* Added a CRC32 implementation to OpenMetaverseTypes.dll
* Added ToBytes() functions to most of the OMV types for writing bytes into an existing byte array

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2470 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-06 01:32:02 +00:00
2dc837eff1 Simian: fixes previous commit
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2469 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-05 22:33:30 +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
939d120059 * Added a CircularQueue to OpenMetaverseTypes
[Simian]
* Fixed a regression with ViewerEffect packet handling
* Added undo and redo support
* Changed ISceneProvider interfaces to be more consistent and avoid duplicate lookups
* Attempting to unify avatar and prim handling by storing agents as both a SimulationObject and an Agent in the scene
* Comment out noisy resend logging and catch broken packets in the resend queue
* Improved the README
* Avoid generating two meshes when a world-transformed mesh is generated (are these even necessary?)

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2456 52acb1d6-8a22-11de-b505-999d5b087335
2009-02-25 20:32:48 +00:00
Latif Khalifa
b8c082beac add ability to chain login request and response delegates (LIBOMV-449). Patch by Dahlie
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2449 52acb1d6-8a22-11de-b505-999d5b087335
2009-02-20 18:05:00 +00:00
John Hurliman
21317bcee4 Added a login URL dropdown to GridImageUpload
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2447 52acb1d6-8a22-11de-b505-999d5b087335
2009-02-19 18:43:43 +00:00
John Hurliman
0e69e5d12f Fixing Prebuild issues with visual studio WinForms projects
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2446 52acb1d6-8a22-11de-b505-999d5b087335
2009-02-19 18:34:48 +00:00
John Hurliman
9b1e82bc34 [LIBOMV-430] Applying patch from Mike Mazur to zero out extra data from previously processed packets
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2443 52acb1d6-8a22-11de-b505-999d5b087335
2009-02-17 19:09:22 +00:00
John Hurliman
f6c6eb13b2 [TC-59] Applying patch from dahlia to fix the primregex command in TestClient
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2442 52acb1d6-8a22-11de-b505-999d5b087335
2009-02-17 19:00:08 +00:00
John Hurliman
471c99e458 Thank you Dan Lake, for patches to TestClient:
* Login command now supports starting location
* Added comment character for script files (either ; or # may be used as first non-whitespace on a line)
* Shout and whisper commands no longer encode extra whitespace to end of messages
* Modified say command to the same format as whisper and shout commands

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2438 52acb1d6-8a22-11de-b505-999d5b087335
2009-02-17 18:29:00 +00:00
John Hurliman
3b3946244a * Updating OpenMetaverse.Http and Simian to new HttpServer.HttpListener.Create() requirement for an ILogWriter
* Move more state updates into ISceneProvider
* Lazy initialization of mesh data for SimulationObjects

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2436 52acb1d6-8a22-11de-b505-999d5b087335
2009-02-13 22:21:01 +00:00
John Hurliman
946819f0f4 Fixed a bug in the Simian SceneManagerTests
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2433 52acb1d6-8a22-11de-b505-999d5b087335
2009-02-09 07:34:53 +00:00
John Hurliman
71f3ff77ca Switched HttpServer.dll to the "lite" branch in the official C# WebServer repository. The fork maintained by libopenmetaverse will be removed soon
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2432 52acb1d6-8a22-11de-b505-999d5b087335
2009-02-09 07:26:50 +00:00
Latif Khalifa
5a731af4e0 Fixed region crossings when using GridProxy (Patch by Day Oh). Fixes LIBOMV-440 LIBOMV-436
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2431 52acb1d6-8a22-11de-b505-999d5b087335
2009-02-08 08:24:35 +00:00
Jim Radford
7232ce6801 LIBOMV-442 Adds new method to helpers which uses reflection to dump a packet to a human readable string format (used by GridProxy)
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2429 52acb1d6-8a22-11de-b505-999d5b087335
2009-02-05 09:25:43 +00:00
John Hurliman
06404ab4e4 * Fixed endianness for OSD handling of uint, long, and ulong (big endian byte arrays are used)
* Fixed CapsServer to handle all content types (old SL clients were sending application/xml, new ones send application/llsd+xml)
* Start the EventQueue ID at 1 (seems to help)
* HyperGrid teleporting is now working in Simian

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2428 52acb1d6-8a22-11de-b505-999d5b087335
2009-02-05 03:12:41 +00:00
John Hurliman
808b681b83 * Fixed a nasty OSD->JSON bug that was producing invalid JSON for empty arrays or dictionaries
* Several fixes in OpenMetaverse.Http.CapsServer and OpenMetaverse.Http.EventQueueServer (this is the first time they've been tested)
[Simian]
* Initial capabilities and EventQueue support (appears to be working)
* HyperGrid is almost working
* More cleanup with how agents are removed from the scene

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2427 52acb1d6-8a22-11de-b505-999d5b087335
2009-02-04 23:00:33 +00:00