Okay, so now that I'm finally on Destiny, I've been playing with subworlds again.
Tsar Hoikas wrote:For now, if you're wanting to do something "simple" with a linearly displaced platform, I know that the "dynamic avatar" option works correctly in CWE (but PotS does not support that at all).
I have now been able to duplicate this with MOUL. So 'dynamic avatar' is adequate for platforms moving in a lateral fashion (either sideways, or vertically, like a standard elevator). Although for sideways movement, it was necessary to set the friction up to 10. If the friction is too low, the avatar doesn't move with the collider. Just as boblishman mentioned:
boblishman wrote:OK...further testing... and YES, I can get collision working if I set the Subworld Empty to Dynamic and also set the subworld collision object to Dynamic. However, I had to set the friction on the collider to 10 in order for him to move around WITH collider, which in my case is a rotation cylinder.
....However, whilst the avatar does move with the rotation collision object, he himself always faces in the same direction!
I have likewise been able to duplicate bob's scenario (a rotating platform, the avatar moves around the pivot point, but always faces the same direction)
As Hoikas mentioned, 'Dynamic Avatar' isn't ideal for situations where you need rotation.
Worth pointing out that the "under the world" problem I mentioned earlier in the thread does not
occur in MOUL. It's only relevant to PoTS/CC versions of the game.
However, I have also been able to confirm that the offset problem I also posted about earlier in this thread is also occuring
in MOUL (for subworlds using the 'separate world' option)
If the object is not animated, the position it has relative to the world origin is the basis of the offset. (collider is twice the distance from the origin as the actual object is). Same as when exported to PoTS.
Exporting animated subworlds to MOUL actually works without interference ('under the world' nonsense). But still has the offset problem.
If the object is animated, the position the object has at the beginning of the animation is the basis for the offset. But that offset stays constant for the course of the animation. If I position the object at the beginning of the animation 20 units away from the world origin the collider ends up 40 units away in the game. But I can set the animation to then move the platform 1000 units away (after a moment, to give me time to walk onto it), but the collider will always maintain a 20 unit offset from the object.
If I position the object (at the beginning of the animation) at the world origin, and then animate it to move (lateral or rotation), it works perfectly.
If I position the object (at the beginning of the animation) a small distance (less than the width of the platform), I can usually manage to get onto the collider, but it's half out of position at that distance, so I'm floating next to the platform, moving with it.
Basically if you use the 'separate world' option, unless you have your subworld positioned at the world origin, you will always fall through the floor trying to get onto it, making it seem that the collision is not working (it is working, but the collider is not where you expect it to be).
Any thoughts on what might be causing this?
[Edit: I went back and revisited the 'empty transform' problem I posted about earlier in the thread, in case it was related. It seems that I was not marking the empties as Plasma objects, which would explain the entire problem. I still cannot fathom how I missed something so painfully simple, and I'm mildly worried about myself
In MOUL ' dynamic avatar' will work for a regular elevator (set friction high).
For anything with rotation, you need 'separate world'.
When exporting using 'separate world', the subworld's collider will be offset anywhere other than the world origin. (making collision appear broken)
If using PoTS, maybe just give up
Beware of brain farts