Board index FlightGear Development Effects and shaders

What effects are we missing?

An exciting "new" option in FlightGear, that includes reflections, lightmaps, the particle system etc.. A lot is yet to be discovered/implemented!

What effects are we missing?

Postby Thorsten » Mon Apr 01, 2013 6:18 pm

We have another shader request thread which is pretty similar, but reading through it, it essentially goes into a shopping list where nothing seems to come out. I would like to try a somewhat different approach. I would like to get some feedback about what effects people who work with models and/ or terrain think could improve their work and get an idea about what accents to set in the mid-term.

I'm not so much interested in what would be nice - I think we all agree that having a terrain shader which generates tilingless, photorealistic terrain with cm-sized terrain features and runs with 60 fps on a 4-year old underpowered laptop would be nice to have, but... there's the 'no free lunch' law, and in any case, a 'would be nice' doesn't help without an idea how to get there.

So I'd really be interested in more concrete proposals along the lines of 'if we had this effect, I could improve my model like that' - or I'm interested in ideas which come from some basic understanding how effects and shaders in FG work. It doesn't really have high success chances to suggest a feature which requires to re-structure the FG core or terrain generating process in a major way.

To point out some avenues which I see as a potential go:

* If we have linear features like roads mapped in the proper direction and classified into left and right lanes, we could add overlay textures and normalmaps with the shader (think urban effect) and translate them with time, creating the semblance of traffic (like the urban effect, this would break at low altitude, but from reasonably high up might look credible)

* Surf is something I have tried based on altitude and gradient, but our terrain altitude isn't really good enough - it looks good on steep coastlies, but doesn't work on flat coastlines - so we'd need terrain classified specifically as surf zone / beach for this to work properly.

* We could probably have more environment - terrain/model interactions - the flag shader is an example for something moving in the wind, presumably we could also have something which looks like grass in the wind, or think rain,...

* Given some Nasal script to sample terrain, we could probably come up with a different sea color close to the shore, and assuming that the terrain steepness above is an indication for the terrain steepness underwater, we could adjust the gradient accordingly. So this may in essence fake true depth information.

To point out some examples for things which I don't see as go:

* Smoothing over the landclass seams would be very nice, but it requires major changes to the terrain generation and storage, and it isn't even quite clear what these changes should be, so... perhaps not in the mid-term.

* A geometry shader could potentially make the terrain edges more ragged, but using a geometry shader for that is flagged as a big No! No! in about every text I've been reading - the framerate is a killer.

So, any specific input to the plan is appreciated. Note that the purpose of the thread is to gather some feedback - this is not a feature request thread, and all I promise is to think about the feedback.
Thorsten
 
Posts: 10950
Joined: Mon Nov 02, 2009 8:33 am

Re: What effects are we missing?

Postby Hooray » Mon Apr 01, 2013 6:33 pm

We could probably have more environment - terrain/model interactions - the flag shader is an example for something moving in the wind, presumably we could also have something which looks like grass in the wind, or think rain,...


FWIW, I do like the idea of having a more-complete terrain interaction framework implemented in FG, so that artwork contributors could for example help by providing textures for different vegetation types without having to know too much about programming or GLSL in particular.

Terrain interaction is also important for certain ground maneuvers in real life (especially for helicopter pilots, i.e. takeoff/landing, hovering), i.e. having visuel cues (moving grass/snow/sand or water) would be relevant - and would even allow implementing whiteout, without resorting to a visual hack.

Specifically, I am thinking in terms of not only increasing realism, but also in terms of novel features that would help set FG apart from its commercial/proprietary counterparts.

That said, such a feature would obviously require some concept of "turbulence" and distribution of it - but on the other hand, I'm talking to the "weather guy", right? :lol:
Please don't send support requests by PM, instead post your questions on the forum so that all users can contribute and benefit
Thanks & all the best,
Hooray
Help write next month's newsletter !
pui2canvas | MapStructure | Canvas Development | Programming resources
Hooray
 
Posts: 11329
Joined: Tue Mar 25, 2008 8:40 am

Re: What effects are we missing?

Postby Thorsten » Tue Apr 02, 2013 6:09 am

FWIW, I do like the idea of having a more-complete terrain interaction framework implemented in FG, so that artwork contributors could for example help by providing textures for different vegetation types without having to know too much about programming or GLSL in particular.


Yep - that's sort of the idea of this thread - to map what could be accomplished if a modeller/terrain person/graphical artist works together with a shader coder for a project.

That said, such a feature would obviously require some concept of "turbulence" and distribution of it - but on the other hand, I'm talking to the "weather guy", right?


Indeed - it helps to interface rendering and the environment if you can code both 8)
Thorsten
 
Posts: 10950
Joined: Mon Nov 02, 2009 8:33 am

Re: What effects are we missing?

Postby Hooray » Tue Apr 02, 2013 12:20 pm

Thinking about it, for turbulence-induced aircraft/terrain interaction, one would need to access certain info, such as the relative location of the propulsion, its orientation, diameter, velocities etc.
Something like that would not just be useful for helicopters obviously but I don't think JSBSim or YaSim expose this stuff to the property tree ? Which would mean, one would to duplicate that info in some sort of separate XML file until the FDMs expose such details for use by effects ?
Please don't send support requests by PM, instead post your questions on the forum so that all users can contribute and benefit
Thanks & all the best,
Hooray
Help write next month's newsletter !
pui2canvas | MapStructure | Canvas Development | Programming resources
Hooray
 
Posts: 11329
Joined: Tue Mar 25, 2008 8:40 am

Re: What effects are we missing?

Postby Johan G » Tue Apr 02, 2013 6:00 pm

Hooray wrote in Tue Apr 02, 2013 12:20 pm:...for turbulence-induced aircraft/terrain interaction, one would need to access certain info, such as the relative location of the propulsion, its orientation, diameter, velocities etc...

Could be useful for interaction between aircraft in close formation, air races etc. as well, but for the individual aircraft it would probably have to be added in a way similar to bombable.
Low-level flying — It's all fun and games till someone looses an engine. (Paraphrased from a YouTube video)
Improving the Dassault Mirage F1 (Wiki, Forum, GitLab. Work in slow progress)
Johan G
Moderator
 
Posts: 5509
Joined: Fri Aug 06, 2010 5:33 pm
Location: Sweden
Callsign: SE-JG
IRC name: Johan_G
Version: 3.0.0
OS: Windows 7, 32 bit

Re: What effects are we missing?

Postby Michat » Wed Apr 03, 2013 9:18 pm

Having coastlines and sea gradients is good effect combi. Supposing to have coast lines and surf, what about to create a water shader effect that can recognize those coastlines shapes in order to draw some specific area effect accordingly to some kind of logic. I'll try to explain with some examples: For example leeward, and windward logic. Drawing different surf or water shader in relation with the coastline shape. Leeward coast windward coast can be represented using same shader with different values..

Other example. Winds are blowing strong from the pacific today in SFO, over the bay there is no surf and the water shader can represent a flat by windy and or gusty low choppy. Leeward=danger and severes turbulences. At the same time over golden gate choppy is more marked , and the windy and shiny shader can perform some specific coast line contours effects due to wind gust lungs. windward=danger to severe turbulences with strong streams .Out ouf the bay the surf is high. On windward the famous open sea Maverick Point Break 1nm aprox in front of KHAF is spitting big waves Gusts are severe but wind is more laminar less turbulence. Due to it's proximity to the coast line 17cl Las trancas is reporting wet sea sprayed winds, so the cockpit can receive some rain effects. Big surf today in the bay.. Over

Hope you find some good idea.

Thinking about it, for turbulence-induced aircraft/terrain interaction my paramotor friends says that in summer over big flat buildings made by metal roof they experimented such a dirty strait up turbulence radiation, also over heading asphalt surface occurs but less accused. Best is to fly over rice fields where radiation is regular.

Thanks for sharing.
User avatar
Michat
 
Posts: 958
Joined: Mon Jan 25, 2010 6:24 pm
Location: Spain
Version: 191b
OS: GNewSense

Re: What effects are we missing?

Postby Thorsten » Thu Apr 04, 2013 6:21 am

Supposing to have coast lines and surf, what about to create a water shader effect that can recognize those coastlines shapes in order to draw some specific area effect accordingly to some kind of logic.


The elephant in the room is that shaders have pretty much only local information. In a vertex shader, all I have to work with are vertex coordinates and attributes. I can't get the adjacent vertices and I can't make any operations based on them. Moreover, as far as I know in a vertex shader I can't query textures at all.

So I can't write an algorithm 'look for the neighbour vertex, see what it's landclass is' to determine if an Ocean vertex is coast or deep sea - all I know is that it's water, because the vertex is associated with all the info from the water effect file.

In a fragment shader, pretty much all I have is the pixel information as handed down by interpolating and rasterizing the vertex info. I can lookup textures for that pixel, I can pass its coordinates, but I still don't know much adjacency info.

The reason why this is so is that rendering has to be real time and fast - breaking the information down into local bits only means I can attack it by massive parallel computing and don't have to process vertex dependencies. So this is a deep limitation of real-time rendering which is hard-wired into the way GPU architecture works.

So I can't write shader code which recognize coastlines because that requires adjacency info and texture determination in the vertex shader. I can't write an effect which creates surf leeward of anything because I don't know what is leeward of what I am currently rendering.

Such information would have to be determined elsewhere and passed to the shader as for instance a vertex attribute - which is where it gets complicated and costly. As I said, we had this discussion on the devel list, and there was no clear strategy emerging, just a bunch of ideas.

Thinking about it, for turbulence-induced aircraft/terrain interaction my paramotor friends says that in summer over big flat buildings made by metal roof they experimented such a dirty strait up turbulence radiation, also over heading asphalt surface occurs but less accused. Best is to fly over rice fields where radiation is regular.


The weather system has that - convective clouds and turbulence for preferentially over landclasses which actually heat up - create clouds over San Francisco, and you can see how they cluster over the city, while much less and weaker clouds appear over the bay.
Thorsten
 
Posts: 10950
Joined: Mon Nov 02, 2009 8:33 am

Re: What effects are we missing?

Postby dtlan201 » Thu Feb 06, 2014 8:56 am

Moving vehicle
dtlan201
 
Posts: 187
Joined: Sun Sep 29, 2013 3:49 am
Callsign: MIA0774
Version: 3.7
OS: Windows 7

Re: What effects are we missing?

Postby Johan G » Thu Feb 06, 2014 10:59 am

If you are referring to vehicles you can drive yourself there is a few ones (see Vehicles on the wiki).

If you are referring to moving cars on the roads there have been some experiments on that in the past, though it did not materialise in a finished form (see this and the following posts).
Low-level flying — It's all fun and games till someone looses an engine. (Paraphrased from a YouTube video)
Improving the Dassault Mirage F1 (Wiki, Forum, GitLab. Work in slow progress)
Johan G
Moderator
 
Posts: 5509
Joined: Fri Aug 06, 2010 5:33 pm
Location: Sweden
Callsign: SE-JG
IRC name: Johan_G
Version: 3.0.0
OS: Windows 7, 32 bit

Re: What effects are we missing?

Postby punkepanda » Thu Feb 06, 2014 6:29 pm

I like that question :)
Heres my wishlist:
What about water reflection? Would look really nice.
WHat about sloopy and bumpy runways?
What about actually have sky colours that look realistic (especialy at late dawn and early sunrise. Its just not realistic when the air turns all red: sky sould be red; not the surounding air)
What about fixing colours in ALS. Mid noon looks good, and late evening. But dawn just look too brown and visibility gets terrible?
What about a windshock that atually has realistic movements according to wind: its just to static in the way it moves. Some dynamic animation would be good?
What about some birds and land animals. Especialy flying birds which could crash into planes and into engines?
What about hot air effect behind the jet engines?
What about advanced weather system actually activates at startup if that was the last saved option?
What about "reset" keeps the last used configuration so one does not need to reconfigure the whole session as desired?
What about turbulence option in advanced weather?
What about sun glare?
What about big moons and small moons, same with sun?
What about wheels make some screaming sound on asphalt (much bether ground interaction physics)?
What about making some good nasal standard scripts on aeroelasticity on wings, so aircrafts could easely be much more dynamic looking?
What about a global air refuling options so the tanker could be called everywhere and not just around KSFO?
What euroria borealis?
What about waves and water scattering that follows wind according to terrain. calm water where tall hills and cliffs near water?

But i think the biggest issue with FG deveopment is that its no standard. Now its rembrandt thats put on hold, its ALS that is half-hearted and the default way. And none of this have compliance with each other.. So is it even possible to have any GLSL effects in flightgear?

Look at the water effects video.. That would be something to include in FlightGear. Its OSG so it would be possible right?
http://www.openscenegraph.org/index.php/gallery/video

Its called osgOcean and its OpenSource as far i I know. Would it be possibel to implement?
punkepanda
 
Posts: 237
Joined: Mon Nov 04, 2013 9:11 pm
Callsign: LostFlight
Version: 2.12
OS: Arch Linux

Re: What effects are we missing?

Postby Thorsten » Thu Feb 06, 2014 7:55 pm

What about water reflection? Would look really nice.


The sun has been reflecting in the water for years.


What about fixing colours in ALS. Mid noon looks good, and late evening. But dawn just look too brown and visibility gets terrible?


I've made several time series of real sunsets and measured (rgb) curves from the photographs to deduce the change of color in time. I assure you that pretty much any combination you see does occur in nature. It changes much with weather though. I also assure you ALS doesn't change the visibility at dawn.

What about actually have sky colours that look realistic (especialy at late dawn and early sunrise. Its just not realistic when the air turns all red: sky sould be red; not the surounding air)


That's what ALS does.

What about advanced weather system actually activates at startup if that was the last saved option?


Talk to the Nasal-opponents on the devel list. Or search the forum, it's a one liner to add that which I've posted somewhere.

What about turbulence option in advanced weather?


What about it? It's simulated when it occurs.

What about big moons and small moons, same with sun?


They never change size in reality.

What about a global air refuling options so the tanker could be called everywhere and not just around KSFO?


We have this since 2.12.

What about some birds and land animals. Especialy flying birds which could crash into planes and into engines?(...)
What about waves and water scattering that follows wind according to terrain. calm water where tall hills and cliffs near water?


What about keeping your framerate above single digits?

What euroria borealis?


What's that?

But i think the biggest issue with FG deveopment is that its no standard


That's its biggest advantage. It's called 'having options'.

So is it even possible to have any GLSL effects in flightgear?


No, ALS and Rembrandt run on magic. The code is completely written in Enochian, and a demon needs to be invoked to make it run.
Thorsten
 
Posts: 10950
Joined: Mon Nov 02, 2009 8:33 am

Re: What effects are we missing?

Postby Necolatis » Thu Feb 06, 2014 8:01 pm

Thorsten wrote in Thu Feb 06, 2014 7:55 pm:
So is it even possible to have any GLSL effects in flightgear?


No, ALS and Rembrandt run on magic. The code is completely written in Enochian, and a demon needs to be invoked to make it run.


If you turn off Rembrandt and ALS (sadly) and put model shader to max, there is also real nice shader effects applied to certain aircrafts. (chrome, specularmaps, normalmaps, reflections etc.)
"Airplane travel is nature's way of making you look like your passport photo."
— Al Gore


Hangar: https://sites.google.com/site/fghangar/
User avatar
Necolatis
 
Posts: 1943
Joined: Mon Oct 29, 2012 12:40 am
Location: EKOD
Callsign: Leto
IRC name: Neco
Version: 2019.1.2
OS: Windows 10

Re: What effects are we missing?

Postby Thorsten » Fri Feb 07, 2014 7:07 am

If you turn off Rembrandt and ALS (sadly) and put model shader to max, there is also real nice shader effects applied to certain aircrafts. (chrome, specularmaps, normalmaps, reflections etc.)


The model shader of ALS and Rembrandt can do all of these. They use a combined shader in which you can activate individual effects as options using flags. Previously we used to have a normalmap-only effect and a specular-only effect, but they are considered obsolete now, we do no longer maintain or support these shaders, and aircraft modelers are advised to use the combined shaders instead. It's down to changing a few lines of xml really.
Thorsten
 
Posts: 10950
Joined: Mon Nov 02, 2009 8:33 am

Re: What effects are we missing?

Postby punkepanda » Fri Feb 07, 2014 11:38 am

Thorsten wrote in Thu Feb 06, 2014 7:55 pm:
What about water reflection? Would look really nice.


The sun has been reflecting in the water for years.


I didnt say sun reflection. I sayd water reflection. When the water is calm and it has this mirror effect on the suroundings..

What about fixing colours in ALS. Mid noon looks good, and late evening. But dawn just look too brown and visibility gets terrible?




What about actually have sky colours that look realistic (especialy at late dawn and early sunrise. Its just not realistic when the air turns all red: sky sould be red; not the surounding air)


That's what ALS does.

No, it makes it brown and dark before time. Looks likes its a filter of some kind, instead of actually fixing the root of the problem.

What about advanced weather system actually activates at startup if that was the last saved option?


Talk to the Nasal-opponents on the devel list. Or search the forum, it's a one liner to add that which I've posted somewhere.

Wouldnt it makes sence to implement it as a default. Or at a checkbox "Use last saved settings".

What about turbulence option in advanced weather?


What about it? It's simulated when it occurs.

What if I want to make it occur? When do I know when it occurs?

What about big moons and small moons, same with sun?


They never change size in reality.

Yes it does. Not the physics of moon and sun but how we see it because of change in air, temperature, atmosphe, u name it.

What about a global air refuling options so the tanker could be called everywhere and not just around KSFO?


We have this since 2.12.

Really? Why is it flagged as "disabled" on the AI menu then?

What about some birds and land animals. Especialy flying birds which could crash into planes and into engines?(...)
What about waves and water scattering that follows wind according to terrain. calm water where tall hills and cliffs near water?


What about keeping your framerate above single digits?

Well. Other similators does it without a miner drop in framerates. So why can't flightgear?


What euroria borealis?


What's that?

Look it up! I think Google could help you with that! Maybe if you dont know what it is, maybe you sould put less time in making a realistic sky in fg. Focus on something you do bether :)

But i think the biggest issue with FG deveopment is that its no standard


That's its biggest advantage. It's called 'having options'.

Why is that a neccesary option? Yes i agree to have quality settings, But ALS and Rembrandt can't combine. Why not put more time and effort in something that are combinable.

So is it even possible to have any GLSL effects in flightgear?


No, ALS and Rembrandt run on magic. The code is completely written in Enochian, and a demon needs to be invoked to make it run.
Thorsten wrote in Thu Feb 06, 2014 7:55 pm:

Ok, I was a little unclear in how i expressed myself on this one. What I mean is HDR effects. Like reflection shaders. I cant see much of that in flightgear. Why is that?
Last edited by punkepanda on Fri Feb 07, 2014 12:01 pm, edited 3 times in total.
punkepanda
 
Posts: 237
Joined: Mon Nov 04, 2013 9:11 pm
Callsign: LostFlight
Version: 2.12
OS: Arch Linux

Re: What effects are we missing?

Postby Thorsten » Fri Feb 07, 2014 11:51 am

Waste of perfectly good framerate. I've never seen any reflection out of an airplane window. Contrary to what FSX users think, water surfaces do usually not reflect objects above them, this happens only rarely under very special conditions.

Rembrandt can conceptually do it - render the environment to a texture from a second camera, then superimpose that texture to the mirror. But basically anything that smells like raytracing is much slower than faking it.
Thorsten
 
Posts: 10950
Joined: Mon Nov 02, 2009 8:33 am

Next

Return to Effects and shaders

Who is online

Users browsing this forum: No registered users and 5 guests