Elvas Tower: ORMT - Sessions - Elvas Tower

Jump to content

  • 9 Pages +
  • « First
  • 3
  • 4
  • 5
  • 6
  • 7
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic

ORMT - Sessions Open Rails Management Team Rate Topic: -----

#41 User is offline   cjakeman 

  • Vice President
  • PipPipPipPipPipPipPipPip
  • Group: ET Admin
  • Posts: 2,876
  • Joined: 03-May 11
  • Gender:Male
  • Location:Peterborough, UK
  • Simulator:Open Rails
  • Country:

Posted 29 October 2023 - 01:15 AM

Our next session is in a week's time, on Sat 4th Nov.

Is there any topic that you would like ORMT to discuss?

#42 User is offline   rickloader 

  • Conductor
  • Group: Status: First Class
  • Posts: 493
  • Joined: 05-February 13
  • Gender:Male
  • Location:Southampton uk
  • Simulator:Open Rails
  • Country:

Posted 29 October 2023 - 01:47 AM

I would like to thank James for explaining about lights . Could not static lights ( yard, platform street) be given a volume sphere? Say 20 meters where they light up pixels in range. That way fewer pixels would have to be computed.
In minecraft you have to place torches to prevent hostile Mobs spawning in low light levels. A minecraft scene may have a hundred torches with out loss of performance. (static light sources) I bet these static lights are limited or fudged in some way, but the effect is still gorgeous.
I realise that getting a dev to implement things is a problem, but are there not ready made chunks of monogame code ?
https://deepworldgam...t-point-lights/
I`m not a coder so sorry if the above is not relevant.
Anyway, perhaps ORMT can find a moment to discuss static lights. Or even a move to direct x 10? Thanks, Rick

#43 User is offline   James Ross 

  • Open Rails Developer
  • Group: Status: Elite Member
  • Posts: 5,492
  • Joined: 30-June 10
  • Gender:Not Telling
  • Simulator:Open Rails
  • Country:

Posted 31 October 2023 - 01:50 PM

 rickloader, on 29 October 2023 - 01:47 AM, said:

I would like to thank James for explaining about lights . Could not static lights ( yard, platform street) be given a volume sphere? Say 20 meters where they light up pixels in range. That way fewer pixels would have to be computed.

It doesn't matter what shape the lights are, with immediate rendering, we need to calculate the light effect for every pixel (multiplied by number of lights). Every pixel on screen (in the 3D world) is calculating the light cone effect currently.

 rickloader, on 29 October 2023 - 01:47 AM, said:

I realise that getting a dev to implement things is a problem, but are there not ready made chunks of monogame code ?
https://deepworldgam...t-point-lights/

The code here appears to have been removed, but it is nevertheless going to be applying all 20 lights to every pixel. I don't remember what the maximum number of lights we could do with DirectX feature level 9_3, but more will definitely be worse for performance.

The main way out, which I believe most game engines use (or at least support) these days, is deferred rendering.

 rickloader, on 29 October 2023 - 01:47 AM, said:

In minecraft you have to place torches to prevent hostile Mobs spawning in low light levels. A minecraft scene may have a hundred torches with out loss of performance. (static light sources) I bet these static lights are limited or fudged in some way, but the effect is still gorgeous.

Minecraft has an almost unique optimisation it can do: almost everything can be calculated at vertices, not pixels, which massively speeds up things.

#44 User is offline   rickloader 

  • Conductor
  • Group: Status: First Class
  • Posts: 493
  • Joined: 05-February 13
  • Gender:Male
  • Location:Southampton uk
  • Simulator:Open Rails
  • Country:

Posted 31 October 2023 - 02:31 PM

Thank you James for your explanation. I am sorry my example was flawed, but there are a lot tutorials showing Momogame lights and water on the web. it doesn`t seem necessary to invent the code from scratch, but of course it still needs a coder to integrate with OR.
I must now reads about deferred rendering. thanks, Rick

#45 User is offline   James Ross 

  • Open Rails Developer
  • Group: Status: Elite Member
  • Posts: 5,492
  • Joined: 30-June 10
  • Gender:Not Telling
  • Simulator:Open Rails
  • Country:

Posted 31 October 2023 - 04:44 PM

 rickloader, on 31 October 2023 - 02:31 PM, said:

Thank you James for your explanation. I am sorry my example was flawed, but there are a lot tutorials showing Momogame lights and water on the web. it doesn`t seem necessary to invent the code from scratch, but of course it still needs a coder to integrate with OR.

The code to do multiple lights (up to an arbitrary fixed limit) is pretty simple, but it needs someone to take the time to implement it and test the performance effect (and see if it'll even work with our supported shader levels). Without that, we don't even really know if deferred rendering is needed (or a bump on minimum specs). :(

#46 User is offline   Eldorado.Railroad 

  • Foreman Of Engines
  • Group: Status: Contributing Member
  • Posts: 983
  • Joined: 31-May 10
  • Gender:Male
  • Country:

Posted 31 October 2023 - 06:57 PM

 James Ross, on 31 October 2023 - 01:50 PM, said:

The main way out, which I believe most game engines use (or at least support) these days, is deferred rendering.



While you are here, may as well "spill the beans" on anti-aliasing as well (warning this will almost surely cause some "brain pain" to read):
Multisample anti-aliasing in deferred rendering

If you want to see what a high performance, but limited AA looks like, I give you Run8. Running OR without quality AA, but with lights galore might be not what you are asking for. Many FPS games cheat by having a lot of black on the screen to "improve" visual performance with less AA. The last time I looked at Dovetail's offerings FXAA did very little for me. The simple but expensive SSAA works very well in forward rendering. Per say SSAA, is not really possible in deferred rendering without a fabulous GPU setup (dual Nvidia 4090s anyone?!) and even then you might be relegated to 1920x1080 as opposed to 4K to get decent frame rates. If this is so "simple" to do, somebody would have tried it out already. Alas the years role by.

There is also the "messy" issue how deferred rendering handles transparencies, this might turn the handling of common OR shaders upside down.

Steve

#47 User is offline   gpz 

  • Superintendant
  • Group: Status: Elite Member
  • Posts: 1,772
  • Joined: 27-October 12
  • Gender:Male
  • Location:Budapest
  • Simulator:OpenRails
  • Country:

Posted 01 November 2023 - 06:01 AM

 James Ross, on 28 October 2023 - 07:02 AM, said:

At the end of the day, it's mostly down to nobody trying to implement it, as with most other desired-but-missing features. :)

 James Ross, on 31 October 2023 - 04:44 PM, said:

The code to do multiple lights (up to an arbitrary fixed limit) is pretty simple, but it needs someone to take the time to implement it and test the performance effect (and see if it'll even work with our supported shader levels). Without that, we don't even really know if deferred rendering is needed (or a bump on minimum specs). :(

Let me take the chance to note here that the support for multiple lights is part of the glTF PR, which is part of the unstable release for more than a year. (Maybe more than two? I'm not in a mood to check back...) Currently the only supported way of adding more lights to the scene is to create a glTF object with attached lights, which then can be used either as a vehicle or a scenery object. Multiple of such glTF-s can be displayed at the same time, and one object may contain multiple lights. Currently there is a constant max. limit number of 20 is set in the code, but this is just because I don't know the performance implications.

#48 User is offline   James Ross 

  • Open Rails Developer
  • Group: Status: Elite Member
  • Posts: 5,492
  • Joined: 30-June 10
  • Gender:Not Telling
  • Simulator:Open Rails
  • Country:

Posted 01 November 2023 - 08:15 AM

 Eldorado.Railroad, on 31 October 2023 - 06:57 PM, said:

If this is so "simple" to do, somebody would have tried it out already. Alas the years role by.

There is also the "messy" issue how deferred rendering handles transparencies, this might turn the handling of common OR shaders upside down.

I hope you didn't think I meant deferred rendering is "simple", because it certainly isn't, and I know about the anti-aliasing and transparency downsides.

What is "simple" is changing our existing shader from doing 1 light to doing a higher (but still limited) number of lights, like Peter has done in the glTF patch (along with a lot of other work, of course).

 gpz, on 01 November 2023 - 06:01 AM, said:

Currently there is a constant max. limit number of 20 is set in the code, but this is just because I don't know the performance implications.

There is also the implications of increasing the minimum spec from DirectX feature level 9_1 to 10_0.

#49 User is offline   Jonatan 

  • Vice President
  • Group: Status: Elite Member
  • Posts: 2,663
  • Joined: 29-March 10
  • Gender:Male
  • Location:Somewhere.
  • Simulator:MSTS and Vehicle Simulator
  • Country:

Posted 01 November 2023 - 10:05 AM

What I'm suprised is that no one's done this "simple" change to the shader just on an experimental basis on their own system to see if it works, and study what happens.

Nevermind the professed outcomes, someone has to even try. Until that happens, we can speculate all we want.

#50 User is offline   eric from trainsim 

  • Waste Disposal Engineer
  • Group: Private - Open Rails Developer
  • Posts: 1,582
  • Joined: 30-October 10
  • Gender:Male
  • Simulator:ORTS
  • Country:

Posted 01 November 2023 - 12:12 PM

For the steering committee... can we perhaps get some roadmap "swimlane" updates?
  • Physics Improvements
  • Lightning Improvements
  • File Structure Evolution
  • World and Activity Editors
  • Documentation
  • Installers and Tutorials to simplify new user experience


If there's another way organizationally that these topics fall into swimlanes, great. We have various "camps" of interest, and it seems that some camps are more favoured than others.

I also want to continue to beat the drum on resurrecting TSRE -- please find a volunteer within the developers who might be able to figure out the QT components and see if there's a way to port that into C#.

Get as many eyes on that source code as we can, and perhaps someone will see a path forward. But people have to look at it. It's not fixing itself, and Goku continues to be absent.

Without new routes, we're screwed.

  • 9 Pages +
  • « First
  • 3
  • 4
  • 5
  • 6
  • 7
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users