Closed NextdoorPsycho closed 2 years ago
Seeing from GIF, seems that some of the portal data is broken. You can use /portal view_portal_data
to see the portal data.
And this quaternion creation code is weird: https://github.com/VolmitSoftware/WormholesFML/blob/main/src/main/java/com/volmit/wormholes/PortalUtil.java#L57
It's recommended to use DQuaterion.rotationByDegrees
DQuaternion.rotationByRadians
to create the quaternion.
After all, please tell which specific code you use to edit the portal that caused the issue or I cannot debug this.
Im nor editing the portals, im creating them every instance. The portal util class is just me creating 2 backed portal groups and spawning them in, is my math wrong for the DQuaterion? ill look into that.
Ill also get back to you on the /portal view_portal_data in a few!
This is the normal portal:
And this is the Borked portal:
Nothing Stands out off the bat to me, so im unsure, in fact the only difference is rotationA
The rotationA, rotationB, rotationC, rotationD are all zero, this shows that the quaternion is broken.
A quaternion is a 4D unit vector, see this for more explanations about quaternion: https://qouteall.fun/immptl/wiki/API-for-Other-Mods.html#about-rotations-and-quaternions
How/Where are you getting the DQuaternion setup for your PortalHelper blocks? im having a hard time finding that in the repo. And thanks for the help. I think the Quaternion Math is not correct now that you mention it
The portal helper quaternion is setup using DiligentMatcher matching the frame https://github.com/iPortalTeam/ImmersivePortalsMod/blob/1.19/imm_ptl_core/src/main/java/qouteall/imm_ptl/core/portal/custom_portal_gen/form/AbstractDiligentForm.java#L23
It's a little complex.
@qouteall You were right, the logic was bad. was normalizing when it could have just used the literal / identity. thanks for the help!
According to your testing, does the issue occur with ONLY Immersive Portals mod installed?
No
Forge Version
40.1.84
ImmersivePortals Version
Developmental Jar (Im using the API) mod/core: 1.4.12
Latest Log
not applicable (i can still provide if needed)
Crash Report (if applicable)
not applicable
Steps to Reproduce
So this is my implementation. https://github.com/VolmitSoftware/WormholesFML Here is a jar you can try on your local if you want: wormholes.zip
but here is a visual and example: https://gfycat.com/DapperDetailedAntelopegroundsquirrel
What You Expected
When making a portal on the SAME plane, the portals all work fine
So this is what SHOULD happen: https://gfycat.com/DrearyAdeptHamadryad
When breaking with the "break cluster stick" it all breaks fine unlike when the plane is borked: Working Close: https://gfycat.com/ThriftyComplexAntarcticgiantpetrel
What Happened Instead
When making portals on a different plane this happens instead.
This should NOT happen: https://gfycat.com/ScientificGrimyHuemul
Additional Details
I'm not sure if I'm doing something wrong, if I am please correct me. But this seems like a render issue that I'm able to replicate consistently with the API.
Im also in the discord as :
⋈-NextdoorPsycho-⋈#0001
if you want to message me there!Please Read and Confirm The Following