Page MenuHomeFeedback Tracker

Object rotation in Terrain Builder and Buldozer
Reviewed, WishlistPublic


The rotation, pitch and bank of objects in Terrain Builder and Buldozer seems to be in an unconventional order. This makes rotating objects that have a non-zero pitch and bank cumbersome or impossible. Rotation around the world-y-axis (the axis pointing in the sky) is the most used one!

It would be more intuitive of pitch and bank is always in respect to the models orientation and rotation is always around the world y-axis (not the models up vector). So pitching would be rotation around an objects z-axis and bank is the rotation around its direction vector.

This also makes exporting from Arma to TB very complicated as the A3 functions use model space for pitch and bank.


Legacy ID
Steps To Reproduce

Pitch and bank an object in buldozer and than rotate it.

Rotation is extrinsic y-x-z rotation but it should be instrinsic z-x-y.

Additional Information

See this video for a simple demonstration of the problem and how it should look to be usable:

The rotation of an object in TB has the following order:

The initial dir [0,1,0], up [0,0,1] and right [1,0,0] vectors of the objects are rotated by the bank/roll angle around the dir vector. Then dir and up vector are rotated around the right vector by the pitch angle. Finally dir and right vector are rotated around the up vector by the yaw.

The following order would match how most of this is handled ingame (setdir, etc). Also it feeld more natural:
First all axes are rotated around up vector by the yaw, then pitch and then bank is applied.

Event Timeline

NeoArmageddon edited Additional Information. (Show Details)
NeoArmageddon set Category to Tools.
NeoArmageddon set Reproducibility to Always.
NeoArmageddon set Severity to None.
NeoArmageddon set Resolution to Open.
NeoArmageddon set Legacy ID to 2965698884.May 8 2016, 11:50 AM

I agree, But i feel like the current way should be optional too. maybe choose rotation style based on whether you press alt, shift or ctrl.

Maybe ArmA3 itself could get a command itself to return an objects pitch, bank and roll corresponding to the TB import format.