[B]I feel the need to add that this does not cover pbr stuff. Those follow a different set of rules.
This is purely for recreating metals the way they were generally done in blinn and lambert phong.[/B]
There is no right way to write a vmt file. So long as it gets the results you want do as you please.
This of course means there are a lot of ways to do the same thing.
So. Let's talk metals.
This is basically a write up of how I personally do materials for metals using fairly recent examples.
Metals in particular is a fun subject as they range from dull (such as copper) to a mirror polish (like chrome). For explanation purposes let's say that metals scale in how glossy they are.
So gloss in this context would refer to the general tightness and brightness of a highlight. This in turn also refers to how smooth and reflective the surface of a metal may be.
Let's establish the scale and then examine them in no particular order.
[B]Dull[/B]
[video=youtube;FaGp7FNvqlg]https://www.youtube.com/watch?v=FaGp7FNvqlg[/video]
Let's start with the dull metal. Not super shiny but still metal none the less.
The spacemarine is probably the more boring example as most of the work is done by the phongexponentmask. And I should damn well hope so because I had to author 402 of them for the loyal marines alone.
But tedium aside it's mostly just phong and the effect of the green channel of a phongexponentmask. Said channel tints the phong highlight by the color of the basetexture. How much it tints is dependent upon the exponentmask itself.
For future reference the tinting effect will be referred to as albedotint. In this case the blue portions have an albedotint of 241/255 where as the gold parts are a full 255.
There is also an envmapped ripped from the game itself applied to the gold portions in order to stay true to the ingame look.
Vmt is as follows.
[CODE]"VertexLitGeneric"
{
"$baseTexture" "models\spacemarine\ultramarine/sm_armour_basic_upres_torso_dif"
"$bumpmap" "models\spacemarine\ultramarine/sm_armour_basic_upres_torso_nrm"
"$halflambert" "0"
"$phongfresnelranges" "[0.3 0.5 1.5]"
"$envmap" "Models\spacemarine\Basemats\sm_gold"
"$envmaptint" "[1.2 1.2 1.2]"
"$envmapfresnel" 1
"$basealphaenvmapmask" "1"
"$lightwarptexture" "Models\spacemarine\Basemats\default_lightwarp5"
"$phongalbedotint" 1
"$phongexponenttexture" "models\spacemarine\ultramarine/sm_armour_basic_upres_torso_lp"
"$phong" "1"
"$phongboost" "25"
}[/CODE]
[B]Very glossy[/B]
[video=youtube;6NIoRlkCkKA]https://www.youtube.com/watch?v=6NIoRlkCkKA[/video]
Now let's jump straight to the crazy shit.
Here is a breakdown of phasma visually.
[IMG]http://orig06.deviantart.net/5dc7/f/2016/024/b/8/nivues_by_blueflytrap998-d9p65am.jpg[/IMG]
Hold the fuck up you say. The basetexture is white in the diffuse shot. Why is it black in the other shots.
And what the hell is up with that phong?
But first let me remind you that the color of a highly reflective material is determined by the reflection itself. Little is being scattered across the surface of the material so the 'color' of the metal underneath is effectively black.
As it just so happens we can mask the color of reflections to the basetexture. We know that much from the space marine above.
So what if I told you we can alter the basetexture without altering the albedotint?
Allow me to introduce the $color2 parameter. For whatever reason the effects of $color2 are ignored entirely by phong. Phong highlights will display the same regardless of what $color2 is set to.
How $color2 works is it alters the color of the basetexture based off a set of 3 float values. Those values being red, green, and blue respectively. Default is [1 1 1]
We're going to set them all to 0.1 so our basetexture displays 1/10th as bright as it originally did. The result is just a touch above pure black.
Setup for materials like this is certainly different than what you're probably used to. Our basetexture is going used as a mask for our reflection which will be doing nearly all the work.
Now we move on to the difficult to explain one. We're going to be using phongwarps.
Specifically this one. I'm sorry it had to come to this.
[IMG]http://orig03.deviantart.net/0e71/f/2016/028/f/9/testwarp2_by_blueflytrap998-d9ppizo.jpg[/IMG]
If I'm honest I do not fully understand how these actually work. What I do know is that the phongwarp scales from top to bottom, with the top being the tint for a highlight perpendicular to the viewer and then ramping down from there.
If it does scale in some way from left to right I haven't noticed. Assuming it doesn't the furthest right column of the phongwarp is what it appears to use.
Oh. When I said top to bottom I was lying. If only it were that simple.
It ramps from y to x. Specifically the y and x used in the materials $phongfresnelranges parameter ("[x y z]").
z doesn't do all that much aside from push in the y value a little further from the edge. You can leave it at 0 and the phongwarp will still work.
Let me vainly attempt to explain.
If our fresnel ranges were "[0 1 1]" THEN it would ramp sorta seamslessly from top to bottom.
Although you couldn't really tell since phong is also relying on it's fresnel ranges. Here's where things start to get tricky.
Since 1-0 is top to middle we have to be really careful how we set our fresnel ranges as even a small change will significantly alter our highlight.
Here's one such example. A phongwarp with identical parameters save for differing frenselranges (not the same phongwarp shown above)
[IMG]http://orig08.deviantart.net/7ee9/f/2015/317/c/c/klhrks_by_blueflytrap998-d9gm32z.jpg[/IMG]
You'll notice the y value is above 1. Once you go over 1 the phongwarp starts to 'loop' again. So if we had, say, "[0.1 2 2]" the phongwarp would pretty much ramp twice.
Phasma's ranges are set to "[0.5 4.75 5]" and thus the phongwarp 'loops' about 4 times. Each time it loops it get's shorter relative to the previous though so keep that in mind.
But we're not done yet. $phongexponent does not interact with phongwarps the same way it does with regular phong highlights. The exponent determines how much of the phongwarp displays instead of how tight the highlight is.
So the phongwarp displays the same regardless of exponent. There's just less of it visible the higher the exponent if that makes sense.
The last thing you need to know about phongwarps is that, unlike $phongtint, phongwarps do not override the effects of albedotint. They stack.
And we made our albedotint reflect our basetexture (by 249/255), which itself displays as black under the highlights. It's all coming together.
There's also a grey envmap. It works well but probably doesn't look all that good in the dark.
Envamps are not required for shiny metals (crazy I know). The alteration of phasma on the far right a short scroll up uses just phong with a lower exponent. I suppose whether you choose to include an envmap is a matter of taste.
So then when we put all this bullshit together we get phasma. If you've gotten lost at this point you have my deepest apologies. I wish there was a better way.
In the interest of full disclosure I didn't actually write this vmt. Credit for that goes to Zachariah Scott, SquiddyTreat, as well as Ageha.
The latter of which was unfortunate enough to be on the receiving end of what amounts to the unrefined draft of this post (i.e. unfiltered incoherent rambling).
[CODE]"VertexLitGeneric"
{
"$baseTexture" "models/Star_Wars/Characters/First_Order/Phasma/FO_Phasma_Diff"
"$bumpmap" "models/Star_Wars/Characters/First_Order/Phasma/FO_Phasma_Norm"
"$color2" "[0.1 0.1 0.1]"
"$detail" "models\Star_Wars\shared\detail_metal7"
"$detailscale" "15"
"$detailblendmode" "0"
$phongexponenttexture "models\Star_Wars\shared\albedo_tintdefine"
"$phongexponent" "30"
"$phongalbedotint" 1
"$phong" "1"
"$phongboost" "75"
"$phongfresnelranges" "[0.5 4.75 5]"
"$phongwarptexture" "models/Star_Wars/Characters/First_Order/Phasma/testwarp2"
"$envmap" "models/Star_Wars/shared/painted_silver.hdr"
"$basealphaenvmapmask" "1"
"$envmaptint" "[0.45 .45 .45]"
"$envmapfresnel" "1.4" //Interestingly enough this command is not a boolean. It's a float. It scales.
}[/CODE]
[B]Sort of glossy[/B]
[video=youtube;4eJcDUy9YpM]https://www.youtube.com/watch?v=4eJcDUy9YpM&feature=youtu.be[/video]
We're not done yet. Metals should very rarely be nearly black mirror reflections. (Edit: I should be more specific. For non-pbr assets avoid pure black metals.)
Thankfully a nice midpoint between glossy and what might as well be just some exponent mask can be reached.
As such an example; the elite knight is simply a less intense version of the vmt used on phasma. Although phasma was at one point using souls materials as reference early on.
Lucky you there's nothing new to explain for this one. Just different values.
Vmt for the helm in particular is as follows.
[CODE]"VertexlitGeneric"
{
"$basetexture" "models/Dark_Souls/Armors/Elite_Knight_Set/Elite_Knight_Helm_D"
"$bumpmap" "models/Dark_Souls/Armors/Elite_Knight_Set/Elite_Knight_Helm_N"
"$color2" "[0.7 0.7 0.7]"
$phongexponenttexture "models/Dark_Souls/shared/green3"
"$phongexponent" "15"
"$phongalbedotint" 1
"$phong" "1"
"$phongboost" "200"
"$phongfresnelranges" "[0.5 4.75 5]"
"$phongwarptexture" "models/Dark_Souls/shared/testwarp2"
"$envmap" "models/Star_Wars/shared/painted_silver.hdr"
"$normalmapalphaenvmapmask" "1"
"$envmaptint" "[0.125 0.124 0.115]"
"$envmapfresnel" "0.6"
}[/CODE]
So that's basically everything important I have on me at the moment in regards to glossy metal effects. This is mostly for reference purposes as I've been asked how I achieve the looks I get.
I'm sorry you had to read it.
[B]BUT WAIT! THERE'S MORE![/B]
A phongwarp isn't needed to get some nice looking metal and neither is $color2. So long as you're happy with how it looks you can do what you want.
Phongexponent doesn't have to be tight either. Sure on some chrome ramp that shit up all you want; But on something like galvanized steel you could leave it at 5 and it would still look fine.
So here's some previous things I've done that ignore what I just said almost completely.
Ornstein's current iteration uses a splash of $color2 at "[0.8 0.8 0.8]", some albedotint, and a small beige phongwarp to oh so slightly tint the highlight.
And it works well.
[T]http://orig01.deviantart.net/6e83/f/2015/336/6/7/ornstein_redux_redux_by_blueflytrap998-d9iuzgi.jpg[/T]
Bladewolf just uses phong and some weak albedotint.
[T]http://orig00.deviantart.net/b503/f/2015/036/1/0/2_by_blueflytrap998-d8gv139.jpg[/T]
The pursuer uses the traditional method of an envmap and phong because fuck it that's all it really needs. Whatever works.
[T]http://img07.deviantart.net/1534/i/2015/118/f/f/purse_by_blueflytrap998-d8rgmas.png[/T]
If you happen to be limited to just 1 material for your model and your model isn't entirely the same metal then you might be in a tight spot.
A metallic sheen is much more difficult to achieve in that circumstance. It can be done but it is far from easy. I have only 1 such example
[video=youtube;AiRA6OVV8hc]https://www.youtube.com/watch?v=AiRA6OVV8hc[/video]
If you need a detailed description of what I did to achieve this one be warned it would be even longer than this post.
Good stuff.
[QUOTE=BlueFlytrap;49630233]
[..]
[B]Dull[/B]
[..]
[CODE]
"VertexLitGeneric"
{
[..]
"$envmapfresnel" 1 //Garrysmod does not have this parameter.
[..]
}
[/CODE]
[/QUOTE]
Garry's Mod actually has $envmapfresnel. I use it to mimick actual fresnel shading on metal in general.
edit-
proof:
[video=youtube;WRannrN-M1k]https://www.youtube.com/watch?v=WRannrN-M1k[/video]
nice post.
i might wanna add mine: a lil brushed metal framework.
'problems': might only work if you got a model with seperate bare metal albedo textures and materials that got no normal maps (since source doesn't do detail normal maps afaik). it's gotta be a really low and cheap material as the base. now...
the 'brush effect' is achieved by a highres normal map. however you do it. (you might need a shader combo to scale the normal map seperate from the albedo). anyway... basicly just any form and shape of noise would do it. it does what i'd call 'supersampled normals' or 'micro details'. more 'diffusion' is achieved by just using a lowres envmap or make the normal map more noisy. it's sharp tho. and don't underestimate the value of a real lightprobe of the specific ambient of the shot you take. however you place and style it. i know it can suck to the point that it's annoying to not place well at all.
parameters: the grade of polish/roughness is most of all only controllable by envmap parameters like tint and contrast. maybe a lil bit of amount of noise amplitude in the normal map. also got some 'hdr amount' of the envmap/lightprobe. well... it's generally cheap af tho.
material
[code]
vertexlitgeneric
{
$basetexture dev\white
$bumpmap dev\noise_generic_bmpa
$envmap lightprobes\marbled_hdr
$envmaptint "[.2 .2 .2]"
$phong 1
$phongboost 32
$phongexponent 16
$phongfresnelranges "[.5 .8 1]"
}
[/code]
result
[img]http://images.akamai.steamusercontent.com/ugc/364031285140764368/04564DEA2F2FF37F4942DA2305702F15FFB7A3EB/[/img]
[QUOTE=BlueFlytrap;49630233]In the interest of full disclosure I didn't actually write this vmt. Credit for that goes to Zachariah Scott, SquiddyTreat, as well as Ageha.
The latter of which was unfortunate enough to be on the receiving end of what amounts to the unrefined draft of this post (i.e. unfiltered incoherent rambling).[/QUOTE]
as far as I know, I didn't get blasted by this sort of rambling. you just ranted about the envmapfresnel values in the VMT unless i'm being stupid and forgetting something entirely.
relatively surprised you hadn't mentioned lightwarps, although i suppose those aren't as necessary to explain and are usually used in more niche situations, i.e. stylistic lighting like in TF2.
like beef? it's irrelevant to the metal but...
lightwarp to demonstrate the light angle (the map got a bunch in the air that does the ambient phongfresnel). the envmapfrensel culls the envmap intensity based on the normal and view angle on the surface. the dark center. the outer halo intensity is controlled by the phongfresnel exp. phongwarp min max just like that. i dunno what the curve looks like tho or the distribution in relation to the light vectors is. it's over my head. that's a 'gamble' for me. the fun part. what ever cool it looks like.
[IMG]http://i.imgur.com/uAffZqO.jpg[/IMG]
[QUOTE=cynaraos;49630285]Garry's Mod actually has $envmapfresnel. I use it to mimick actual fresnel shading on metal in general.[/QUOTE]
So it does.
Wonder when that was added. Didn't work a couple years back when I attempted the darksouls phantom effect.
[QUOTE=episoder;49630819]nice post.
i might wanna add mine: a lil brushed metal framework.
'problems': might only work if you got a model with seperate bare metal albedo textures and materials that got no normal maps (since source doesn't do detail normal maps afaik). it's gotta be a really low and cheap material as the base. now...
the 'brush effect' is achieved by a highres normal map. however you do it. (you might need a shader combo to scale the normal map seperate from the albedo). anyway... basicly just any form and shape of noise would do it. it does what i'd call 'supersampled normals' or 'micro details'. more 'diffusion' is achieved by just using a lowres envmap or make the normal map more noisy. it's sharp tho. and don't underestimate the value of a real lightprobe of the specific ambient of the shot you take. however you place and style it. i know it can suck to the point that it's annoying to not place well at all.
parameters: the grade of polish/roughness is most of all only controllable by envmap parameters like tint and contrast. maybe a lil bit of amount of noise amplitude in the normal map. also got some 'hdr amount' of the envmap/lightprobe. well... it's generally cheap af tho.[/QUOTE]
I find just adding noise to the specular is enough to get something similar to that.
That way it doesn't interfere with my normalbakes.
[T]http://orig09.deviantart.net/fd11/f/2015/222/2/8/glaive_updated_by_blueflytrap998-d951fir.png[/T]
Though if you're curious you can apply what you've done to other models.
The dota2 branch of source previously supported normals as details as well as multiple details at a time. Details can also be masked per texel in a mask other than the basealpha.
While the branch doesn't exist anymore the bastardized sfm version of it's primary model shader does. Provided your map is unlit you can achieve the effect you're looking for.
Just be warned customhero isn't the most flexible shader there is.
okay... but sorry... you're not the only source smart guy. i got a stack of years messing with source myself. some things you don't need to tell me. i pull effects outta the engine myself. if i'd need it... maybe i'd do something with it. and i don't do dota stuff. but... fine. ;)
post redacted to not 'sound' like an asshole. it's always weird. nobody knows who knows what already?
[QUOTE=BlueFlytrap;49631969]So it does.
Wonder when that was added. Didn't work a couple years back when I attempted the darksouls phantom effect.
I find just adding noise to the specular is enough to get something similar to that.
That way it doesn't interfere with my normalbakes.
[/QUOTE]
You can actually do a lot of little small nifty bits and tricks just working with the specular channel on the normal, to get detail, noise and whatever else that works well even against a completely flat albedo. Though the problem with similar tricks is always how incredibly light dependant they are. Get a badly set up scene and everything evaporates. This is even more compounded with envmaps, when you're using the default environment cubemap.
A really old example would be something like this. [t]https://dl.dropboxusercontent.com/u/6252145/misc ports/specular.png[/t]
@BlueFlytrap do you have the SFM version of the elite knight somewhere? I wanted to take a good look at the materials, since seeing how you set up the phongexponent texture and envmap could help me on something I've been working on on and off. Can't find it on your workshop sadly.
[QUOTE=episoder;49632049]okay... but sorry... you're not the only source smart guy. i got a stack of years messing with source myself. some things you don't need to tell me. i pull effects outta the engine myself. if i'd need it... maybe i'd do something with it. and i don't do dota stuff. but... fine. ;)
post redacted to not 'sound' like an asshole. it's always weird. nobody knows who knows what already?[/QUOTE]
..?
My response wasn't intended to come off as either hostile or condescending.
The thinking went noise in the specular takes up significantly less texel space than doing it via normals. Of course this also means it doesn't look nearly as good up close.
It's pretty much your only option when working with lowres stuff so I thought I would suggest it as a possible alternative.
[QUOTE=wraithcat;49633816]@BlueFlytrap do you have the SFM version of the elite knight somewhere? I wanted to take a good look at the materials, since seeing how you set up the phongexponent texture and envmap could help me on something I've been working on on and off. Can't find it on your workshop sadly.[/QUOTE]
I can send you the version shown if you would like. The model itself is far from usable at the moment but it should be enough.
Good work putting your experimentation down on paper and sharing, building on a community knowledge base is what makes modding possible. I was right there doing this kind of crazy stuff until I started authoring for current gen - I don't miss feeling like you have to claw and fight to achieve any kind of attractive materials, let alone accurate material definition.
Also just a friendly reminder, metals (and all surfaces) look best in any engine if they have proper environment probes to pull lighting data from, so, mappers: don't forget to place and build those cubemaps!
made some tweaks to these and slapped them on a model I had compiled already
[t]http://puu.sh/mOQD5.jpg[/t]
Any suggestions when developing textures for PBR and converting them to Source/Blinn shaders? PBR has Metalness, Specular, and gloss maps, but I'm only able to convert Specular and Diffuse to Source properly.
Also, what has more detail: one larger texture for all parts of a model, or multiple smaller textures separated by their material type (metal, plastic, wood, etc.)?
[QUOTE=huntingrifle;49635771]Any suggestions when developing textures for PBR and converting them to Source/Blinn shaders? PBR has Metalness, Specular, and gloss maps, but I'm only able to convert Specular and Diffuse to Source properly.[/QUOTE]
Garrysmod or sfm? If sfm I might actually recommend the customhero shader for something similar to what you want.
As far as pseudo pbr goes it would give you the best result.
Just to show what it is: Left is vertexlit with no parameters, middle is Customhero, and the right is a recreation of the middle in vertexlitgeneric to the best of my ability.
[T]http://orig12.deviantart.net/7e7a/f/2016/029/6/1/grmia_by_blueflytrap998-d9ptjzc.jpg[/T]
If you're unfamiliar with customhero it is dota2's primary character model shader. It allows for a huge combination of shading mask vertexlitgeneric would certainly struggle with and then some.
It's most notable inclusion being the metallic mask which darkens the basetexture while also intensifying the highlight on a per texel level; as well as being able to serve as an envmapmask (with envmaps being affected by albedotint in this shader.)
The glossmap could simply be repurposed into an exponent mask. Customhero can also use both exponentmask as well as exponent values in the vmt at the same time so you can also fiddle with that.
Keep in mind this version of the customhero shader is absolutely rife with bugs. The middle is not actually displaying correctly.
Authoring for customhero is also quite the trial and error affair as there is significantly less freedom vmt wise. You pretty much cannot fuck up with any of your mask and your mask must be made specifically for your vmt.
And you will be making a lot of mask because it requires all of them to be present to work. Yes. All 9 of them not counting the normalmap and basetexture.
[T]http://orig05.deviantart.net/18d5/f/2015/321/d/6/yoijwinnr_by_blueflytrap998-d9h17wl.jpg[/T][T]http://orig03.deviantart.net/fdcd/f/2015/321/5/d/gmnuihbra_by_blueflytrap998-d9h26vl.jpg[/T]
[QUOTE=huntingrifle;49635771]Also, what has more detail: one larger texture for all parts of a model, or multiple smaller textures separated by their material type (metal, plastic, wood, etc.)?[/QUOTE]
If by detail you mean more freedom for each substance than multiple materials for sure. Though we both know that's not always an option.
Though if the only difference between materials is exponent and boost values than you might as well just crush them all into 1 material and use an exponent mask.
nice comparison. dunno what is better tho. the chromatic effect looks sorta good on the gold, shades got good contrast, but the extra normals are way too strong. they break and smudge and dirty all the reflections. looks like colorbands. pretty ugly imo. i guess it's a "like it or not" whatever. i don't. and pretty obvious is the vertexlit got the better reflection masking on the red inlays. a good noise pattern in that mask could make that look great too. that's that trick that's not applied yet. they are both good shaders tho. imho.
and... i just read/looked at the dota shader mask guide. found thru google (i just wanna barf what google showed me the dota2 wiki looks like tho) most of the stuff works with vertexlit too. needs a bunch of shuffles with the detail-multitexturing and messing with blendmodes but might be possible. to some extends. i've done that soundwave transformer with a bunch of detail shade blend tricks too. a wtf trick shader. sure the things missing are the metal mask and the diffuse warp mask. that possible warps look kinda interesting tho. :)
Don't get too ahead of yourself. There is a reason you almost never see customhero used.
First; let's get the most obvious problem out of the way aside from being sfm only.
Customhero cannot be used on any portion of a map that is lit by anything other than just a skylight. At all. Ever.
Even a single point light on the other end of the map, so long as even a tiny bit of it reaches a customhero model, will cause problems.
Now that the most glaring issue is out of the way let's move on to the smaller stuff.
-vertexnormals do not scale correctly
-permanent half lambert
-poor interaction with shadows
-fresnel cannot be set with numerical parameters. Has to be a 2d ramp texture. It's effects are quite interesting though. R=rim, G=fresnel color warp, B=specular
-selfillum appears to get darker relative to a light source unlike the older method of becoming more intense.
-no proper lightwarps if you're into that
-while additives work translucency doesn't appear to.
-also lacks ao support in source1
-and of course the mandatory 9 mask
It's fun to author for that much is certain. It's just extremely limited in how and [I]where[/I] you can use it.
Edit:
One thing I forgot to mention is that rimlight is constant. Not a bad thing but not really good either when you're trying to keep the scene dark (since it sort of always is).
Which becomes extremely obvious when put beside something vertexlit (such as the one on the right shown below) as on unlit maps vertexlitgeneric gives you pretty much no rimlight.
[video=youtube;H_t0PaLlKkI]https://www.youtube.com/watch?v=H_t0PaLlKkI&feature=youtu.be[/video]
yeh. damn bore i had. i puzzled a test together today. yes... the lighting is seriously broken. i tried to fux with some console parameters. srgb shaders and the radiosity thing. didn't work. most of the effects work tho. got that diffuse warp mask tested. nice but... light not working at all. this is where is stopped already. damnit
[QUOTE=huntingrifle;49635771]Any suggestions when developing textures for PBR and converting them to Source/Blinn shaders? PBR has Metalness, Specular, and gloss maps, but I'm only able to convert Specular and Diffuse to Source properly.
Also, what has more detail: one larger texture for all parts of a model, or multiple smaller textures separated by their material type (metal, plastic, wood, etc.)?[/QUOTE]
Generally speaking - source benefits visually by seperating large segments of very different materials into seperate textures (in particular when you're dealing with a mix of cloth and metal for instance)
As to PBR to Traditional materials. First it depends what PBR method is being used. Traditional specular or metalness. The albedo is the same in both usually though.
From memory - grab the AO and apply that to the albedo (since PBR albedos lack shadow information). Normal maps tend to be fine.
Now comes the difference - If you're dealing with a specular+glossmap, it's pretty simple - grab the two, combine them, throw on the AO again and tweak the values
If you're dealing with a metalness (metal map + roughness map), you have to grab the specular information from the albedo and invert the roughness map, after that, the approach is the same.
But yeah, you first need to figure out what specific PBR setup is being used. The two most common are spc+gloss and metalness in albedo+roughness map. But I can imagine an SPC+roughness map being used as well
Sorry, you need to Log In to post a reply to this thread.