Jump to content
Rastar

Plans for PBR shading?

Recommended Posts

I was wondering,

 

are there any plans for moving to physically-based rendering in the short/medium term? There are so many DCC tools moving to PBR, it's getting more difficult to get along without it... Substance Painter+Designer, Quixel DDo+its Megascan library, of course Marmoset Toolbag, 3DCoat will have PBR materials soon... and I think it's looking great as well and is making an artist's life easier. Of course, textures+shaders in linear color space and HDR would be prerequisites, but they were on the menu anyways, weren't they wink.png

 

But joking aside, really wondering if/when this will be coming to Leadwerks.

Share this post


Link to post

Frankly, I don't see the point of this feature. Image-based lighting is a very old technique I was considering before starting Leadwerks 2 but I decided against it because there isn't a noticeable benefit and it just complicates the workflow. I could show you the exact same model with image based lighting or Goroud shading, and no one would be able to tell the difference. I think what you're actually drooling over is just high-resolution normal maps and light probes ala Half-Life 2.

Share this post


Link to post

I'd very much like to see this kind if integration. Old or not the results from Quixel and Substance alone have blown my mind.

 

Those programs are now standard programs I use in my workflow to create final textures and can't speak highly enough about them. If LE supported it I don't think it would be a step back at all.

 

Would that model you proposed be compatible with these programs?

 

It's a big +1 from me.

Share this post


Link to post

..i agree with what Josh said...done tests myself (other system), difference is not really noticable at all..however, by spending some time with spherical harmonics techniques, i believe, if you are about to look for some neat feature what will increase visual quality a lot with near no cost, then Spherical harmonics should be implemented..

Share this post


Link to post

The physical behavior, predictability and consistency of PBR lighting should be reason enough not to ignore it. It has not become a rendering standard for its bling appeal.

 

Gone are the days of editing textures to suit individual lighting environments.

Share this post


Link to post

Are we talking about the same thing here? I don't mean Image-based lighting, with precomputed Spherical Harmonics parameters from an (HDR) background texture calculated using light probes. That is used for indirect lighting (and, by the way, is the method of choice for global illumination in the current CryEngine).

 

I mean changing the shading calculations to include energy conservation, microsurface structure (similar to Cook-Torrance) and real-world material properties (instead of ad-hoc specularity parameters). This simply gives more consistent shading under different lighting conditions. Have a look here

 

http://www.marmoset.co/toolbag/learn/pbr-theory

https://www.marmoset.co/toolbag/learn/pbr-practice

Share this post


Link to post

I agree that some gobal illumination lightening would bring a lot and would make a big visual difference even on normal map or specular shaders.

 

About PBR, they keep diffuse/spec/normap maps, it's just the addition of roughness and metallic reflection, how much you want a surface part to look metal or rough, i made some approximative shader in LE3 that is fast and have a good result :

http://www.leadwerks.com/werkspace/topic/10215-contribution-metal-shader-for-le3/page__hl__metal+shader

You have just to paint on the alpha of the texture to have metallic reflection or roughness.

Share this post


Link to post

@YouGroove: I'm afraid it isn't as simple as that. While you use diffuse, normal maps etc. as well for PBR shading, they are prepared differently. E.g., the diffuse map must not contain any lighting information (like baked AO etc.) but just the physical diffuse color. Compared to a traditional diffuse map, the PBR variant usually looks very bright and flat.

 

Metals are implemented differently, but in the specular PBR workflow the diffuse color of a metal is black (0,0,0), and all color information is calculated from the (RGB) specular color (while non-metals typically have a grey specularity with a value of about 5% across the board).

 

The glossiness/roughness values are characteristic for a material, so you use physically measured values for those (which also means you get realistic results if you stick to that). Then there is energy conservation, which makes sure the material doesn't reflect more light than hits it.

 

And as I wrote, you have to completely work in linear space to get good results, which e.g. requires that you convert the textures (which are usually encoded in gamma space) to linear space before shading (and then back to gamma for displaying it on a monitor). And preferably using HDR textures (which are tone-mapped back to 8bit) to work with higher precison/greater color range.

Share this post


Link to post

I would love to see this in Leadwerks, would definitely be easier for 3D artists. As mentioned above most tools are turning to PBR now and old methods of producing game art and textures etc are slowly going away.

Share this post


Link to post
I would love to see this in Leadwerks, would definitely be easier for 3D artists. As mentioned above most tools are turning to PBR now and old methods of producing game art and textures etc are slowly going away.

Yes 3D coat is also coming soon to PBR, and some guys made PBR systems, you have for example open source PBR : Lux used in Unity , somone could perhaps dig it ? Or you can Ask Josh in some next kickstarter to add PBR to the list, so he will have just to pay someone able to make the new shaders for LE3 wink.png

 

@YouGroove: I'm afraid it isn't as simple as that. While you use diffuse, normal maps etc. as well for PBR shading, they are prepared differently. E.g., the diffuse map must not contain any lighting information (like baked AO etc.) but just the physical diffuse color. Compared to a traditional diffuse map, the PBR variant usually looks very bright and flat.

In practice i use same diffuse textures with PBR, diffuse is still diffuse so a simple texture, also normal map remains normal map, like specular, these texture i re use on PBR remains totally unchanged smile.png (on the shader side i don't know if there is so much change , but i doubt standard diffuse/spec/normal to be radically different from PBR shaders).

That's roughness and metallic maps that makes the PBR system mainly, where roughness map is just something that will block less or more metallic channel ; for example with big values the metallic channel (reflection map) is beginning to be blurred and at some values there is no more reflection.

The shader i made in LE3 just simulate the same effect , what is lacking in this shader is the ability to have the environment map colored by the diffuse texture.

Share this post


Link to post

PBR seems to be the new standard...

 

http://www.allegorithmic.com/products/substance-designer

 

...just about every developer studio is using them..

relic, Funcom,Ubisoft,EA, Naughty Dog, Microsoft, 2K ...etc... etc

 

These tools and engines also... Marmoset, Modo, Fuse, 3Ds Max, Maya, Unity, Unreal ... and others..

 

Many many Indie developers also... I am currently using them in another project ..was trying to bring them into Leadwerks...didn't work too well..

 

 

Share this post


Link to post

@Scrotie: Sure, that doesn't depend on the graphics API (e.g. UE4 uses OpenGL for its OSX renderer).

Share this post


Link to post

Just to be clear, I am not wondering if Substances will be integrated into Leadwerks, "just" the PBR shading stuff.

Share this post


Link to post

Just to be clear, I am not wondering if Substances will be integrated into Leadwerks, "just" the PBR shading stuff.

 

Was just an example of how it seems to be the standard now smile.png

Share this post


Link to post

There are tons of examples I have found for PBR shaders with OpenGL (been looking for like an hour now haha). I am not sure though if anything for Leadwerks would need to be changed 'internally'. By that I mean bringing in PBR for Leadwerks may require Josh to do a lot of changes to the way Leadwerks renders things.

 

I saw an example of PBR with a deferred renderer and the guy had ton's of post effects going but this was done using DirectX.

 

 

Looks doable but I wouldn't know where to start explaining how to do it.

 

@Rastar, Substance support would be amazing. That was a question I raised with Josh when we had a video conference not that long ago smile.png

 

Bringing in PBR for Leadwerks would not only give even more AAA looking visuals but it also opens up new workflows for artists to use the newer tools available.

Share this post


Link to post

Personally I would rather see more game related features. PBR and all that graphics stuff is nice, however this community really struggles with finished projects. If anything, making it easy to make complete games is number one priority. Anything else is cool, but only if resources allow. People talk about making life easier for the designers, but majority of LE users seem to be a one man show - indie/bedroom developers. PBR will not turn LE into a triple A engine, better graphics for sure, but its like putting a body from Ferrari on a scooter. :)

Share this post


Link to post

@Olby: That is a very important argument. However, we one-man shows are probably more dependant on easy access to assets than studios. With a tool like Quixel's Ddo, even I (and I'm by no means an artist) can produce great looking assets that just work in the engine. And I would bet that with big engines all on PBR now, sites like Arteria3D and Dexsoft will go that way as well.

Share this post


Link to post

Personally I would rather see more game related features. PBR and all that graphics stuff is nice, however this community really struggles with finished projects. If anything, making it easy to make complete games is number one priority. Anything else is cool, but only if resources allow. People talk about making life easier for the designers, but majority of LE users seem to be a one man show - indie/bedroom developers. PBR will not turn LE into a triple A engine, better graphics for sure, but its like putting a body from Ferrari on a scooter. smile.png

 

Sounds like something Josh said recently... he wants people to put out more games before adding extra stuff..

 

Some things really do make it easier though ...1 man show or not if its easier to do things then the game is out sooner ...can focus more on other things like the programming parts or other parts..

 

When requested features from actual developers (that are trying to make a game or games with the engine) aren't added then its harder to do things...bottom line...

 

There are a lot of things missing that are in other tools and engines... that a lot of people think should be a given...but they aren't in the engine..

 

Not downing Josh or Leadwerks 3 ...since its still a pretty good engine.. it just takes too much time in Leadwerks to actually get a game going compared with another engine due to things missing..

 

PBR would make things easier since it seems to be the standard ..and I would be able to bring shaders I already made into Leadwerks with ease ..

As it is right now I cant even make any shaders in Leadwerks.. its not the same code I have been working with.. and there is no visual in-depth editor for shaders where no programming is involved..

Share this post


Link to post

You're right.. I guess what I was trying to say is on the list of missing features, at least for me, PBR is at the bottom. We are still missing tons of essential features that make or break a game. PBR will not stop you from finishing a project, yes it might not look AAA but I really doubt that you would have the resources to use it to its full potential anyway. Making AAA game is much more than PBR or just the visuals. LE is lacking in many of these aspects. Once you have a solid foundation many more professional developers will look into LE as a potential engine.

Share this post


Link to post

I think that people coming to Leadwerks have little to no knowledge about a game and are kind of serious and want to make something of it. I back in January didn't even know what a polygon was and now and I learning C++, I am writing my own code along with a very good friend who is teaching me.

 

I have spent countless hours and ALOT of money on courses from the likes of Digital Tutors and Pluralsight and CGCookie etc. I've learnt a huge amount over the past year and I am taking this all very seriously to start a career. Leadwerks is my number one engine for many reasons, yes it has great visuals, its so easy to use, the community is fantastic and when can you ever talk to the main man himself who is developing the software for help, advice and to throw idea's around like this.

 

I think with something like this added into Leadwerks not only will it get more heads turning but it enables people like us to get some fantastic looking artwork in the engine to make better games.

 

My project is quite a long term one and I aim to finish it in Leadwerks and with these features added it will push the visuals of my game massively, let's be honest 'gamers' don't look at a game and say "oh wow look at this code, it's so good". Gamers are looking at how nice the visuals are and how smooth it runs and if we can get PBR into the engine I think this will attract more people and get more projects going which will in turn get more content made by Leadwerks out there.

Share this post


Link to post

let's be honest 'gamers' don't look at a game and say "oh wow look at this code, it's so good". Gamers are looking at how nice the visuals are and how smooth it runs and if we can get PBR into the engine I think this will attract more people and get more projects going which will in turn get more content made by Leadwerks out there.

 

This is the classic gameplay vs visuals. Visuals catches their eye first but gameplay makes them give good reviews which ultimately will result in more sales of a game.

 

This seems like polish on a game that can be pushed down the priority list. If someone has a finished game ready to ship and it looks like it has potential and this is a missing piece I'm sure Josh would be more willing to put it in. Until then we need CSG tools yet.

Share this post


Link to post

Leadwerks is my number one engine for many reasons, yes it has great visuals, its so easy to use, the community is fantastic and when can you ever talk to the main man himself who is developing the software for help, advice and to throw idea's around like this.

I digged LE3 as most as i could and yes it's one of the most easy to use like Blitz3D (now open source).

But to become more complete engine i see some very missing points that i personnaly would need more than Occulus or PBR :

- vegetation painting tool for terrain

- water system

- dynamic sky with clouds system ready to use and adjust

- a better integrated Lua editor (auto complete and some other automations like you type "if" , it completes with "then", "end")

- a visual tool to create animation states, transition and blending (less headhaches and less coding)

- native GUI and GUI editor for Lua ( so much missing)

- auto ragdoll (bring it back , it's standard today wink.png )

I'm not writing that to ask anything ( i already asked them hundred of times in the past )

You see PBR would be at the bottom at the list laugh.png

 

PBR would be to rewrite the shaders in LE3 what could be lot of work ; and perhaps have a system to create reflection cube maps on the level (used by metallic and reflective surfaces).

I think it will come at some point because all 3D tools are doing it , even Blender now, but it could come within next two years on some kickstarter, i don't think it's a so big priority.

 

As example the last tomb raider uses almost only standard shaders , but the levels , textures and characters are detailled to the "next gen" level, so your "3D art level" will matter lot more than the "shader level " sleep.png

If you can only make things looking low poly or old gen , PBR won't be of any help.

PC_1080p_000.bmp.jpg

 

And LE3 majority users are mainly coders , they need lot more DLC packs ready to use, PBR won't help them a lot.

Share this post


Link to post

Personally I would rather see more game related features. PBR and all that graphics stuff is nice, however this community really struggles with finished projects. If anything, making it easy to make complete games is number one priority. Anything else is cool, but only if resources allow. People talk about making life easier for the designers, but majority of LE users seem to be a one man show - indie/bedroom developers. PBR will not turn LE into a triple A engine, better graphics for sure, but its like putting a body from Ferrari on a scooter. smile.png

 

I agree, and I've personally changed my mind a little about this too. It must be frustrating for Josh that the community doesn't produce more games, because LE3 is capable of it. But if you remember from the LE2 days, not much was produced except for great screenshots and tech demos. LE3's better pricing and more gameplay features will result in more games, and hopefully I'll finish one, although I'm notorious for getting projects 90% done and then just stopping unfortunately. :P

 

Anyway, I'm no expert with PBR, but from the screenshots, I don't really see what's so amazing about it. Sure, maybe it will help with the Substance Designer pipeline, but I'm not quite sure what Substance Designer even adds to LE3. The texture and material editors in my opinion are fine.

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...