Sebavan Posted March 16, 2016 Share Posted March 16, 2016 Hello, Sorry for the delay, but here is finally a complete documentation on how to use the new PBR Material (available in the 2.4 preview of BJS as an extension) with the new seamless HDRTexture: http://doc.babylonjs.com/overviews/Physically_Based_Rendering_Master This should help understanding all the features available and how to use them in order to create Metal, Gold, Crystal, Wood and Plastic (tutorial included). Hope you ll enjoy it. jerome, RaananW, Temechon and 6 others 9 Quote Link to comment Share on other sites More sharing options...
Vousk-prod. Posted March 16, 2016 Share Posted March 16, 2016 Congratulations!! This is real true PBR!! Very good work! Quote Link to comment Share on other sites More sharing options...
Vousk-prod. Posted March 16, 2016 Share Posted March 16, 2016 Oh really, everyting needed is implemented. And the doc is also nicely done and well detailled. Pretty damn bloody good damn good bloody job!!! Quote Link to comment Share on other sites More sharing options...
Vousk-prod. Posted March 16, 2016 Share Posted March 16, 2016 Is the delay at loading due to the PMREMGenerator ? Is the process somewhere deactivate the default AA filter ? Quote Link to comment Share on other sites More sharing options...
Sebavan Posted March 16, 2016 Author Share Posted March 16, 2016 Hi, Thank you for the messages :-) The loading delay are due to the size of the HDR file (around 4-5 Mb) and the fact we extract all the binary data in JS. We then parse all of them to convert from panoramic to cubemap, extract harmonics and in the slowest example generate the seamless cubemap. This is why we are thinking to create an offline tool able to reduce the amount of pre-processing needed. Quote Link to comment Share on other sites More sharing options...
Vousk-prod. Posted March 16, 2016 Share Posted March 16, 2016 The hdr pic you choosed is really a perfect choice for testing purpose. (hey I know, can't stop flooding, but really I love this new version of BJS's PBR) Quote Link to comment Share on other sites More sharing options...
jerome Posted March 17, 2016 Share Posted March 17, 2016 what a DUCKING feature and a DUCKING doc both best ever for this ducking good framework !!! Quote Link to comment Share on other sites More sharing options...
RichardN Posted March 17, 2016 Share Posted March 17, 2016 Awesome! Very very helpful, thank you! I wish I could like this a hundred times Temechon 1 Quote Link to comment Share on other sites More sharing options...
Dal Posted March 19, 2016 Share Posted March 19, 2016 Really nice! One thing that's not clear to me - how do we use this in a "real" environment? For example, the Sponza scene... I guess we need to render the actual 3d building mesh to a cubemap somehow in order for it to be reflected, but how? Can we add lots of different objects and lights to the scene and have them affect the PBR material? Quote Link to comment Share on other sites More sharing options...
Sebavan Posted March 19, 2016 Author Share Posted March 19, 2016 Hello, The material is compatible with light probes so you could simply use them to generate your environment cube map. Please, note by doing this, the environment will need to be rendered twice, so carefully chose the objects you pushing to your probes to prevent degrading your performances too much. You can by the way find one example in the basic documentation (reflection part): http://doc.babylonjs.com/extensions/Physically_Based_Rendering which point to this Playground: http://www.babylonjs-playground.com/#1HQPOD#2 The main drawback of this approach for me in PBR is the lost of seamless filtering as well as environment irradiance (http://doc.babylonjs.com/extensions/Physically_Based_Rendering_Master#environment-irradiance). Rendering is always a trade-off between performance and quality :-) I am currently in the process of bringing new tools in the editor to help dealing with such use cases. The idea is you could extract from your scene an hdr cubemap from a probe process it, store and reuse it later at runtime. Quote Link to comment Share on other sites More sharing options...
GameMonetize Posted March 20, 2016 Share Posted March 20, 2016 Probe can be also improved by setting probe.refreshRate = 0 to render it only once for instance Quote Link to comment Share on other sites More sharing options...
Olgo Posted March 24, 2016 Share Posted March 24, 2016 Hi, Congrats Sebavan for your PBR material, really impressive ! I have a little suggestion. In a classic PBR workflow, for insulators materials, the texture variations are preferabily specified via Microsurface Texture instead of via Reflectivity Texture. But in your PBR version, Microsurface Texture is provided by Reflectivity Texture Alpha channel, which is not convenient, since Reflectivity Textures aren't used systematically. Could it be possible to create a slot for a microsurface texture ? Quote Link to comment Share on other sites More sharing options...
Sebavan Posted March 24, 2016 Author Share Posted March 24, 2016 Hello, The idea behind it is to reduce the number of inputs to keep acceptable performances (without more IFDEF in the shader) even on shared bus devices (and not differentiating conductor/insulator). I agree it can sometimes not be convenient depending on your pipeline (nobody has the same usually :-) ). I am trying to work on the editor currently to help dealing with PMREM without having load time hit on the hdr texture. So maybe, more tooling should be done to allow this offline tool to simplify the pipeline without compromising on performances and maintenance? This way we could properly represent in the UI Insulator/Metalic even if the material itself does not change. Any thoughts ? Quote Link to comment Share on other sites More sharing options...
Sebavan Posted June 6, 2016 Author Share Posted June 6, 2016 Hello, The PBR material is now fully complete for 2.4 !!! : https://doc.babylonjs.com/overviews/Physically_Based_Rendering_Master (Updated Doc is in deployment when I am posting) Supports for color grading through .3dl LUT: http://www.babylonjs-playground.com/#B4PW0#2 And color curves have been integrated: http://www.babylonjs-playground.com/#B4PW0#3 I am no artist so feel free to create awesome Demo with it. BR, Wingnut and jerome 2 Quote Link to comment Share on other sites More sharing options...
jerome Posted June 6, 2016 Share Posted June 6, 2016 wwaaaaatttccchhhhaaaaa! Quote Link to comment Share on other sites More sharing options...
ian Posted June 6, 2016 Share Posted June 6, 2016 Ok is realy qul. I would like to know how can we achieve PBR materials and textures with Blender, 3d max, maya... It will be good to create exporter for babylon with PBR capabillity. So codeing materials and tetures.... is one way. Is now there export PBR capabillity from Blender or 3d max to babylon json file? It will be good to see how achieve this PBR capabillity with Blender or 3d max and export this to babylon file with exporters. I would like to have materails and texture inside bayblon file. I don't like to code it by hand. So possible do PBR materials/textures inside blender modeling and export this to babylon (josn file)? Is there any documentation how to achive this in Blender/3D max and export this to babylon (json file)? greetings Quote Link to comment Share on other sites More sharing options...
Sebavan Posted June 6, 2016 Author Share Posted June 6, 2016 There is no exporter yet for blender or 3ds. There is no maya exporter at all for bjs. I agree this would be a sweet addition now that the material is stable. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.