View Issue Details

IDProjectCategoryView StatusLast Update
0000012Software Renderer[All Projects] Bugpublic2017-01-13 09:23
ReporterGraf Zahl 
Assigned TodpJudas 
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
Summary0000012: [Software] BOOM Transfer Sky Texture, Tall Sky Bug
DescriptionCross posting from ZDoom Forums: https://forum.zdoom.org/viewtopic.php?f=2&t=52271

I'm creating a map for BOOM and due to the nature of how we got the maps set up, we have to use "Transfer Sky Texture to Tagged Sectors" action (271 and 272). I dislike how ZDoom was handling the stretched sky so I 'borrowed' the sky textures from Skulltag to make a quick sky replacement for Doom. Was looking good until I looked all the way up.

If this is something that the QZDoom team can instead of fixing it in the base Source Port, I'll send this issue over to them.

Test Map
What happens
What it's suppose to look like
TagsNo tags attached.

Relationships

Activities

dpJudas

dpJudas

2017-01-10 13:06

developer   ~0000024

This is caused by a mysterious -28 offset in this line: https://github.com/coelckers/gzdoom/blob/master/src/r_plane.cpp#L1382

If it is removed, this bug goes away. I tried launching Doom and Doom 2 with this offset removed and the top of the sky texture then matches perfectly the top of the screen, which I assume is how it worked in original DOS Doom. Anyone know why such an offset is needed?
Graf Zahl

Graf Zahl

2017-01-10 13:24

administrator   ~0000027

That line of code, including the comment above for 'careful positioning' originates directly from MBF so this will require some careful (heh) comparison to ensure that changing it won't break compatibility with Boom maps.
dpJudas

dpJudas

2017-01-10 14:38

developer   ~0000032

I can see that in r_sky.cpp that constant is used again, but only applied if the texture is exactly between 128 and 199 in height.

One possibility is that the constant was moved at some point and then mistakenly applied to the sky linedef case. Or it might be that it should also only be applied for the 128-199 range here.

If someone could check if some Boom maps (especially with sky textures less tall than 200 pixels) broke or not in the next nightly build of QZDoom, then that'd be really nice. (yes, I'm too lazy to check it myself ;))
Graf Zahl

Graf Zahl

2017-01-11 03:15

administrator   ~0000040

Boom never had tall skies, so the bug here is that an adjustment needed for 128 pixel skies is applied to all ones. This should use the same positioning logic as all the rest, of course.
Hellser

Hellser

2017-01-12 14:39

manager   ~0000053

Using q1.3pre-194-g1b750c1 for QZDoom, the issue has been fixed. Thanks for finally fixing this!
dpJudas

dpJudas

2017-01-13 09:22

developer   ~0000059

You're welcome, Hellser. Going to mark this one as resolved then.

Issue History

Date Modified Username Field Change
2017-01-09 14:59 Graf Zahl New Issue
2017-01-09 16:45 Rachael Category General => Bug
2017-01-10 13:06 dpJudas Note Added: 0000024
2017-01-10 13:24 Graf Zahl Note Added: 0000027
2017-01-10 13:25 Graf Zahl Project Gameplay + OpenGL => Software Renderer
2017-01-10 14:38 dpJudas Note Added: 0000032
2017-01-11 03:15 Graf Zahl Note Added: 0000040
2017-01-12 14:39 Hellser Note Added: 0000053
2017-01-13 09:22 dpJudas Note Added: 0000059
2017-01-13 09:23 dpJudas Assigned To => dpJudas
2017-01-13 09:23 dpJudas Status new => resolved
2017-01-13 09:23 dpJudas Resolution open => fixed