Deacls missing on animated walls

Tue Oct 14, 2003 11:41 am

Hi,

not a bug but rather an unimplemented feature? For 47i, no weapon leaves decals on animated walls.

Tue Oct 14, 2003 11:54 am

this has always been the case, mainly because uh, how would a decal look on a waterfall (or similar) texture? quite stupid. I don't know if there's a way (via animdefs) to make the show up on animated walls

also if you animate textures with acs then decals show up since they aren't really animated

Tue Oct 14, 2003 11:55 am

This is by design. If you want decals to appear on animated textures, add "allowdecals" to the ANIMDEFS entry for that animation.

Tue Oct 14, 2003 12:38 pm

I always found that one of the more stupid features of Legacy. Why would a waterfall have a bullethole? =)

Tue Oct 14, 2003 2:00 pm

It used to be a "feature" of Zdoom too, but Randy changed it so by default decals do not show on animated textures. Most of the doom animated textures are liquids or fires so that makes sense.

As Randy said, using the "allowdecals" instruction in animdefs, umm, allows decals. :)

texture NJANI041
allowdecals
pic 1 tics 8
pic 2 tics 8
pic 3 tics 8
pic 4 tics 8

Tue Oct 14, 2003 2:35 pm

Is there a "disallowdecals" for when you want to keep people from putting decals all over your computer screens?

Tue Oct 14, 2003 2:43 pm

Waterfall, ok, that is a serious reason, but what about some texture that is only partially (i.e. an 8x8 area) animated? Like... chains-behind-a-window, as .. ROTT ;) has it.
Thx.

Tue Oct 14, 2003 3:04 pm

Nanami wrote:Is there a "disallowdecals"...


Well all animations are "disallowdecals" by default, so they have to be actively allowed in animdefs before anyone can put decals all over your computer screens. This is done on an animation by animation basis, not globally, so you specify each and every texture where decals are allowed. All others remain disallowed.

Hirogen2 wrote:but what about some texture that is only partially (i.e. an 8x8 area) animated? Like... chains-behind-a-window, as .. ROTT :wink: has it.


Define your animation and put allowdecals in the definition in animdefs. That will mean decals appear on your animated texture. You won't be able to disable decals only on part of a texture (ie where the chains are) so you'll have to live with either a wall that doesn't get decals, or chains that magically move behind bullet holes. Your choice. :)
Last edited by Enjay on Tue Oct 14, 2003 3:05 pm, edited 1 time in total.

Tue Oct 14, 2003 3:04 pm

Nanami wrote:Is there a "disallowdecals" for when you want to keep people from putting decals all over your computer screens?

Yes, create a one frame animation and don't use allowdecals on it.

Tue Oct 14, 2003 3:07 pm

randy wrote:Yes, create a one frame animation and don't use allowdecals on it.


I was assuming animated computer screens. I never even thought about that for a single frame. Cunning.

Tue Oct 14, 2003 4:10 pm

Out of curiousity, what about these cases?

- Solid texture on a sidedef with a scrolling special (Does the decal sit still, scroll, or not appear at all?)
- Animated texture (with and without allowdecals) on a scrolling wall.

I remember a discussion long ago where i came up with different reasons for scrolling textures that would call for different behavior. One example of a scroller where you want the decal to appear but sit still is a sign with scrolling text. An example where you want a decal to appear and move with the scroll would be a solid object designed to look like it's rotating. And of course an example of not wanting a decal at all would be for liquids.

Has this been considered at all?

Also, how do decals on transparent textures work? If a rocket explodes on a 2-sided line set to block everything, does the texture on that line get a decal or not, and if so how is it displayed?

Tue Oct 14, 2003 4:18 pm

Scrolling textures simply do not show decals. No other options have been enabled to my knowledge I think this was opted for because it was the least likely to look wrong - eg on my train level the illusion of movement was ruined when decals could appear on a scrolling wall.

2S transparent walls do not get decals either. Just as well for all the smashing windows I did in my recent release. Mind you, I suppose if a line is set to change its blocking status, any decals on it could be removed. I guess there are other considerations too. What to show from the other side, what if a line blocks but is not transparent, or what if it blocks and doesn't have a texture...

Tue Oct 14, 2003 4:23 pm

Enjay wrote:Scrolling textures simply do not show decals. No other options have been enabled to my knowledge I think this was opted for because it was the least likely to look wrong - eg on my train level the illusion of movement was ruined when decals could appear on a scrolling wall.

2S transparent walls do not get decals either. Just as well for all the smashing windows I did in my recent release. Mind you, I suppose if a line is set to change its blocking status, any decals on it could be removed. I guess there are other considerations too. What to show from the other side, what if a line blocks but is not transparent, or what if it blocks and doesn't have a texture...


If a line blocks and is not transparent, not showing a decal gives away that it's a "fake" wall, which would seem to be undesirable.

Still, I understand why this would be difficult to implement and might not be worth it.

Wed Oct 15, 2003 2:15 am

Enjay wrote:You won't be able to disable decals only on part of a texture (ie where the chains are) so you'll have to live with either a wall that doesn't get decals, or chains that magically move behind bullet holes. Your choice. :)

Heh the purpose of a TC is to reproduce most, including odd behavior. And who says there is not unbreakable-glass before the chains ;)

Scrolling textures simply do not show decals.

In the real world, the only thing that could be a scrolling wall is a wall with rotating paper around it, for example. In that case, decals should move (if they were about to be enabled).
OTOH, if a projector projects a scrolling image onto a wall, decals should stay. But for that, I would use a translucent wall in front of the real wall, which does the job perfectly.

Just as well for all the smashing windows
, eh, where would the decal be placed if you shoot right into the window? :) The bullet travels through the glass at high speed, so it will be located in the next sector(s), either at the floor or at the next wall, depending on distance and physics.

Wed Oct 15, 2003 4:40 am

Hirogen2 wrote:eh, where would the decal be placed if you shoot right into the window? :) The bullet travels through the glass at high speed, so it will be located in the next sector(s), either at the floor or at the next wall, depending on distance and physics.


Well, yes it would be in Real Life ™. But in Zdoom, when you shoot a window - at least the way I have set them up - the bullet stops at the window. It's the next shot that passes through. I guess it proabably would have worked if I'd set the lines to be projectile cross and normal impassible rather than projectile impact and block_everything. Hmmm, maybe I should try that. Anyway, the toughened glass (only used on 2 windows) shatters but stays intact on the first hit, but smashes on the second.

Heh, anyway, I think the way Randy has things now is the best option. It works perfectly for most situations most of the time.