Duke4.net Forums: Quake 1 - DirectX Raytracing - Duke4.net Forums

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Quake 1 - DirectX Raytracing

#1

I started work on a DirectX Raytracing port of Quake 1. I have released a one level demo, that basically allows you to play through E1M1. The entire game is raytraced, and requires a Nvidia 20xx or a Nvidia 30xx. This video was shot on a Nvidia 3080. The engine supports real time raytraced lighting and shadows(no bump mapping, I wanted to keep the composition of the original game, but with raytracing), raytraced Ambient Occlusion, and real time raytraced reflections.

Check out the video, download the build and let me know what you think.



Build:
https://github.com/j...s/tag/Alpha0.01

This post has been edited by icecoldduke: 02 October 2020 - 03:12 PM

4

User is offline   Jimmy 

  • Let's go Brandon!

#2

The new lighting really compliments the original game. The other effects seem to be implemented well enough, but it's funny to see reflective surfaces with rusty textures. I get it's just to show off the effects, but if you took this further and tastefully implemented these effects it could be a really good way to play the game.
0

User is online   NightFright 

  • The Truth is in here

#3

Those mirroring floors and shadows look really nice. Sadly I only have a 1070, so I can't really try any of this by myself.
0

#4

I do have the reflection turned up for testing, the next build will have mostly fixed UI. Again not using rasterization, I'm just blitting the UI elements to a screen buffer. The last thing I need to figure out is how to do particles with raytracing.
Posted Image
0

#5

I have released a alpha 2 release, all the levels work, and most of the UI works.

Posted Image

Youtube:
https://www.youtube....h?v=6XpBuqgEddE

Download
https://github.com/j...s/tag/Alpha0.02

This post has been edited by icecoldduke: 03 October 2020 - 11:27 AM

1

#6

Inverted UV issue that's seen in the latest video is fixed, just go to the https://github.com/j...s/tag/Alpha0.02 and grab the latest binaries.
0

#7

I recorded a demo and played it back on a 3080, 2080, 2060 to measure performance.


0

#8

I optimized the game quite a bit, got the 2060 to run the same demo as above at 70fps!

3

#9

Another play through, this time through E3M1.

0

#10

Technically impressive!
0

#11

Got the framrate on the 3080 and 2080 to be a(mostly) constant 100+ fps, the 2060 hovers between 80-100.

2

#12

If anyone is looking for a more modern code base I got DirectX Raytracing ported over to Quake 3 Arena.


1

User is online   NightFright 

  • The Truth is in here

#13

Don't get me wrong, it's incredible to have this option available, but I am not sure how I feel about seeing pretty much all surfaces reflecting. If that's the point of raytracing, I think I can live without it. It's irritating AF to my eyes and feels and looks misplaced in most cases. It's not like someone went through all the Quake levels and polished the surfaces until they turned super-shiny.

What would be more interesting to see would be light effects like god rays. These would fit much better into Quake in general IMHO.
0

User is offline   Aristotle Gumball 

  • banned!

#14

View PostNightFright, on 07 October 2020 - 12:34 AM, said:

I am not sure how I feel about seeing pretty much all surfaces reflecting. If that's the point of raytracing


Yeah, that's the point. When developers talk about their games having raytracing, that's exactly what they mean. Get with the times, grandpa.
1

#15

View PostNightFright, on 07 October 2020 - 12:34 AM, said:

Don't get me wrong, it's incredible to have this option available, but I am not sure how I feel about seeing pretty much all surfaces reflecting. If that's the point of raytracing, I think I can live without it. It's irritating AF to my eyes and feels and looks misplaced in most cases. It's not like someone went through all the Quake levels and polished the surfaces until they turned super-shiny.

What would be more interesting to see would be light effects like god rays. These would fit much better into Quake in general IMHO.

I turned on reflections on every surface to show "this is really raytracing and not rasterization", since all surfaces having reflections is essentially impossible to do with rasterization. The idea is we properly tag surfaces as a "opt in" for reflections going forward.
1

User is online   NightFright 

  • The Truth is in here

#16

Ah, fair enough, then. As a proof-of-concept it's fine. It was indeed too excessive to be the final look of the game.

This post has been edited by NightFright: 07 October 2020 - 09:30 AM

0

#17

4.0
Fixed a bug with reflections
Added vertex normal based lighting.
Changed attenuation to match qlight.

3.7
Fixed vertical line issue.


0

#18

5.0
Fixed a D3D12 device lost crash.
Added rtlights
Added color light support.
Refreg entities(static objects) now show up(torches, flames, etc).
Added raytrace shadow opt out flag for models.
Fixed a bug were UI characters wouldn't render(signed char was being used).
Fixed multiplayer UI being in the wrong spot.


1

#19

Some people have been asking about the Hexen 2 DirectX Raytracing bits, were this project started, I just moved over all of the Quake 1 DirectX Raytracing Alpha 5 progress back over to the Hexen 2 RTX branch. To get the best visual gains were going to need someone to go in and create rtlights for all the maps. This is just using the stock light placements.


0

#20

I modified the reflections to use GGX(PBR), and recorded a 5k playthrough (5120x1440).

1

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic


All copyrights and trademarks not owned by Voidpoint, LLC are the sole property of their respective owners. Play Ion Fury! ;) © Voidpoint, LLC

Enter your sign in name and password


Sign in options