This should help people realize that things are happening... Even if
whatever server they're connected to takes a very long time to process a
join request. At some point in the future, the linking process should be
de-serialized.
Seriously? Offsetof has been around for a long time, and eap added a
compiler_assert for his crazy netcode. There's no excuse for that to be
happening at runtime.
Turns out, it was an artifact of us suspending the simulation during links
and partly because of Cyan's late adding of the avatar controller to the
sim. Now, we add the avatar as soon as the age data is loaded. This causes
the camera stack to be populated with whatever garbage PhysX decides on,
then xJourneyClothsGen2 is free to set the real stack after we get all the
SDL from the server.
Verified to fix Teledahn oddness and not display a regression in Kemo.
This happens on DirtSand shards when two avatars are loading the same age
at once. LoadCloneMsgs are dispatched to the clients before they have
loaded the original keys. The server has no way of knowing that however,
so this is the correct place to fix the problem.
This should keep the avatar from getting stuck on some stupid stuff such
as on the pellet machine. A real fix would be to tweak the data, but we
cannot do that.
Yeah, looks like PhysX 2.6.4 has a bug with spawning stuff inside of
regions. So, let's bring back the hack that spawns the avatar at -2000
feet. The link-in process will set the correct position on the controller
and fire the appropriate detectors.
This changeset introduced a new plBitmap flag `kAutoGenMipmap`, which
trickles through the pipeline and becomes `D3DUSAGE_AUTOGENMIPMAP` in
standard DirectX texture creation. This flag is applied to all
DyanmicTextMaps. The end result is that DynamicTextMaps become fuzzy at a
distance, rather than choppy.
Bug in the registry key list refactor... We wrote out all the keys in the
key list instead of only the keys with objects. This meant we got a lot of
garbage (empty) objects when exporting [Fem|M]aleWave.
This commit is really quite awesome in that you can now propagate any
plLinkToAgeMsg that will mute the link out, link in sounds, or both. Some
garbage fields were repurposed for this functionality. The messages were
passed correctly on Cyan's MOULa server.
Conflicts:
Sources/Plasma/PubUtilLib/plMessage/plLinkToAgeMsg.h
Sources/Plasma/PubUtilLib/plNetClient/plLinkEffectsMgr.cpp
Sources/Plasma/PubUtilLib/plNetClient/plNetClientMgr.h
Sources/Plasma/PubUtilLib/plNetClient/plNetLinkingMgr.cpp
Previously, multiple controllers in a single age
would overlap. This adds a static positional
counter which is reset at the start of a new list.
This commit also attempts to make the list more
useful by showing the controller objects'
owner's name.
plStringification of plPXPhysicalControllerCore::IDrawDebugDisplay
and general clean-up. Also changed to only display
avatar collisions heading if any exist to show.