Hey all, I've been writing a mod akin to Archimede's Ships or Cuchaz's Ships Mod. In this mod I have user-created ships (created as entities) that should be able to rotate freely of the world. In doing this I also wanted to implement a roll rotation to an entity instead of just Minecraft's built in pitch and yaw. I think I finally figured out the issue with my rendering when I switched to rotation matrices instead of glRotate.
But my problem now is rotating its bounding box to meet the rendered object. I've looked over my code and I can't seem to figure out why the bounding box doesn't match the render.
My code is written in (very bad) Scala, but I hope you can see the underlying logic
My bounding box rotation code: http://pastebin.com/6vDCpq0Z
My entity render code: http://pastebin.com/3XNSFh2U (minor mistake, line 16 should say "Render matrix is the exact same..." not "Rotation matrix is the exact same")
I've been pulling my hair out at getting this all to work. I'm around 70% sure I'm avoiding gimbal lock with my entity render code, but I don't know about the bounding box code.
Hope you guys can possibly help me .