PBR: Principles, Practice, and Prepwork

Materials, textures, lighting, postfx
  • 1
  • 4
  • 5
  • 6
  • 7
  • 8
  • 17
165 posts Page 6 of 17
Azaezel
DEVGRU
Posts: 496
Joined: Tue Feb 03, 2015 9:50 pm
 
by Azaezel » Tue May 05, 2015 1:47 am
With RT3 accessible, re-ordered the blending operations for lightmapping/ibl to operate closer to ambient lighting, as is the intent for that kind of thing. (May or may not mean we can jostle SSS loose eventually to put that back...)

Dynamiccubemaps now gen mips, which means those are usable with roughness maps, if inadvisable, given, again that's essentailly 6 screen renderings per object, so we'll likely be wanting to loop that into the envVolume system.
Azaezel
DEVGRU
Posts: 496
Joined: Tue Feb 03, 2015 9:50 pm
 
by Azaezel » Wed May 20, 2015 2:07 am
Right, so bug in the pipeline: https://forum.allegorithmic.com/index.p ... 7#msg23387 that it would seem extends across the board for pngs as well.

Not sure what all folks preferences would be there for the defaults for the combined map, so by all means, pipe on up. I will say as it stands, the opengl end of things does go corrupt trying to read .dds in the default format that spits on out. Repo now contains more samples, including a higher poly sphere, a converted .sbsar and readable-by-engine-formats.

Current config and results:
http://i.imgur.com/pcdLhGW.png
http://i.imgur.com/AWFSvwN.jpg
Azaezel
DEVGRU
Posts: 496
Joined: Tue Feb 03, 2015 9:50 pm
 
by Azaezel » Wed May 20, 2015 8:52 am
OK, haven't hunted down the dds thing opengl side, but for pngs, artists now have a shiny "flip RB" button.

so if you're seeing: http://i.imgur.com/ffZpMTN.jpg
hit http://i.imgur.com/71Kjt1B.jpg
Azaezel
DEVGRU
Posts: 496
Joined: Tue Feb 03, 2015 9:50 pm
 
by Azaezel » Thu May 21, 2015 7:39 am
OK, so after having the head artist examine the output with better tools, it would seem that the opengl end of things is due to substance outputting data to .dds without mips. DX side can handle that (as well as the filp) OpenGL at a minimum seems to contain a flaw with that particular cornercase: https://www.youtube.com/watch?v=AnHShXXvZA0 (Do note it applies as much to normal, and albedo as well there.)
Azaezel
DEVGRU
Posts: 496
Joined: Tue Feb 03, 2015 9:50 pm
 
by Azaezel » Tue Jun 23, 2015 9:03 am
Been remiss in updating folks on progress here, since things ramped up a bit on the gamedev side for a bit there, so:

A couple of folks now have asked about subsurface scattering. After quite a bit of research, that doesn't seem to be a PBR concept. Instead, most advice is to simply tint the albedo/diffuse. That being said, did go ahead and allow that feature to tint reflections specifically so there's a separate effect there for folks to play with.

Speaking of effects, been promising to throw over that per-object instance damage fork as a proper feature-set for a while now, and since the one up didn't account for normals, and needed to convert it to handle smoothness/metalness anyway, went ahead and threw that in (and tacked on a mindamage that can be used for either previewing, or saved out for variations on a theme.
http://imgur.com/i4EyBrt,TI8fvR3,LQt2bdo
Uses a simple lerp for smooth transitions.

On the experimental-tech front: https://github.com/Azaezel/Torque3D/tre ... robeLights explores the feasibility of using the cubemap cookie code already present in pointlights (with a few tweaks, like jury rigging a variation of it specifically for probes, running it through the cook-torrence method, and pointing those at dynamiccubemaps) in order to derive reflections in a projective manner, which should better handle things like terrain, objects rendering reflections of themselves into the sides facing away from the center point of the projection like we get with envVolumes, and the general need to have the origin-point for those enclosed within volumes to detect which singular gets applied.
Observed flaws: 1) Should derive that from a lower level class to cut out the overhead. 2) Should create a 'cage' for it, so that the 'camera' locations are at the edges to prevent players passing through the center an causing clipped projections of themselves in projected reflections. 3) While there is code to blend general level or envVolume environment maps into the lightmap buffer (we weren't using the lightbuffer.a channel for anything, so we embed directional attenuation there and pass that along for blending), need to do a better job there of accounting for distance however.

Finally, ran the codebase through https://vld.codeplex.com/ and knocked out a few leaks, including one more with the compositetexture implementation.
koros
Posts: 46
Joined: Thu Apr 09, 2015 2:54 am
by koros » Tue Aug 18, 2015 7:41 am
Any new pbr updates?

Still playing with a circa 6.21.15 pbr download. Been a busy summer.
See you've merged dev into pbr looks like it's time for me to update.
Will report glitches as I see em.

Trying to locate and wrap my head around the changes and pbr in general.

Thanks for the Visual Leak Detector link.
Azaezel
DEVGRU
Posts: 496
Joined: Tue Feb 03, 2015 9:50 pm
 
by Azaezel » Tue Aug 18, 2015 9:41 am
Thanks for the reminder I was falling behind there a bit on roll-in. As far as additional progress, been mostly all-in on http://forums.torque3d.org/viewtopic.php?f=15&t=319. After all, I'm one of the folks that whinges about stability, so could hardly stand back when they wanted to *focus* on that. Did manage to slip in a fix for A/O map/channel handling though, so that's more light-angle reactive.

That being said, still need to tinker a bit more with:

https://github.com/Azaezel/Torque3D/tre ... robeLights a bit prior to roll-in in terms of sorting the attenuation based on angle blend out a bit better, and the cubemap side-points for additional scene-aware reflectivity, as well as maybe take a stab at rewriting LPV from scratch (maybe even drop the propagation step entirely in the process since https://github.com/Azaezel/Torque3D/blo ... sl#L71-L97 is doing a naive 'raycast' already. And also need to sort the wetness shader from James Stanley https://github.com/Azaezel/Torque3D/tre ... teness_bbq on out for the angles.

Also going to want to take https://github.com/Azaezel/Torque3D/blo ... pp#L67-L68 and methodize it so down the line if we move to node-based that'll be less disrupted, since that's something I ended up using in a lot of spots for clarity of reading through the output.

And take a page from MangoFusion/JamesU
https://github.com/jamesu/Torque3D/blob ... p#L72-L111 since he offered to share that to further simplify things on the generated hlsl/glsl front.

Do note the last two are cleanups that'll take folks over the various shadergen alterations, so hey, if you want a structured review method before we move on from this release to the next and maybe try and slip the deferred end in at least, by all means feel free to take a stab at either of those and toss the findings back.
koros
Posts: 46
Joined: Thu Apr 09, 2015 2:54 am
by koros » Thu Aug 20, 2015 12:08 am
I'm all for a "boring" stability release though :)

Downloading your PBR branch now.

I'll bang on it to the best of my abilities and report.
Chelaru
Posts: 223
Joined: Wed Jul 01, 2015 10:33 am
by Chelaru » Thu Aug 20, 2015 2:01 pm
koros can we see some images using pbr?
koros
Posts: 46
Joined: Thu Apr 09, 2015 2:54 am
by koros » Thu Aug 20, 2015 2:57 pm
Nothing special from me right now. Azaezel is the point man on this :D

Azaezel has the dynamic cubemaps for reflections working well in OpenGL, 99% no longer freezing, at least for me.
Roughness/Metalness seems to have the basics in place. Before it's fully in place there will be workflow changes.

You can download his branch, the zip download, and try it. Works out of the box for me on Win 8.1.
https://github.com/Azaezel/Torque3D/tree/PBR


Will post some pics, just want to play around a bit, get up to speed on pbr in general and how we are doing it.
I also need to stop being lazy and fire up VMware+Linux and test OpenGL there.

:D
  • 1
  • 4
  • 5
  • 6
  • 7
  • 8
  • 17
165 posts Page 6 of 17

Who is online

Users browsing this forum: No registered users and 2 guests