Jump to content

[RESOLVED] Model pitch & roll work in UDM, not GZDoom (USEACTORPITCH & USEACTORROLL used)


Recommended Posts

Posted (edited)

I'm hitting an odd issue, and haven't found a solution to in the forums, wiki or ZScript references. After adding USEACTORPITCH and USEACTORROLL to a model, I can successfully rotate instances of it on all axes within Ultimate Doom Builder. However, when running the map in GZDoom, the model instances are all rendered as if their actor's Pitch and Roll values were at 0. I've confirmed that the model actor's Pitch and Roll in GZDoom are the same as in UDM. I've also set NOGRAVITY for the model's actor, just in case.

Does anyone have any idea why this might be happening?


I'm attaching a PK3 demonstrating what I'm seeing.  I had to rename it to ZIP to attach it, so rename it back to a PK3 if downloaded.  If you open the PK3's map in UDM, you can see that the instances of the chair model are rotated to different values along all 3 axes, but in GZDoom, the chairs are rendered as if the Pitch and Roll were 0. ALSO, I set it up so that if you "use" any of the chairs in GZDoom, a console output will tell you what the Actor's Angle, Pitch and Roll values are set to.

ModelRotationDemo.zip

Edited by violgamba

Share this post


Link to post
Posted (edited)
10 hours ago, violgamba said:

I'm hitting an odd issue, and haven't found a solution to in the forums, wiki or ZScript references. After adding USEACTORPITCH and USEACTORROLL to a model, I can successfully rotate instances of it on all axes within Ultimate Doom Builder. However, when running the map in GZDoom, the model instances are all rendered as if their actor's Pitch and Roll values were at 0. I've confirmed that the model actor's Pitch and Roll in GZDoom are the same as in UDM. I've also set NOGRAVITY for the model's actor, just in case.

Does anyone have any idea why this might be happening?


I'm attaching a PK3 demonstrating what I'm seeing.  I had to rename it to ZIP to attach it, so rename it back to a PK3 if downloaded.  If you open the PK3's map in UDM, you can see that the instances of the chair model are rotated to different values along all 3 axes, but in GZDoom, the chairs are rendered as if the Pitch and Roll were 0. ALSO, I set it up so that if you "use" any of the chairs in GZDoom, a console output will tell you what the Actor's Angle, Pitch and Roll values are set to.

ModelRotationDemo.zip


Also encountered this since introducing 3D models myself. Couldn't work it out either. There seems to be a lot of flags that simply don't work.
I ended up changing the angles/roll/pitch in an external modelling program and having to use separate models for the different positionings which blew out the size of my resource PK3 to over 800MB which I'm not too happy about.

Edited by Doom-X-Machina

Share this post


Link to post

Anything set in MODELDEF only applies to the frames that come after your settings. So instead of

 

Frame act1 A 0 "frame01"
USEACTORPITCH
USEACTORROLL

you have to do

 

USEACTORPITCH
USEACTORROLL

Frame act1 A 0 "frame01"

UDB doesn't do that, it applies everything to all frames.

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...