[RELEASED] ZDoom32 2.8.2 (ZDoom is undead)

Software projects like source ports (3DGE, Eternity, etc), launchers like ZDL, and other useful utilities belong in this forum.
Forum rules
The Projects forums are ONLY for YOUR PROJECTS! If you are asking questions about a project, either find that project's thread, or start a thread in the General section instead.

Got a cool project idea but nothing else? Put it in the project ideas thread instead!

Projects for any Doom-based engine (especially 3DGE) are perfectly acceptable here too.

Please read the full rules for more details.

Re: [RELEASED] ZDoom32 2.8.2 (ZDoom is undead)

Postby dpJudas » Sat Sep 23, 2017 7:19 pm

It is essentially the same problem again. It only stores one of the columns. Change it to:

Code: Select allExpand view
   // Top solid color:
   for (int index = 0; index < start_fadetop_y; index++)
   {
      dest[0] = solid_top_fill;
      dest[1] = solid_top_fill;
      dest[2] = solid_top_fill;
      dest[3] = solid_top_fill;
      dest += pitch;
      for (int col = 0; col < 4; col++)
         frac[col] += fracstep[col];
   }


And the same thing for the bottom solid color fill.
dpJudas
 
Joined: 28 May 2016

Re: [RELEASED] ZDoom32 2.8.2 (ZDoom is undead)

Postby drfrag » Sun Sep 24, 2017 3:19 am

Thanks, now it's working but with the wrong solid color (the sky is red). With the old RGB32k.RGB lines it's the same.
Commenting the following lines with the "solid_top_fill << " and "solid_bottom_fill << " has no effect either.
Edit: it's fixed but i don't know why, using solid_top and solid_bottom directly.
Edit2: it's up @ https://github.com/drfrag666/gzdoom/commits/tccapsky
User avatar
drfrag
ZDoom32 developer.
 
Joined: 23 Apr 2004

Re: [RELEASED] ZDoom32 2.8.2 (ZDoom is undead)

Postby drfrag » Mon Sep 25, 2017 4:28 am

@dpJudas:
I've changed loads and stores to be aligned, it works with Randi's original code. The other time i went nuts with those changes, this time i've just replaced occurrences in r_draw_rgba.cpp and r_drawt_rgba_sse.h. Your version of DSimpleCanvas::Resize didn't compile with gcc since std::aligned_alloc is C++17.
Unfortunately performance is exactly the same both in my athlon64 and the p4 2.4, at the start of map01 even @1152 (still old crt monitor here). So it's not worth changing it, anyway i've uploaded the changes in case you want to check them.

https://github.com/drfrag666/gzdoom/commits/gzdoom32

Edit: capped skies don't work in Heretic and Hexen but it doesn't matter that much.
User avatar
drfrag
ZDoom32 developer.
 
Joined: 23 Apr 2004

Re: [RELEASED] ZDoom32 2.8.2 (ZDoom is undead)

Postby drfrag » Tue Sep 26, 2017 5:52 am

I've tested the last GZDoom SVN and capped skies still don't work in Heretic and Hexen with the classic renderer, moreover stretched and normal skies don't work properly either. The sky is tiled (when you look up you see the bottom of the sky), i don't know if i should post a bug report.

On aligned load and stores i assume everything is right (doesn't crash) so i will not revert it at least for now.

This is unrelated but now i'm trying to add a 3x3 low detail mode, unfortunately my half-assed implementation is a disaster.
User avatar
drfrag
ZDoom32 developer.
 
Joined: 23 Apr 2004

Re: [RELEASED] ZDoom32 2.8.2 (ZDoom is undead)

Postby drfrag » Wed Nov 08, 2017 2:11 pm

I've released a new version. This release mainly adds the truecolor capped sky drawers and a couple of new low detail modes and fixes some crashes (large textures on old cards and SSE2 executable with voxels). See first post.
I've changed version numbering as well (still it's very conservative). I've updated ZDoom LE and Classic as well.
User avatar
drfrag
ZDoom32 developer.
 
Joined: 23 Apr 2004

Re: [RELEASED] ZDoom32 2.8.2 (ZDoom is undead)

Postby drfrag » Mon Nov 20, 2017 7:06 am

Well, this is embarrassing. :oops: I've just released a new version since i've found a nasty bug with broken savegames on maps with dynamic lights (i've flagged it as critical). Somehow i missed a bugfix by Graf after porting his GZDoom adjustments for the new savegame code, i usually don't read the entire description for all commits. The problem was already in the previous release after the merge with the old GZDoom but it's not a bad merge. I know i said the last one was a solid release but hey this time is for real i promise. :) I know this comes after the gcc crash with voxels for the SSE2 version but it was also unfortunate and that doesn't mean this is not a solid product. 8-) Some testing would be welcome.

On the bad rendering of 3D Floors in TC mode (missing textures shown as white) it's the same as in QZDoom 0.0 alpha. I don't know how to fix them (not skilled enough of course) nor where to look at. I don't know how to port LLVM code to C++ or if that's even possible. May be it's an easy fix or may be it's over-complicated.
@dpJudas: I'm asking for your help again :3: , what do you think of this? Is there a viable and easy solution for fixing them on this poor man's QZDoom? (this engine is faster on old machines and has lower requirements so it would be nice to have them working).
User avatar
drfrag
ZDoom32 developer.
 
Joined: 23 Apr 2004

Re: [RELEASED] ZDoom32 2.8.2 (ZDoom is undead)

Postby dpJudas » Mon Nov 20, 2017 2:28 pm

I'm not really sure what causes the bug you're referring to. There are too many changes since then for me to say. If you know which drawer is failing and can tell me what is supposed to happen when the texture is missing, maybe I can come up with a theory for what is going wrong.
dpJudas
 
Joined: 28 May 2016

Re: [RELEASED] ZDoom32 2.8.2 (ZDoom is undead)

Postby drfrag » Tue Nov 21, 2017 5:52 am

Thanks very much again, sadly i've got no idea of what's wrong. The texture (flat) is applied but it's mostly not shown only a few squares with the wrong color. The problem was in q0.0 alpha (from 09/26) and not in q0.1 (from 10/18) so i've reviewed your commits in QZDoom master between those dates but there's nothing there, seems like it's fine right out of the box with the LLVM drawers.
Sometimes both the upper and lower flats for the 3d floor are bad and sometimes only one of them (as in the example) or both of them are mostly right with only a few white stripes for wall textures.
Do you remember such a problem? I've tested with staircase3b2.wad (see screenshot) and 3D_BLDG7e.wad mostly.
It can be reproduced with any 3d floor and in ZDoom32 i renamed the swtruecolor CVAR to r_truecolor.

Screenshot_Doom_20171121_112610.jpg

Just in case wads here:
viewtopic.php?f=3&t=37508
And engine here:
https://github.com/drfrag666/gzdoom/rel ... 2_282b.zip
User avatar
drfrag
ZDoom32 developer.
 
Joined: 23 Apr 2004

Re: [RELEASED] ZDoom32 2.8.2 (ZDoom is undead)

Postby dpJudas » Thu Nov 23, 2017 2:31 pm

Not really sure what happens there, sorry. The pixels at the edge vertically could look like sampling bugs. The errors to the side could be a broken 1 column drawer where the 4 column version works. It could be a light level that is just way too high somehow (since its so white but yet not entirely). Not really seeing any pattern in it.

I can't recall having seen something like this.
dpJudas
 
Joined: 28 May 2016

Re: [RELEASED] ZDoom32 2.8.2 (ZDoom is undead)

Postby drfrag » Thu Nov 23, 2017 3:21 pm

Thanks, the main problem there is (obviously) the ceiling flat mostly shown as white. The output with QZDoom 0.0 alpha is exactly the same as with ZDoom32 (i downloaded it from a doomworld thread). In the original truecolor thread nobody complained about 3d floors so may be the problem was introduced later, i don't know if it could be related to the removal of premultiplied alpha (it doesn't seem so). Did you try 3d floors back then at some point with the C++ drawers?

So no idea but i'd really like to fix this since i find this old renderer very interesting for legacy hardware. To illustrate it on my old athon64 3500+ comparing ZDoom32 with Rachael's test build from 05/21 i get (NOSSE2 / SSE2) 38 / 55 fps vs 19 / 33 @1024. Now that ZDoom32 is a mature port i think it's worth fixing this (IMHO) for people with old hardware but unfortunately i can't do it myself. It happens only with 3d floors but i don't know where to look and my skills are quite limited. Any help would be greatly appreciated.
:wub:
Also i'd like to try your old test build in zdoom-truecolor2.zip, do you still have a copy lying around by any chance? Thanks again.

Edit: the screenshots are actually from q0.0 alpha. Here's another one with 3D_BLDG7e.WAD.

Screenshot_Doom_20171123_214430.jpg
User avatar
drfrag
ZDoom32 developer.
 
Joined: 23 Apr 2004

Re: [RELEASED] ZDoom32 2.8.2 (ZDoom is undead)

Postby Kappes Buur » Thu Nov 23, 2017 5:27 pm

I downloaded the engine from viewtopic.php?f=44&t=57087&start=45#p1028078
and ran those two pwads with the default settings

Spoiler:


Specs
Spoiler:
User avatar
Kappes Buur
 
 
 
Joined: 17 Jul 2003
Location: British Columbia

Re: [RELEASED] ZDoom32 2.8.2 (ZDoom is undead)

Postby drfrag » Sun Nov 26, 2017 7:03 am

@Kappes Buur:
Thanks for testing it but the default is the classic paletted renderer since this is the sucessor to the good old ZDoom 2.8.1 (for old hardware and even win9x). You need to set r_truecolor to true or use the display menu option to switch to truecolor mode. The missing dome is normal since 3d floors are somewhat limited in software, they are fine with the GL renderer. Quite powerful hardware there BTW.

@dpJudas @Rachael:
Sorry but i need to insist. I known you're busy with more important and exciting stuff, great work with models BTW (at first i thought it was a Quake II screenshot). :D
I've done some research and i think the problem is related to a bad translation and alpha blending somehow and not in the drawers themselves. If so the problem was fixed in the commit '10/07 - Changed column drawers to use true color textures' and would be in RtTranslate1colRGBACommand (r_drawt.cpp). But of course may be i have no idea of what i'm talking about. That code was added in '06/07 - Changed rgba renderer to use a command queue system for its drawers'.
I don't know if 3d floors were rendered properly in the old june build (zdoom-truecolor2.zip). I'd like to test QZDoom 0.1 alpha from 10/08 as well (but i could only download the later beta).

I don't think this would be a quick and easy fix so what i'd like to do then is adding a hack for 3d floors in TC mode so at least flats are rendered properly but opaque by disabling alpha blending. That hack would be in the 3d floor code itself. Could you help with that, such a quick and dirty hack? Provided i'm not completely wrong of course. :)
User avatar
drfrag
ZDoom32 developer.
 
Joined: 23 Apr 2004

Previous

Return to Software and Ports

Who is online

Users browsing this forum: No registered users and 2 guests