Jump to content
  • 0

How to disable in-game player sprites (UDMF)?


Bauul

Question

What would be the easiest way of disabling the player sprite in game?  Source port target is GZDoom.

 

I thought I could use SetActorProperty in ACS to turn the player fully transparent, but that affects the weapons too.  I understand I might be able to override that using A_OverlayFlags's PSPF_FORCERENDERSTYLE, but I'm not really sure where to start.

 

The brute force approach is to simply edit the sprites so they're empty, but if there's a neater coding approach that'd probably be preferable.

 

Anyone any ideas?

Share this post


Link to post

6 answers to this question

Recommended Posts

  • 1

There is no other way. If you change the player's render style this will always also affect the weapon sprite, because this is how, for example, the fuzz effect and translucency in Heretic and Hexen is being determined.

 

Share this post


Link to post
  • 1

Forgive me, but what about using just TNT1A0 in the place of all PLAY sprites? Preferably by DECORATE to save space.

Edited by Voros

Share this post


Link to post
  • 0

You should be able to do this:

 

SetActorProperty(0, APROP_RenderStyle, STYLE_Translucent);

SetActorProperty(0, APROP_Alpha, 0.0);

 

I posted this for someone else's similar question and they said it worked.

Share this post


Link to post
  • 0

 

1 hour ago, Graf Zahl said:

There is no other way. If you change the player's render style this will always also affect the weapon sprite, because this is how, for example, the fuzz effect and translucency in Heretic and Hexen is being determined.

 

Thanks Graf.  I guess editing the sprites directly it is!  Essentially this is to try and stop the player sprite from appearing in a portal where you can see yourself (aka the mirror code, if I recall the workings correctly), and as a way around the bug where you briefly see your own back as you walk through a portal.

 

I suppose the neatest solution would be some kind of optional flag in the mirror code itself that could turn off reflecting the player sprite, but I know that's beyond the scope of ACS.

Edited by Bauul

Share this post


Link to post
  • 0
1 hour ago, Nevander said:

You should be able to do this:

 

SetActorProperty(0, APROP_RenderStyle, STYLE_Translucent);

SetActorProperty(0, APROP_Alpha, 0.0);

 

I posted this for someone else's similar question and they said it worked.

Yeah that was me! Unfortunately I was using GZDoom 3.0, which had a bug which didn't apply the actor rendering to the weapon sprite. So it worked perfectly until about two weeks later when version 3.0.1 came out. :'(

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
Answer this question...

×   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...