| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
being done for AgentUpdate packets
* Start LLUDPClients unpaused (this variable is not being used yet)
|
|
|
|
|
|
|
|
|
|
| |
packets to fill in the data more accurately and avoid allocating memory that is immediately thrown away
* Changed the Send*Data structs in IClientAPI to use public readonly members instead of private members and getters
* Made Parallel.ProcessorCount public
* Started switching over packet building methods in LLClientView to use Util.StringToBytes[256/1024]() instead of Utils.StringToBytes()
* More cleanup of the ScenePresences vs. ClientManager nightmare
* ScenePresence.HandleAgentUpdate() will now time out and drop incoming AgentUpdate packets after three seconds. This fixes a deadlock on m_AgentUpdates that was blocking up the LLUDP server
|
|
|
|
| |
re-prioritizing updates
|
|\
| |
| |
| | |
prioritization
|
| |
| |
| |
| | |
relogging.
|
|\ \
| |/
| |
| | |
prioritization
|
| |
| |
| |
| | |
RemoveFromPhysicalScene or we'll be leaking
|
| |
| |
| |
| |
| |
| | |
allocate memory, and therefore the unmanaged wrapper call fails or worse.. there's some unmanaged resource accounting in the ODEPlugin for ODECharacter that isn't being done properly now.
* The broken avatar may not be able to move, but it won't stop simulate from pressing on now. And, the simulator will try to destroy the avatar's physics proxy and recreate it again... but if this is what I think it is, it may not help.
|
| |
| |
| |
| |
| |
| |
| | |
avatar in the sim, including yourself.
* Apparently the LLClientView should have been doing this previously.. Also fixed the 'You' on the index block.. so the client doesn't display an extra green dot.
* Thanks lkalif for bringing it to our attention.
|
| |
| |
| |
| | |
implements a simple distance prioritizer based on initial agent positions. Re-prioritizing and more advanced priority algorithms will follow soon
|
|/
|
|
|
|
|
|
| |
so it is clear who/what the broadcast is going to each time
* Removed two redundant parameters from SceneObjectPart
* Changed some code in terse update sending that was meant to work with references to work with value types (since Vector3 and Quaternion are structs)
* Committing a preview of a new method for sending object updates efficiently (all commented out for now)
|
|
|
|
|
|
|
| |
MySQLAssetData with Utils.DateTimeToUnixTime()
* Disabled UpdateAccessTime() function since it was only writing zeros anyways. This gave me a significant performance improvement for startup times and avatar logins in standalone mode
* Load attachments asynchronously so avatars with lots of attachments don't have to race the timeout clock to login
|
|
|
|
|
|
|
| |
ScenePresence.AddToPhysicalScene.
* This causes time to be counted in ODECharacter and, when a collision occurs, the physics scene will report the collisions only if the the difference of last time it reported the collisions from now was more then the set ms.
* This is cool because the time accrues while collisions are not taking place and when they do take place again, you get an immediate update.
|
|\ |
|
| |
| |
| |
| | |
researching this.
|
|/
|
|
| |
* Set the Scene collision update time to 500 ms
|
|
|
|
| |
may reduce avatar flailing.
|
|
|
|
| |
'm_invulnerable' test. It doesn't fix anything but it should really be there anyway.
|
|\ |
|
| | |
|
| | |
|
| |
| |
| |
| | |
minimally. A few bugs to catch now.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Eliminate dynamic capsule wobble. Instead introduce a small, fixed
tilt, and allow the tilt to rotate with the avatar while moving; the
tilt always faces away from the direction of avatar movement. The
rotation while moving should eliminate direction-dependent behavior
(e.g. only being able to climb on top of prims from certain directions).
Falling animation is still too frequently invoked.
Ideally the tilt should be completely eliminated, but doing so
currently causes the avatar to fall through the terrain.
|
|/
|
|
|
|
|
| |
unnecessary serialization/deserialization of TextureEntry objects and allow TextureEntry to be inspected for missing bakes
* Inspect incoming TextureEntry updates for bakes that do not exist on the simulator and request the missing textures
* Properly handle appearance updates that do not have a TextureEntry set
|
|
|
|
|
|
| |
* Changed the Destination ID to 0 in the TeleportFinish Event (why did we have it as 3?)
* Added border based trigger teleports
* Fix MakeRootAgent border cross tests for ensuring that the position is inside the region to use the borders to figure out if it's outside the Region
|
|
|
|
|
|
|
| |
to replace the delegate
* RegionCombinerModule replaces this delegate and distributes the CoarseLocationUpdates through the client connection in the region where the user would be if it was a separate region.
* Fixes Mini Map display on combined regions.
|
| |
|
| |
|
|
|
|
| |
* Use List<Border> for each cardinal to allow for irregular regions.
|
|
|
|
| |
Move Cardinals to it's own file.
|
| |
|
| |
|
|
|
|
| |
and a lot of cleaning.
|
| |
|
|
|
|
| |
lets you configure region sizes to be smaller without crashing the region. I remind you that regions are still square, must be a multiple of 4, and the Linden client doesn't like anything other then 256. If you set it bigger or smaller, the terrain doesn't load in the client, the map has issues, and god forbid you connect it to a grid that expects 256m regions.
|
| |
|
| |
|
|
|
|
|
|
| |
* Commented logic that wasn't being used.
* This should fix the errors in OdeScene.near
|
|
|
|
|
|
|
|
|
| |
a raycast test safely.
* Test for prim obstructions between the avatar and camera. If there are obstructions, inform the client to move the camera closer. This makes it so that walls and objects don't obstruct your view while you're moving around. Try walking inside a hollowed tori. You'll see how much easier it is now because your camera automatically moves closer so you can still see.
* Created a way to know if the user's camera is alt + cammed or just following the avatar.
* Changes IClientAPI interface by adding SendCameraConstraint(Vector4 CameraConstraint)
|
|
|
|
|
|
|
|
|
|
|
|
| |
manipulates the physics Scene.cs
* Remove the draconic locking around adding an avatar to the Scene
* Handle an extreme error case when border crossing fails and user uses map to teleport to a different region on the same instance causing control commands to go to a child agent.
* Make the Set Appearance method use the proper 'remove from physics scene' method.
* It *may* help border crossings.
* It *may* help the 'on avatar rez' lag, that people have been seeing the past week.
* It may also cause physics to crash more often on failed teleports (though.. I think I got the cases covered).
|
|
|
|
| |
if the collisions will affect health if the avatar is invulnerable. (saves 3 loops)
|
|
|
|
| |
revision until further testing can be done.
|
| |
|
| |
|
| |
|
|
|
|
| |
any need for a list, as only the last entry in it was acted on. So it now has a single NewForce m_nextVelocity , which is updated (rather than a NewForce object being created every AgentUpdate). So as well as cutting out all the adds and clearing of the list, it also removes the creation of upto 100+ new objects per second per avatar.
|
|
|
|
|
|
|
| |
from ScenePresence into ISceneViewer/SceneViewer. Currently ScenePresence "has" a ISceneViewer, although if we had a proper Node based scenegraph then it would most likely be attached directly to the nodes.
By extracting this code, it should make it easier to experiment with different ways of managing the update process. [Next step to make this module based, could be to create a SceneViewerFactoryModule]
|
|
|
|
| |
everyone that the so called "forces" are actually velocities.
|
|
|
|
|
|
|
| |
ScenePresence.m_forcesList, so it used the List.Clear method rather than doing a loop through the list and manually removing each item. Thanks dslake.
I also fixed the issue where the code also loops through the m_forcesList and copies each force to the ScenePresence's movementVector. Which resulted in only the last force in the list actually be acted on. As each copy overrode the last one. So now it only copies the last force in the list.
|
| |
|