Lasse Öörni
deb5455a0e
Use own DirectSound code in Windows/Direct3D9 mode as PortAudio has tendency for stutter.
...
Added a slow mode for flow control which is triggered on packet loss, and lasts for a fixed time.
Removed congestion-based flow control as unreliable.
2011-08-07 18:28:31 +00:00
Lasse Öörni
48aff25c73
Tweaked the flow control frame rate.
2011-08-06 15:00:36 +00:00
Lasse Öörni
33c24f8d20
Use reliable message congestion factor to determine how to modify the sendrate.
2011-08-06 14:10:17 +00:00
Lasse Öörni
d704d0fb79
Decreased ping interval.
...
Factor in RTT into how fast sendrate can be increased.
2011-08-02 21:58:58 +00:00
Lasse Öörni
6381b88166
Added state for server-side package transfers, instead of sending everything at once.
...
Slightly increased the ideal conditions' sendrate multiplier.
2011-08-02 06:20:06 +00:00
Lasse Öörni
728946d60d
Fixed mixed up seconds & milliseconds in UDPMessageConnection RTT calculation.
...
Take the retransmission timeout into account when calculating if send rate should be increased.
2011-08-01 23:43:26 +00:00
Lasse Öörni
e0800cc376
One more flow control tweak.
2011-08-01 16:24:09 +00:00
Lasse Öörni
8f836d7233
Further flow control tweaks.
2011-08-01 10:56:59 +00:00
Lasse Öörni
6b4e2b36c7
Tuned flow control.
...
Automatically wait & retry if reliable message fails to queue.
2011-08-01 08:27:37 +00:00
Lasse Öörni
d807ec230a
Decreased bandwidth adjustment aggressiveness.
...
Added connection stats logging to TestScene server.
2011-08-01 06:47:15 +00:00
Lasse Öörni
dca6687166
In absence of packet loss, use dynamic send rate increase/decrease based on utilization.
...
Removed unused UDPMessageConnection code.
2011-08-01 00:03:06 +00:00
Lasse Öörni
57e8e910af
Fixed missing alwaysUpdateOwner script property in NetworkPriority.
2011-07-31 17:22:27 +00:00
Lasse Öörni
b694ad047e
Refactored interest management into the NetworkPriority component.
...
Fixed setter functions referring to the Set class in Doxygen comments.
2011-07-31 17:19:00 +00:00
Lasse Öörni
216d4f046f
Fixed VS2010 debug build.
2011-07-31 00:00:59 +00:00
Lasse Öörni
6d552a8193
Use fixed size 24 bit network object IDs for more deterministic bandwidth use.
...
ReadID() / WriteID() renamed to ReadFileID() / WriteFileID().
2011-07-30 20:57:28 +00:00
Lasse Öörni
68beb82607
Eliminated the medium message priority to avoid synchronization problems where update messages would be sent after a node's or component's removal.
2011-07-30 14:00:02 +00:00
Lasse Öörni
b3a8cf7039
Use HashMap/HashSet for rapidly changing data structures in Connection.
2011-07-30 11:49:57 +00:00
Lasse Öörni
53669f0c20
Added simple freelook camera controls to NinjaSnowWar server when run with rendering enabled.
...
Disabled the status overlay from NinjaSnowWar server.
2011-07-30 11:22:00 +00:00
Lasse Öörni
20a2a48ed9
Added hashing support to Pair template class.
...
Use HashMap & HashSet more.
Tweaked precompiled headers.
2011-07-30 11:05:20 +00:00
Lasse Öörni
bd76a14249
Fixed Unix build. Fixed counting of enemies in multiplayer NinjaSnowWar. Disabled snowball CollisionShape replication due to divergent simulation on the client. Removed previousControls from Connection as it is potentially unreliable if multiple controls packets arrive between updates.
2011-07-29 22:57:14 +00:00
Lasse Öörni
ca31354fb5
Added client's score/hiscore update to multiplayer NinjaSnowWar.
...
Some renames for clarity (GetEventSender() instead of GetSender())
2011-07-29 18:56:15 +00:00
Lasse Öörni
abe05c6a53
MinGW is no longer officially supported.
...
Documentation update.
2011-07-29 15:46:47 +00:00
Lasse Öörni
7f88b9977e
Documentation update.
2011-07-29 12:44:45 +00:00
Lasse Öörni
7b254df85d
Added simple distance-based interest management for networking.
2011-07-29 12:24:22 +00:00
Lasse Öörni
6f927f6997
Split Network subsystem update into two parts to queue new messages as early as possible.
2011-07-29 00:35:16 +00:00
Lasse Öörni
38fe1554ba
Initial multiplayer NinjaSnowWar.
...
Various networking and script API bugfixes.
Fixed kNet profiling compile errors due to STL -> Container library conversion.
Fixed loading of textures failing in headless mode (just return success without doing anything.)
The E_CLIENTCONNECTED and E_CLIENTDISCONNECTED events now also come from the Connection in question, to allow using GetSender() for convenience, instead of looking up the connection from event data.
Added simple network traffic statistics logging to Connection.
2011-07-29 00:04:52 +00:00
Lasse Öörni
f622066c4a
Changed certain profile blocks (extra/transparent passes, debug geometry) to trigger only when there is actually some work to be done.
2011-07-28 18:41:15 +00:00
Lasse Öörni
444c18673e
Code formatting & optimization.
2011-07-28 16:14:56 +00:00
Lasse Öörni
1c154ef17e
Uncommented the package file download test from TestScene.as.
...
Fixed missing default arguments in the script API.
Fixed crash if a script file is unloaded while executing a script function.
Fixed Urho3D.exe not correcting the script file name to internal format (slashes instead of backslashes.)
Use black default background for the Direct3D9 window.
2011-07-28 11:41:56 +00:00
Lasse Öörni
43671aa66f
Fixed up to one second delay in starting UDP datagram sends.
...
Refactored SendMessage API in Connection & Network, allowing the user to specify message priority.
Split Network library internal messages into 3 priority categories.
2011-07-28 09:01:33 +00:00
Lasse Öörni
1d3f797643
Removed unnecessary code from Connection.
2011-07-27 23:06:12 +00:00
Lasse Öörni
f70cc35815
Added package file download support to the network protocol.
...
Added commented out package download test code to TestScene.as.
Increased kNet's UDP send rate upper limit and aggressiveness in increasing the send rate.
Fixed being unable to do sparse seeks in files when writing.
Container library bugfixes.
2011-07-27 22:41:12 +00:00
Lasse Öörni
db453e642d
Network code cleanup.
...
Enabled kNet flow control.
Fixed kNet uninitialized variables.
2011-07-27 17:07:42 +00:00
Lasse Öörni
bad8e776de
Added networking documentation.
2011-07-27 08:41:16 +00:00
Lasse Öörni
07281ba969
Documentation update.
2011-07-26 16:04:26 +00:00
Lasse Öörni
4d0e922e3f
Added common script code for parsing network-related command line arguments.
2011-07-26 15:29:33 +00:00
Lasse Öörni
67eec15057
Converted kNet to use Container library instead of STL.
...
Fixed Container library bugs.
Fixed uninitialized variable in PhysicsWorld.
2011-07-26 09:42:36 +00:00
Lasse Öörni
40d04b377b
Added Compare function to String, which is optionally case-insensitive.
...
Added registration of allowed remote events.
2011-07-25 23:15:04 +00:00
Lasse Öörni
fbf5bd4076
Added log prints for loading & saving the scene.
2011-07-25 18:26:02 +00:00
Lasse Öörni
48aa81e8e4
Added Node functions to get the world unsmoothed (target) transform.
...
Added proper support for parented rigidbodies.
2011-07-25 15:30:18 +00:00
Lasse Öörni
d88b66deab
Network code cleanup. Eliminated copying of initial node or component state.
2011-07-25 10:57:45 +00:00
Lasse Öörni
40ad2d09b6
Queue remote events instead of sending immediately to avoid synchronization problems with scene updates.
...
Changed inSerialization flag to loading flag.
2011-07-25 10:35:27 +00:00
Lasse Öörni
19874cfb31
Changed RigidBody Vector3 set/get functions to use const references.
2011-07-24 23:03:49 +00:00
Lasse Öörni
163aa247d9
Cleaned up animation network serialization code.
...
Do not send autofadetime if not used.
Do not reassign animation tracks if the start bone did not actually change.
2011-07-24 22:37:00 +00:00
Lasse Öörni
a6cc202b3c
Added network replication of instant set weight / set time position commands for AnimationController.
...
Increased precision of speed and fade time in Animationcontroller network replication.
2011-07-24 21:34:50 +00:00
Lasse Öörni
23b410d9f4
Added AnimationController network replication.
...
Changed the animation state layer to 8-bit.
2011-07-24 11:22:29 +00:00
Lasse Öörni
21cb202f63
Disable motion smoothing from the scene when the server connection is destroyed.
2011-07-23 23:47:39 +00:00
Lasse Öörni
ffad4ba005
Fixed UI related crashes in headless mode.
...
Fixed loading of materials in headless mode (just return success while doing nothing.)
Fixed EventType parameter of SendRemoteEvent() / BroadcastRemoteEvent() in the script API, should be a string.
Added smoothed motion for nodes in network client scene.
Added enum CreateMode to CreateChild() & CreateComponent() which replaces the "local" bool parameter.
Added possibility for client to spawn physics boxes in networked TestScene.
2011-07-23 23:33:57 +00:00
Lasse Öörni
13d449d9cc
Added Abs() to Vector2, Vector3 and Vector4.
...
Compressed rotation and angular velocity to half size in network replication.
2011-07-23 18:00:38 +00:00
Lasse Öörni
cc2a487361
Further optimization of the parent node network replication attribute.
2011-07-23 15:05:38 +00:00