path tracing,ray tracing?

Feedback on past, current, and future development.
User avatar
plop
Posts: 4
Joined: 04 Jul 2019, 11:03
Contact:

Re: path tracing,ray tracing?

Post by plop » 05 Jul 2019, 09:34

Full ray traced rendering (like they did for Quake2 recently: https://www.nvidia.com/en-us/geforce/ne ... force-rtx/) is probably too expensive to be anything else than a cool experiment (without a very expensive RTX graphics card it'll be hard to get a decent framerate).

That being said, there is a lot that can be done to approximate what ray tracing gives you "out of the box" (and it's what all recent games do, because it's much cheaper) :
- ambient occlusion
- global illumination
- reflections
etc. (and for each, there are dozens of possible implementations, with different pros and cons).

We could also try to change the lighting model to make it more physically based (PBR, another buzz word), but that probably involves modifying and/or generating a lot of textures, so I'm not sure how practical it would be.

Sagacity
Posts: 19
Joined: 05 Mar 2019, 12:58

Re: path tracing,ray tracing?

Post by Sagacity » 08 Sep 2019, 05:36

plop wrote:
05 Jul 2019, 09:34
We could also try to change the lighting model to make it more physically based (PBR, another buzz word), but that probably involves modifying and/or generating a lot of textures, so I'm not sure how practical it would be.
It shouldn't be hard to have a drop-in replacement for most of the shaders to facilitate PBR. Most of the shaders are already exposed under OpenMW/resources/shaders. It is very feasible to implement raytracing in full under lighting.glsl.

User avatar
AnyOldName3
Posts: 1581
Joined: 26 Nov 2015, 03:25

Re: path tracing,ray tracing?

Post by AnyOldName3 » 08 Sep 2019, 20:14

I take it you've never done anything like that, then.

PBR shading requires PBR-friendly materials to be defined, and Morrowind's materials and textures are a long way from that. They don't even look right with correct gamma or specular highlights from most light sources. Pre-PBR workflows tended to mush a lot of unrelated material information into the same data as under a traditional pipeline, it would have the same effect on the final colour, so it's usually not possible to reconstruct how a material actually behaves without a human helping.

Raytracing requires information about the whole scene to be available, but normal rendering just has either the current vertex or current single-pixel fragment of a triangle. Without that information, you've got nothing to bounce the ray off. That means that we can't just chuck raytracing into lighting.glsl.
AnyOldName3, Master of Shadows

Post Reply