The status of ZDoom 2.0.97

News about ZDoom, its child ports, or any closely related projects.
[ZDoom Home] [Documentation (Wiki)] [Official News] [Downloads] [Discord]
[🔎 Google This Site]
DaniJ
Posts: 116
Joined: Sun Jan 30, 2005 12:52 am

Post by DaniJ »

Are you abstracting using macros to implement your new floating point math?

From a coders POV it would be nice to have the option of fixed/floating (considering your spending the time to go through and change all this), so that if at some point in the future you/someone else wanted to port Zdoom to compile on say an ARM processor it wouldn't be a royal pain in the ass to convert it back again.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49252
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Post by Graf Zahl »

My guess is that it's too late for that. ZDoom already uses a lot of floating point for internal calculations even in 2.0.96.
User avatar
AgentSpork
Posts: 106
Joined: Fri Aug 22, 2003 7:38 pm

Post by AgentSpork »

And here are three screenshots of something I've been toying with:
May I ask what exactly that is of? :P
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49252
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Post by Graf Zahl »

The base for a new renderer!
User avatar
Chris
Posts: 2998
Joined: Thu Jul 17, 2003 12:07 am
Graphics Processor: ATI/AMD with Vulkan/Metal Support

Post by Chris »

Graf Zahl wrote:Right. That as well. And since I know VC's optimizer quite well I can say that this does not create optimal code. On the other hand, P_AproxDistance was also a function call and the FixedMul calls, although inlined created some code overhead. ;)
True that. In my experience, on anything semi-modern, changing math-heavy fixed-point (ie, multiplications, divisions, etc) to floating point is generally good. Fixed point is good at having a fixed accuracy, int<->fixed conversions, and areas where bitwise operations help a lot, however (an example of the latter, I had a good, working 2d distance calculation function that didn't use any branching or sqrt's.. not 100% accurate, but close enough for most uses).
The last time I checked an sqrt opcode still needed 10 times as much time as a multiplication (but that was some time ago...)
Even so, an on-chip opcode is bound to be better than an external implementation.
User avatar
Tormentor667
Posts: 13557
Joined: Wed Jul 16, 2003 3:52 am
Preferred Pronouns: He/Him
Operating System Version (Optional): Windows 11
Graphics Processor: nVidia (Modern GZDoom)
Location: Germany

Post by Tormentor667 »

timmie wrote:
MartinHowe wrote:What are the screenshots of? I mean they sorta look like very old DoomCAD 3d-preview mode (which was vastly inferior to DB's). Is this a "ZLevelEdit" program or something?
Maybe just the polymost renderer as it stands now without any texture mapping yet with the flats and walls set to different colors?
...what is it?! :shock:
User avatar
Kirby
Posts: 2697
Joined: Thu Aug 26, 2004 1:23 pm

Post by Kirby »

Randy, you rock my world :D
User avatar
Tormentor667
Posts: 13557
Joined: Wed Jul 16, 2003 3:52 am
Preferred Pronouns: He/Him
Operating System Version (Optional): Windows 11
Graphics Processor: nVidia (Modern GZDoom)
Location: Germany

Post by Tormentor667 »

Graf Zahl wrote:The base for a new renderer!
This means, no more Doom-Port-Limits? :)
User avatar
QBasicer
Posts: 766
Joined: Tue Sep 16, 2003 3:03 pm

Post by QBasicer »

If we're goin with a new renderer, 32 bit textures...maybe...please?
skadoomer
Posts: 1026
Joined: Fri Sep 05, 2003 12:49 pm

Post by skadoomer »

Tormentor667 wrote:
timmie wrote:
MartinHowe wrote:What are the screenshots of? I mean they sorta look like very old DoomCAD 3d-preview mode (which was vastly inferior to DB's). Is this a "ZLevelEdit" program or something?
Maybe just the polymost renderer as it stands now without any texture mapping yet with the flats and walls set to different colors?
...what is it?! :shock:
A new system to render space. Hopefully this will eliminate the "Fish eye" effect when you try to look too far up or down in a map. If i had to venture a guess on what this would mean, i'd say this would allow for true 360 degrees of mlook like in gl ports. Then again, thats just my own observation basted on the way the shots are constructed.
RabidZombie
Posts: 113
Joined: Mon Aug 30, 2004 1:52 pm
Location: Still hell... Somewhere

Post by RabidZombie »

Im sure that freedom of any angle for the look has been talked about before in the polymost beifits thread

And anyway, i was right about that 'Fake' screeny being something:
ah, cant be bothered to find the link
User avatar
Sphagne
Posts: 513
Joined: Wed Jul 16, 2003 3:36 am

Post by Sphagne »

Great news, and the next step? A fully GL renderer?
User avatar
Grubber
Posts: 1031
Joined: Wed Oct 15, 2003 12:19 am
Location: Czech Republic

Post by Grubber »

What about releasing ZDoom .96 with Graf's DECORATE additions, something like .96a, so people don't have to wait for it to be official (Randy?)
rpeter
Posts: 150
Joined: Mon Jul 21, 2003 10:52 pm

Post by rpeter »

Optimizing for speed is not just the compiler's territory. Ken used precalculated tables for almost everything: power, sqrt, sin, cosin, angles. Some were static tables in the code, the bigger ones were loaded from the grp file. Sure, you won't find many floats in Build, probably none in the Duke's game code, but with a fixed precision float lookup tables can also be created.

I still cannot imagine that those bird-brain piggies could be fitted with an AI that can slow down ZDoom noticably...
User avatar
Chris
Posts: 2998
Joined: Thu Jul 17, 2003 12:07 am
Graphics Processor: ATI/AMD with Vulkan/Metal Support

Post by Chris »

Ken used precalculated tables for almost everything
Tables aren't always faster. Depending on the precision you need, the tables could be too large to easilly fit in the CPU cache. Also if you're using floats, converting to and from int is hard on the CPU as well.

Return to “ZDoom (and related) News”