There are a lot of threads that discuss sorting, since it’s not really a Substrate issue but just a general deferred rendering issue you may want to continue asking elsewhere if the following information isn’t enough. But in brief, there are a few ways to deal with it.
don’t use translucent materials whenever possible.
limit their use to simple geometries that don’t have a possibility to sort incorrectly.
consider the “sort triangles” option on the mesh component.
consider enabling order independent transparency in the project setting. In my experience this seems to solve most of not all sorting problems, but will add some instructions to the already expensive translucent mats.
Hi there,
it seems that Substrate materials with a TranslucentGreyTransmittance as Blend Mode don’t work with Nanite. Is it a known issue?
(I’m trying to replicate a Frosted Glass Material over a Nanite Mesh.)
Yes, @BananableOffense is right: that is not a problem related to Substrate really. Also with ray traced translucency, you do not get GI in those reflections (or nice sky light occlusion).
As you may have noticed, ray traced reflection is deprecated and that is going to be supplanted by Lumen (which also supports ray tracing). That will be the same for ray traced translucency. We need to move forward with improved future proof tech.
In short: there will be future work to support such ray tracing scenario at some point. But it will go through the Lumen pipes to support GI and more (Substrate rough refractions, colored transmittance, etc.). That should result in better ray traced translucency.
That is not related to Substrate itself: Nanite does not support translucency as of today. I have tested translucent shader for both substrate ON and OFF and it seem to behaves the same (using the non nanite fallback mesh). It is possible I am not looking at the same thing as you though so if I missed something please do tell.
So how would I use strata/substrate if I’m authoring materials in substance painter? Would I only export masks and baked normals and then redo things in unreal?
Also is the f0 the same as the specular output for gloss/spec workflows?
Yeah there is a pretty good use case for more control over specific masking of gbuffer opacity masks. This Thread by @Sergey_Tyapkin sums it up quite nicely and has a lot of traction.
Long story short, if you want to do Star Citizen, Doom Eternal like mesh decals, you need control over specifically opacity masking for color, normal and roughness buffers.
Thanks @Laurens_t_Jong .
So in this case upgrading decal system is not in the scope of Substrate. It just has to be prioritised at some point.
Substrate is only about material representation, shading and lighting. It should be able to apply decal on itself as the current material system do however (unless there is a bug we should fix of course).
You can continue to export your baked single representation of a surface. You can continue to use the same parameterisation as before, we have a MetalnessToDiffuseAlbedoF0 conversion node.
F0 is the surface reflectivity in itself. Previously it was computed from Specular and Metallic, however that parameterisation can have the downside of showing color leaking when lerping from dielectric (metallic=0, F0 in [0, 0.08]) to conductor (metallic=1, F0 >0.08 up to 1). See this. With F0 now this artefact gone and we then enforce energy conservation between specular/diffuse according to F0.
In the end moving from specular/metallic to F0 parameterisation should be beneficial when representing a single surface with dielectric and conductor all together in a single layer without any color leaking.
If my understanding is correct, many materials can be better represented with multiple specular lobes. I don’t do much with BRDFs/BSDFs but I think it’s quite common for offline renderers to feature more than one lobe. I imagine a case where this could be useful is approximating a clearcoated surface. I think subsurface scattering may also use multiple lobes.
@Akiras@BananableOffense
Yes good question: this can be due to a few things like light polished or used/worn out material. In this case you can have a sharp lobe and a rougher lob due to damaged part of the surface for instance (concretely this is a lot more complicated but it is a good approximtion).
And example of paper discussing it is https://inria.hal.science/hal-01818666/document.
For my two-cents, after looking at the hazy materials vs the plain path-tracer, the tracer looks like it’s moved to the ‘bad’ side of the UncannyValley.
Haze is where it’s at; particularly on the gold-dragon statue and the jade-vase.
Data compatibility issues from potential outdated or unavailable plugins are more of an end user issue are they not? As of right now, if I am relying on a plugin only compatible with 4.27, and want to upgrade to 5.0, isn’t it up to me to upgrade it if the author isn’t? I’m not trying to argue the point, but I believe being able to create new BSDFs via plugins could open up an entire world of potential possibilities in engine and marketplace plugins/content. These plugins should be treated the same as plugins are now, only for their stated engine version.
Hi there! I am a CG supervisor from an animation studio. We are looking into using Unreal in future projects. One thing im concerned about is a lack of the principled bsdf, the slab bsdf is cool but it breaks compatibility with our feature and tv pipe. I havent tried assembling my own one though I shouldnt be too hard right
What do you mean? The basic version of Principled BSDF is the very thing Strata is about to replace. Unreal’s default, non strata material which has been in Unreal for years is essentially the Principled-style material you know from most other renderers. There are some differences because of the shader mode separation of rasterized type renderer, but other than that, it works pretty similarly.
@shotalot Hello,
As mentioned in the documentation, Substrate will convert all your existing materials. And we also provide material functions to show how typical materials can be achieve with the Slab (the goal is for use to use the slab only when some core work is needed).
Im just asking if there will be a Principled BSDF node setup included with strata. Some studios use more than one DCC im just looking into pipeline for my job. I know all of that already thanks I have also read the documentation.