I like to challenge that, as far as I know only pure metals have 100% metalness and do not have a diffuse contribution. Pure gold, silver, chrome, mirror, etc. But I think steel, titanium, etc. are actually have some percent not metal and actually do receive some diffuse lighting which in practice is most of the objects you will be making in a video game. The pure metals are easy it's everything else in between that's tricky. Rust is an interesting material as well because pure rust appears to be not metal, but something that is just starting to rust still has metalic properties. I'm happy to be proven wrong on this it would be so much easier to just author a black and white metalness map with an on off switch rather than having to find the diffuse component for all the non pure metals.
EQ do you have some photos of different types of metals shot with a fancy polarized filter would be great to see the diffuse or lack there of component of brushed still, iron, etc.
I like to challenge that, as far as I know only pure metals have 100% metalness and do not have a diffuse contribution. Pure gold, silver, chrome, mirror, etc. But I think steel, titanium, etc. are actually have some percent not metal and actually do receive some diffuse lighting which in practice is most of the objects you will be making in a video game. The pure metals are easy it's everything else in between that's tricky. Rust is an interesting material as well because pure rust appears to be not metal, but something that is just starting to rust still has metalic properties. I'm happy to be proven wrong on this it would be so much easier to just author a black and white metalness map with an on off switch rather than having to find the diffuse component for all the non pure metals.
EQ do you have some photos of different types of metals shot with a fancy polarized filter would be great to see the diffuse or lack there of component of brushed still, iron, etc.
Right, so basically you have some very specific materials that are partial metals (maybe some alloys and faux-metal paints) and may not fall into the 0 or 1 of a metalness map, but in those cases you can use a grey metalness value. Materials like rust or metals with heavy buildup of other other materials/debris can usually be thought of as not metallic, as they fall into the narrow range of reflectivity that non-metals occupy.
My best resourced for scanned materials is the Quixel Megascan content, some of which ships with TB2, check the data/mat/texture directory. The new dDo ships with a bunch of Megascans content too, and I put together a chart in my PBR tutorial here:
So this chart is sorted by reflecivity, and rust is nowhere near metallic, it can safely be represented by a 0 value in the metalness map.
Pretty much anything that isn't a pure metal should have a 0 value in the metalness map, and only a very, very small percentage of materials really fall outside the 0 or 1 range. So again, if you don't want the diffuse to be darkened all the way, you can simply use a grey metalness value, but this gets really sketchy as far as being physically accurate at that point. The basic concept with the metalness system is that artists shouldn't be eyeballing the reflectivity, as it often ends up with totally incorrect values that fall apart under different lighting conditions,
To get further variation, the gloss map is really what sets materials apart, with energy conservation the tighter the gloss is, the brighter it is, and the blurrier the gloss/more rough the surface is, the dimmer and more spread out it is. So you can indirectly control reflectivity via the gloss map. Which is another reason why you can basically drop the spec map from the equation.
Great chart, am I to assume that for something like gold as an example I need to make the albedo the R value, invert the A and make that the metalness, and use M for roughness?
Great chart, am I to assume that for something like gold as an example I need to make the albedo the R value, invert the A and make that the metalness, and use M for roughness?
Yep, metalness would be 1.0/white, albedo would be R(reflectivity) and gloss/roughness would be M(microsurface) though that will vary depending on surface conditions.
Hey Joe, feel free to check my math on this, but to my earlier point even in that quixel chart most materials are not black or white for metalness, but a grey value meaning they receive some part of the diffuse lighting. And that painted metal example is interesting because it has a lot of colour in the spec, maybe it's mislabeled and is not paint on metal but stain on metal rather. Rock is interesting too since it is mostly metal which I guess makes sense because that's where we get metal from, unless I'm supposed to run different math on the metal or not metal surfaces from the quixel chart to convert them to metalness values.
I've been doing some more assets to get used to PBR. Here's something I did the other day and posted earlier on the WAYWO thread.
I bought Unreal Engine 4 and I'll use that for full scenes, but I will still use TB2 to check all my assets before bringing them there and also for the smaller assets like this one.
Hey Joe, feel free to check my math on this, but to my earlier point even in that quixel chart most materials are not black or white for metalness, but a grey value meaning they receive some part of the diffuse lighting. And that painted metal example is interesting because it has a lot of colour in the spec, maybe it's mislabeled and is not paint on metal but stain on metal rather. Rock is interesting too since it is mostly metal which I guess makes sense because that's where we get metal from, unless I'm supposed to run different math on the metal or not metal surfaces from the quixel chart to convert them to metalness values.
I'll try to write a bit more on this with some examples etc, but you can't pull any of the values from that chart and use them as metalness. Again, metalness is for the vast majority of materials either 0 or 1, for gold and brushed metal it would be 1, for the other 3 it would be 0. It looks like you're taking the diffuse value and trying to use that as metalness which just doesn't work. If there happened to be some raw, pure metal visibly sticking out of a rock formation, then the pixels that were made of metal in the texture should be set to 1. The metal paint is simply paint on metal as far as I am aware, but I didn't take the scan so I don't know exactly where it came from/what it is.
It is interesting how much specular color ends up in Quixel's scan data, and I'm not exactly sure what the reason for this is. It may be an artifact of their photography based scan equipment, or it may be accurate, but every engineer that I talk to that understands this stuff tells me that virtually every material that is not a raw metal will reflect a neutral (not colored) highlight. More on that here: http://www.marmoset.co/toolbag/learn/pbr-theory
http://www.marmoset.co/toolbag/learn/pbr-practice if you haven't read the full tutorial yet I really suggest you do. There is a section on the difference between the standard specular map vs metalness map workflow, including art content for the same asset that shows you can get essentially the same results with either. Even where I've used colored spec (the red plastic) the results are virtually indistinguishable.
Full color spec maps do offer more control over reflectance variation(value and color) than metalness maps, so if you need that sort of control, you should just use spec maps and not metalness maps. I think you'll drive yourself nuts trying to force the metalness workflow to work like the specular map workflow. In TB2 its simply a matter of changing the reflectance model, in EU4 you would have to do some custom shader work as it does not support spec maps out of the box (which shows how strongly they feel about this). In the past, much of the reason for using color in specular maps had little do with how materials reflect light, and more to do with correcting artifacts due to gamma space problems.
i'd be interested to know the reasoning as well behind the colored specular in quixel's scans. everyone i've spoken to as well has said that only raw metals will have colored specular. it makes for authoring specular maps quite fast and easy
Thanks Joe, I've read all the stuff on the marmoset site before I posted. I'm starting to think the spec colour/intensity map approach to pbr is the more intuitive way to go and gives you control when you want it for AD feedback, but as you said UE4 doesn't support that workflow by default.
The problem I face with metalness on/off values is that 100% metalness means no diffuse light contribution only reflections which makes surfaces appear as if shadows are not received. This is all fine and would make my life easier except I'm looking at a metal object right now and I can see shadows on it which means it has some diffuse light contribution which also means it can't be made 100% metal if I want it to look realistic, unless I'm misreading this object.
Diffuse and specular reflections both are just light photons being reflected from a surface to your eye. Specular reflections and diffuse can both receive shadows in the same way.
The basic concept with the metalness system is that artists shouldn't be eyeballing the reflectivity, as it often ends up with totally incorrect values that fall apart under different lighting conditions,
I don't get whats the hype around metalness workflow.
I find it is more restrictive when dealing with dielectric materials.
As I figured it out when metalness is set to 0 it works absolutely the same as old specular/gloss model with fixed low reflectance value.
So to prevent artist eyeballing reflectance they've just hardcoded some common value which looks ok for most materials. Am I right?
Those are both reflection and shadows. You can see the reflections inside the shadows better because it's darker. Most of the dark stuff around that area is just shadow.
@ JamesTKirk - yes when you use metalness workflow it set every non metal to a standardized reflectance that you have no control over. The only nice things about the metalness workflow is it is faster and easier to use. You do lose quite a bit of control though. I find it especially frustrating with cloth, because I find the set reflectance to high.
@ Malcom - I think the big problem you are having is you are trying to use metalness to define reflectance and that is not what it does. It simply say is this a metal or isn't it. There isn't many cases where there is an in between. Also as I stated above you don't have any control over reflectance of non metals. You really should be using the reflectance workflow for the kind of control you are looking for.
Also AO should occlude reflections in those areas, but I think you are correct marmoset doesn't seem to be occluding reflection in shadow areas as much as it should. This however has nothing to do with metal having no diffuse.
Hello, I've been searching on the forum for a bit, but without success. I'm wondering if it's possible to import a camera in Marmoset Toolbag from another 3D package. Or at least a way to manually put values in Marmoset to match an existing camera in another package.
So, I've been playing around with Toolbag 2 and enjoying it quite a bit, however I can't seem to shake this issue I'm having with shadows. I'm getting a lot of strange hard-edge artifacts (see image). These artifacts shift position on the model based on where the light is positioned in the scene, but never disappear entirely. They also hang around even as the shadow is blurred (either in the light properties or in the skin shader).
Note the large, dark, hard-edged patches that appear when shadows are turned on, and don't blur properly as the shadows are blurred. For whatever reason, the shadow up near the neck seems to show the correct behavior.
I've tried many different mesh export options, formats, and mesh sizes out of Max including running the edit normals and reset xform modifiers with no luck. I have noticed that the more polys an asset has, the less pronounced the effect is (but that isn't really a solution for lower poly assets). It also shows up with and without a normal map (normal map removed from the screenshot for clarity). I've also tried every option I could find in marmoset, such as shadow resolution, contact refinement, etc.
Thanks Joe, I've read all the stuff on the marmoset site before I posted. I'm starting to think the spec colour/intensity map approach to pbr is the more intuitive way to go and gives you control when you want it for AD feedback, but as you said UE4 doesn't support that workflow by default.
The problem I face with metalness on/off values is that 100% metalness means no diffuse light contribution only reflections which makes surfaces appear as if shadows are not received. This is all fine and would make my life easier except I'm looking at a metal object right now and I can see shadows on it which means it has some diffuse light contribution which also means it can't be made 100% metal if I want it to look realistic, unless I'm misreading this object.
The short answer is: both. The long answer to the question, and how it relates to TB2 (and most current generation game engines with similar rendering features) is quite a bit more complicated. Ill start by explaining a bit about how the renderer works. TB2 uses image based lighting for ambient diffuse and specular terms. Neither of these cast shadows or occlusion, its simply too expensive for a realtime renderer to do. With offline renderers, you basically take every pixel in your HDR panorama image and use that as a point light source, in a game engine, a cubemap with 512x512 per face would mean about 1.5 million unique point light sources, it just isnt really feasible to do that sort of thing in a realtime engine, not with today's hardware at least. So in practice, to get shadows, you need direct/dynamic light sources. Now, to clarify a few more things:
Objects with zero diffuse can receive shadows, its simply the specular highlight that is shadowed. If the spec hotspot is not hitting your model, there will be nothing to shadow. This is the same as in reality, rotate your soda can so it is no longer receiving direct light and your clear shadow will go away as well.
Local reflections help to fill the gap by providing inter-object local reflection, however this is a screen space technique which has its limitations. On the back of the tab here you can see the limitations quite clearly, as the renderer does not have data for that, so it ends up reflecting the front of the tab instead.
Ambient occlusion (both baked and screen space) only occludes ambient diffuse light from the diffuse contribution of the IBL. It doesnt occlude ambient specular, or diffuse/specular from direct light sources. This is a more physically sound method of using AO, multiplying AO on the spec pass really doesnt make any sense.
Specular occlusion on the other hand is something different entirely, and if you have a specular occlusion map, you can load it into the cavity slot (and turn diffuse cavity to 0). However, SSR generally provides better results, as reflections arent occluded so much as the surface reflects something else entirely.
So here we can see how those various inputs function on non-metallic and metallic objects respectively. Personally I prefer SSR over reflection occlusion as reflection occlusion simply darkens things, which isnt what happens in reality.
Here, its clear that reflections are shadowed, but again, only the specular reflection from dynamic light sources. As the object/view is rotated and the hot spot is no longer over the shadow casting element, you see no shadows.
A bit of observational science shows exactly the same thing. The lighting and position of the object here does not change, only the cameras position. As a bonus, the effects of Fresnel are shown in full effect here as well. I think a lot of confusion related to this stuff comes from the fact that we want something to render how we think or expect it to based on previous experience with other renderers, more so than wanting it to behave in an accurate manner. I know when I first started using TB2 I had the same concerns, but every time I try to research and explain to our engineers that its somehow wrong, I end up proving the inverse. There is certainly room for improvement here, but I dont think it will come from changing how the shaders behave or how we go about creating the art content, better quality will be achieved with more sophisticated rendering, specifically realtime reflections (not screen-space based) and radiosity. Were not there yet but I think long term that's where Marmoset and the rest of the industry will go when the hardware is good enough to do it. PS: Jeff will flip his shit if you guys ask for a shadow color setting.
Not sure if this is a bug or not, but I noticed if you capture an image with a transparent background and SSR on, the reflections will be transparent.
Yes, this is a known issue, we’ve got a bug report on it just haven’t had time to fix it. A quick work around you can do is render out one shot with ssr off to grab the alpha.
here is a sample turntable scene. https://dl.dropboxusercontent.com/u/13288045/turntable.tbscene just to clarify, you can have any custom rotation to the sky but under the animation tab the sky needs to be set to 0 since all you need for the turntable is the scene rotation/turntable (sky wont move when you just use scene turntable)
That is what is happening to me. For example, on MM file(thanks!) when I export still images sky rotation change from 140 to 239/240, more or less. Same that happened to me at my file. I'm just using default settings, with 2.03. Thanks again.
Hey guys, we thought that this was fixed but it looks like its still an issue. I’ve got a bug report filed for it, I think it only affects the scene rotation turntable type. Thanks for the info.
Is it possible to invert the viewport zoom with the mouse wheel? It's the opposite of what I'm used to and when I change back and forth between Toolbag and my 3D applications I keep confusing myself.
I've been having this really annoying problem. I can't figure out why these artefacts are appearing in certain areas of my mesh, and was wondering if anyone could help? I have highlighted the problem area in red. The mesh is using a simple default material, with no normal map, and looks fine inside Maya's view port. Any thoughts would be greatly appreciated.
Interesting, a few things to try: If using FBX, try obj. If using OBJ, try FBX. Make sure mesh normals are being exported. Try to toggle the tangent space option to Maya and see if that fixes it. If none of this helps, please upload the scene and your obj/fbx file and I will have a look at it, thanks.
I'm getting some bad transparency artifacts when rendering out turntables would really like some idea as to what's happening I believe it has to do with the local reflections because rendering with local reflections off gives me no problems I would like to see this fixed as those reflections are very pretty
This is a known issue, the SSR gets baked into the alpha output. You can try rendering another set with SSR off and then replacing the alpha channel, perhaps with an action in photoshop if you need to do it over many frames. Sorry I don’t have a better solution for this problem.
starting to get pretty annoyed with some of the problems I'm running into my render outputs lighting doesn't match that of my viewport any idea as to why this is happening?
Same as above it looks like, it appears this problem was fixed but not with the scene turntable rotation type. Please let me know if you are having this problem
I would be nice import some cameras with fbx, I don't have enough control with Marmo ones. I'm trying to rotate or transform cameras with control numeric at transform tab but it doesn't work.
Hello, I've been searching on the forum for a bit, but without success. I'm wondering if it's possible to import a camera in Marmoset Toolbag from another 3D package. Or at least a way to manually put values in Marmoset to match an existing camera in another package. Thanks!
This is not currently supported but something we will likely add in the future.
I noticed you guys didn't put in this shortcut key on your .pdf manual, doc or i missed it. Cntl + shift + p, i stumbled upon it trying to play the Turn Table and say t was the option for what i wanted. I get a weird shadowing with local reflections idk if that was mentioned but it looks like a sss/noise map of some kind. (idk that is what it looks like to me and i see almighty_gir might be talking about the same thing, not sure.) Really just wanted to mention that shortcut if anyone cared to know there you go.
There are some limitation with SSR, because its a screenspace effect it only has access to certain data (it can’t “see” underneath objects that aren’t visible on screen for instance) and for performance reasons it gets blurred and dithered which makes it appear noisey. It should look better when you export rendered images though, you can export very large images and resize them to improve the look even further.
I don't get whats the hype around metalness workflow. I find it is more restrictive when dealing with dielectric materials. As I figured it out when metalness is set to 0 it works absolutely the same as old specular/gloss model with fixed low reflectance value. So to prevent artist eyeballing reflectance they've just hardcoded some common value which looks ok for most materials. Am I right?
Yeah this is basically it. If you study material types, you’ll learn that most non-metals can easily be represented with a fixed value of about 0.04. Non-metals actually vary much more in the roughness/glossiness than they do with reflectance, and energy conservation in the roughness/gloss means you can get a decent amount of reflectance variation with the gloss map alone (tighter highlights appear brighter, while wider highlights are more spread out and dim). Metalness maps are an alternative way to pack the content, and also a way to simplify the process and prevent artists from setting a reflectance value of 0.5 for paint or some other non-metallic material. Its more efficient in terms of memory use as you can pack a metalness, gloss, and ao/cavity map all into the same 24 bit image that you would need just for a full color spec map. Full color spec maps give you finer control, but in real use the difference isn’t as extreme as you would think, again unless you’re using values that just don’t make any sense. If you can afford the memory cost, and need the extra control, full color spec maps are a better way to go.
So, I've been playing around with Toolbag 2 and enjoying it quite a bit, however I can't seem to shake this issue I'm having with shadows. I'm getting a lot of strange hard-edge artifacts (see image). These artifacts shift position on the model based on where the light is positioned in the scene, but never disappear entirely. They also hang around even as the shadow is blurred (either in the light properties or in the skin shader). Note the large, dark, hard-edged patches that appear when shadows are turned on, and don't blur properly as the shadows are blurred. For whatever reason, the shadow up near the neck seems to show the correct behavior. I've tried many different mesh export options, formats, and mesh sizes out of Max including running the edit normals and reset xform modifiers with no luck. I have noticed that the more polys an asset has, the less pronounced the effect is (but that isn't really a solution for lower poly assets). It also shows up with and without a normal map (normal map removed from the screenshot for clarity). I've also tried every option I could find in marmoset, such as shadow resolution, contact refinement, etc. Any help here would be greatly appreciated.
Unfortunately this is a technical limitation of realtime shadow mapping techniques. When dealing with low poly meshes like this, the shadowing algorithm has choice but to match the shape of the low poly mesh. If your mesh was denser the shadows would work a little better, you can try the PNtriangles tessellation option and see if that helps improve results. Try to match the scale to this object as well and see if that helps: https://dl.dropboxusercontent.com/u/499159/scalecube.obj
Unfortunately this is a technical limitation of realtime shadow mapping techniques. When dealing with low poly meshes like this, the shadowing algorithm has choice but to match the shape of the low poly mesh. If your mesh was denser the shadows would work a little better, you can try the PNtriangles tessellation option and see if that helps improve results. Try to match the scale to this object as well and see if that helps: https://dl.dropboxusercontent.com/u/499159/scalecube.obj
Thanks for the quick reply, Joe.
What you're saying makes sense about the limitations of shadowing techniques.
I wonder, though, if there's something more that could be done to compensate for this? Loading up the same mesh in Toolbag 1, the shadows don't display nearly so many artifacts, and the shadows also look great in Unity.
Here's another shot with the mesh scaled to match the .obj you linked.
What you're saying makes sense about the limitations of shadowing techniques.
I wonder, though, if there's something more that could be done to compensate for this? Loading up the same mesh in Toolbag 1, the shadows don't display nearly so many artifacts, and the shadows also look great in Unity.
Here's another shot with the mesh scaled to match the .obj you linked.
Hey, would it be possible for you to upload the scene file and also the OBJ so we can take a closer look at this? Thanks
Really like Toolbags shaders, more than UE4 for example. What I'm only missing here are some more robust camera-effects! We need lens-dirt/dust flares(from reflections too), chromatic aberration etc all that good stuff! I dont want to fake them in PS Any plans on adding more features in post processing? :>
Thank you for the information addressing my question.
I agree with kom, i think toolbag one had that option if you saved over the obj that is currently being displayed it autoloaded i just now notice this doesn't happen, nice mention kom.
Any information regarding the tone mapping reinhart option, as i have no clue what this is nor did i find anything anywhere about it.
Thanks again.
edit i haven't checked the pdf though.:poly136:
Linear tonemapping: Linear multiply - this mode will simply multiply the final image colors based on their brightness are. Color components that are too bright (above 1.0 or 255) will be clipped. This can result in burnt out spots near bright light sources.
Reinhard tonemapping: this mode is a blend between exponential-style color mapping and linear mapping. (exponential tonemapping: this mode will saturate the colors based on their brightness. This can be useful to prevent burn-outs in very bright areas {for example around light sources etc}. This mode will not clip bright colors, but will instead saturate them.)
Joe, thanks for the breakdown, I think most of my problem is actually coming from a bug we have in our game right now, things are looking bad if you make them 100% metal. I'm getting the correct results in toolbag.
Thanks Joe, your comments and answers are always helpful. I found another issue when I try to do some posteffects. I click on dof or bloom then appears these big block square shadows.:poly141:
Really like Toolbags shaders, more than UE4 for example. What I'm only missing here are some more robust camera-effects! We need lens-dirt/dust flares(from reflections too), chromatic aberration etc all that good stuff! I dont want to fake them in PS Any plans on adding more features in post processing? :>
Yeah, we plan to improve the post effects and add some more features. Not sure when though.
Thank you for the information addressing my question. I agree with kom, i think toolbag one had that option if you saved over the obj that is currently being displayed it autoloaded i just now notice this doesn't happen, nice mention kom. Any information regarding the tone mapping reinhart option, as i have no clue what this is nor did i find anything anywhere about it. Thanks again. edit i haven't checked the pdf though.
Joopsons link below sums it up well. Its an alternative tone mapping method to keep from blowing the highlights basically.
Joe, thanks for the breakdown, I think most of my problem is actually coming from a bug we have in our game right now, things are looking bad if you make them 100% metal. I'm getting the correct results in toolbag.
Thanks Joe, your comments and answers are always helpful. I found another issue when I try to do some posteffects. I click on dof or bloom then appears these big block square shadows.
Interesting, could you please tell me what hardware/gpu/os/etc youre using? Also if you can get me a copy of this scene to see if I can reproduce the issue that would be great too.
I have to ask cause i am that dumb, if i go over 1 in the lighting that means my textures are too dark? Cause i was really trying to stay at 1 for my most recent render and i couldn't i had to raise the lights to 3 or more so please help a beginner out who is new to lighting.
Sorry i had a bad education so i am pretty much dumb when it comes to a lot of this stuff and can't pay to learn so i've been winging it without any help for 10 years. lol (brooklyn, N.Y. education at it's best.)
I rather be honest then lie, sorry to be so honest it might come off weird i guess...
Anyway, i really feared going into the 2nd digit from 1 of the lighting in marmoset cause i thought that was a bad move but said screw it "I can't get what i want," from the lights I have currently. I want to know should i stay at 3 lights in total and not above the 1 setting factor to render or light a scene.
I am not smart as you all... I blame my up bringing but at least i can say that... I love marmoset if that makes any consolidation.
hey guys... im in trouble/
I have GeForce 8800GT with Direct3d 10.
But when running Marmo 2 - it says that it needs direct3d 11 dll files. So it needs direct11.0. Any chance starting prog on my videocard?
**In sys req i saw GeForce 8000 and up..
I have to ask cause i am that dumb, if i go over 1 in the lighting that means my textures are too dark? Cause i was really trying to stay at 1 for my most recent render and i couldn't i had to raise the lights to 3 or more so please help a beginner out who is new to lighting.
Sorry i had a bad education so i am pretty much dumb when it comes to a lot of this stuff and can't pay to learn so i've been winging it without any help for 10 years. lol (brooklyn, N.Y. education at it's best.)
I rather be honest then lie, sorry to be so honest it might come off weird i guess...
Anyway, i really feared going into the 2nd digit from 1 of the lighting in marmoset cause i thought that was a bad move but said screw it "I can't get what i want," from the lights I have currently. I want to know should i stay at 3 lights in total and not above the 1 setting factor to render or light a scene.
I am not smart as you all... I blame my up bringing but at least i can say that... I love marmoset if that makes any consolidation.
I am not aware of any reason why you would want to limit light intensity to 1 or lower. Light values are HDR and can certainly be above 1, for instance when you use the sky light picker tool it pulls the light color and intensity from the hdr panorama, and often will pull lights in with a value of 8 or so.
Also, light intensity for point and spot lights depends on distance from subject to light, so there really is no rule you can apply here for intensity.
hey guys... im in trouble/
I have GeForce 8800GT with Direct3d 10.
But when running Marmo 2 - it says that it needs direct3d 11 dll files. So it needs direct11.0. Any chance starting prog on my videocard?
**In sys req i saw GeForce 8000 and up..
Toolbag 2 requires a DX10 or higher card, so your 8800 should be good. Please update your video card drivers to make sure you have the latest.
Are you able to launch the problem or is the error preventing it from opening?
Certain DX11 features like tessellation, will not work with DX10 cards.
Thanks okay because i read somewhere on the forums someone said that anything above 1 = 200% of the lighting factor onto your model with any lights going over 1 so i thought this was a bad to do and racked my brain over trying to get everything to look decent at 1.0.
Good to know then thanks EQ.
That was advice i gave someone (i think) and it was specific to their situation, where they were consistently needing to increase the light intensity because their albedo was too dark, i said they should keep the lights to 1 and train themselves to create good albedo.
That was advice i gave someone (i think) and it was specific to their situation, where they were consistently needing to increase the light intensity because their albedo was too dark, i said they should keep the lights to 1 and train themselves to create good albedo.
Ah yeah okay I see what you're saying. I would caution giving out any advice on specific values though, because again depending on light type and distance to object, 1 can mean totally different values.
Hi there, I'm new on polycount and was wondering if anyone could help me on my uni project as I've modelled a low poly mountain bike and also a high poly version, its all unwrapped etc but now I've hit a wall on how i go about texturing the object with shaders etc as never really used them before.
Hi there, I'm new to polycount forum and was wondering if you guys could help me with something. I'm looking to use marmoset 2 to render my final major project at uni. The object is a mountain bike and looking to create car paint like shader as well as plastic and metal shaders. Images show my model I've made and references to what I would like the bike to be textured like.
Does anyone have lag on the inputs from the mouse? I thought it was a framerate issue because my machine was to slow at home, but I loaded it up at work, the same scene, and have input lag, but once it starts to rotate or zoom it is fine. It is a very odd problem. Not sure if it has been address anywhere, or where I should start to fix it.
So I figured out the mouse input lag. it looks like the custom HDR map i had loaded slows the interface down for some reason. Is there a best way to input an hdr map?
So I figured out the mouse input lag. it looks like the custom HDR map i had loaded slows the interface down for some reason. Is there a best way to input an hdr map?
The easiest way to fix this is to simply downsize your HDR image, down to 5000x* or so (I assume you've got an HDR map around 10000x****)
Hi, quick question I looked through the thread and did not see this asked.
I know toolbag is set up for rendering real time assets but is there any plans for adding Catmull Clark or Pixar open subdivisions?
The reason I'm asking is I'd like to be able to render out a model with a wireframe overlay. When I turn on subdivision, Pin or Flat, the wire frame is a triangulated. I'd like to be able to keep the display of the wire frame as Quads. Or at least have the behavior the same as hitting the Tab key in modo or the 3 key in Maya.
Also does toolbag support multiple UV tiles? Where the maps are outside the usual 0 to 1 space?
thanks
I've uploaded some free environments for marmoset in the .tbsky format. I already released some of these before as sIBL sets but now they're easier to use. You can get them here:
Is there a way to mask out the skin shader attributes through an overall map? Say I have a mesh with a shirt that transitions to show skin on the arm. I want to keep the mesh all continuous. I know in marmoset 1 there was an option to mask in and out the overall skin attributes.
Hi, quick question I looked through the thread and did not see this asked.
I know toolbag is set up for rendering real time assets but is there any plans for adding Catmull Clark or Pixar open subdivisions?
The reason I'm asking is I'd like to be able to render out a model with a wireframe overlay. When I turn on subdivision, Pin or Flat, the wire frame is a triangulated. I'd like to be able to keep the display of the wire frame as Quads. Or at least have the behavior the same as hitting the Tab key in modo or the 3 key in Maya.
We looked into it and it was a no-go for performance reasons, so unfortunately we do not have any plans to add CC or pixar subds at this time.
Also does toolbag support multiple UV tiles? Where the maps are outside the usual 0 to 1 space?
thanks
Is there a way to mask out the skin shader attributes through an overall map? Say I have a mesh with a shirt that transitions to show skin on the arm. I want to keep the mesh all continuous. I know in marmoset 1 there was an option to mask in and out the overall skin attributes.
Thanks for the reply! Still having an issue however.. The mask seems to only apply to the subdermis scatter attribute. The normal smoothing/shadow blur/occlusion blur etc. seem to still be affecting the masked out portion of the mask.
Thanks for the reply! Still having an issue however.. The mask seems to only apply to the subdermis scatter attribute. The normal smoothing/shadow blur/occlusion blur etc. seem to still be affecting the masked out portion of the mask.
I just did a quick test here and it seems to be working as expected, the shadow blur, scattering etc are all masked by the content in the subdermis alpha. Make sure you're saving the file as 32 bit otherwise the alpha will not get pulled in.
If you still are having issues, please get me a copy of your scene and textures and I will take a look,
Replies
EQ do you have some photos of different types of metals shot with a fancy polarized filter would be great to see the diffuse or lack there of component of brushed still, iron, etc.
Right, so basically you have some very specific materials that are partial metals (maybe some alloys and faux-metal paints) and may not fall into the 0 or 1 of a metalness map, but in those cases you can use a grey metalness value. Materials like rust or metals with heavy buildup of other other materials/debris can usually be thought of as not metallic, as they fall into the narrow range of reflectivity that non-metals occupy.
My best resourced for scanned materials is the Quixel Megascan content, some of which ships with TB2, check the data/mat/texture directory. The new dDo ships with a bunch of Megascans content too, and I put together a chart in my PBR tutorial here:
http://www.marmoset.co/toolbag/learn/pbr-practice
So this chart is sorted by reflecivity, and rust is nowhere near metallic, it can safely be represented by a 0 value in the metalness map.
Pretty much anything that isn't a pure metal should have a 0 value in the metalness map, and only a very, very small percentage of materials really fall outside the 0 or 1 range. So again, if you don't want the diffuse to be darkened all the way, you can simply use a grey metalness value, but this gets really sketchy as far as being physically accurate at that point. The basic concept with the metalness system is that artists shouldn't be eyeballing the reflectivity, as it often ends up with totally incorrect values that fall apart under different lighting conditions,
To get further variation, the gloss map is really what sets materials apart, with energy conservation the tighter the gloss is, the brighter it is, and the blurrier the gloss/more rough the surface is, the dimmer and more spread out it is. So you can indirectly control reflectivity via the gloss map. Which is another reason why you can basically drop the spec map from the equation.
Yep, metalness would be 1.0/white, albedo would be R(reflectivity) and gloss/roughness would be M(microsurface) though that will vary depending on surface conditions.
I've been doing some more assets to get used to PBR. Here's something I did the other day and posted earlier on the WAYWO thread.
I bought Unreal Engine 4 and I'll use that for full scenes, but I will still use TB2 to check all my assets before bringing them there and also for the smaller assets like this one.
I'll try to write a bit more on this with some examples etc, but you can't pull any of the values from that chart and use them as metalness. Again, metalness is for the vast majority of materials either 0 or 1, for gold and brushed metal it would be 1, for the other 3 it would be 0. It looks like you're taking the diffuse value and trying to use that as metalness which just doesn't work. If there happened to be some raw, pure metal visibly sticking out of a rock formation, then the pixels that were made of metal in the texture should be set to 1. The metal paint is simply paint on metal as far as I am aware, but I didn't take the scan so I don't know exactly where it came from/what it is.
It is interesting how much specular color ends up in Quixel's scan data, and I'm not exactly sure what the reason for this is. It may be an artifact of their photography based scan equipment, or it may be accurate, but every engineer that I talk to that understands this stuff tells me that virtually every material that is not a raw metal will reflect a neutral (not colored) highlight. More on that here: http://www.marmoset.co/toolbag/learn/pbr-theory
http://www.marmoset.co/toolbag/learn/pbr-practice if you haven't read the full tutorial yet I really suggest you do. There is a section on the difference between the standard specular map vs metalness map workflow, including art content for the same asset that shows you can get essentially the same results with either. Even where I've used colored spec (the red plastic) the results are virtually indistinguishable.
Full color spec maps do offer more control over reflectance variation(value and color) than metalness maps, so if you need that sort of control, you should just use spec maps and not metalness maps. I think you'll drive yourself nuts trying to force the metalness workflow to work like the specular map workflow. In TB2 its simply a matter of changing the reflectance model, in EU4 you would have to do some custom shader work as it does not support spec maps out of the box (which shows how strongly they feel about this). In the past, much of the reason for using color in specular maps had little do with how materials reflect light, and more to do with correcting artifacts due to gamma space problems.
The problem I face with metalness on/off values is that 100% metalness means no diffuse light contribution only reflections which makes surfaces appear as if shadows are not received. This is all fine and would make my life easier except I'm looking at a metal object right now and I can see shadows on it which means it has some diffuse light contribution which also means it can't be made 100% metal if I want it to look realistic, unless I'm misreading this object.
I don't get whats the hype around metalness workflow.
I find it is more restrictive when dealing with dielectric materials.
As I figured it out when metalness is set to 0 it works absolutely the same as old specular/gloss model with fixed low reflectance value.
So to prevent artist eyeballing reflectance they've just hardcoded some common value which looks ok for most materials. Am I right?
Those are both reflection and shadows. You can see the reflections inside the shadows better because it's darker. Most of the dark stuff around that area is just shadow.
@ Malcom - I think the big problem you are having is you are trying to use metalness to define reflectance and that is not what it does. It simply say is this a metal or isn't it. There isn't many cases where there is an in between. Also as I stated above you don't have any control over reflectance of non metals. You really should be using the reflectance workflow for the kind of control you are looking for.
Also AO should occlude reflections in those areas, but I think you are correct marmoset doesn't seem to be occluding reflection in shadow areas as much as it should. This however has nothing to do with metal having no diffuse.
Thanks!
Note the large, dark, hard-edged patches that appear when shadows are turned on, and don't blur properly as the shadows are blurred. For whatever reason, the shadow up near the neck seems to show the correct behavior.
I've tried many different mesh export options, formats, and mesh sizes out of Max including running the edit normals and reset xform modifiers with no luck. I have noticed that the more polys an asset has, the less pronounced the effect is (but that isn't really a solution for lower poly assets). It also shows up with and without a normal map (normal map removed from the screenshot for clarity). I've also tried every option I could find in marmoset, such as shadow resolution, contact refinement, etc.
Any help here would be greatly appreciated.
The short answer is: both.
The long answer to the question, and how it relates to TB2 (and most current generation game engines with similar rendering features) is quite a bit more complicated.
Ill start by explaining a bit about how the renderer works. TB2 uses image based lighting for ambient diffuse and specular terms. Neither of these cast shadows or occlusion, its simply too expensive for a realtime renderer to do. With offline renderers, you basically take every pixel in your HDR panorama image and use that as a point light source, in a game engine, a cubemap with 512x512 per face would mean about 1.5 million unique point light sources, it just isnt really feasible to do that sort of thing in a realtime engine, not with today's hardware at least. So in practice, to get shadows, you need direct/dynamic light sources.
Now, to clarify a few more things:
So here we can see how those various inputs function on non-metallic and metallic objects respectively. Personally I prefer SSR over reflection occlusion as reflection occlusion simply darkens things, which isnt what happens in reality.
Here, its clear that reflections are shadowed, but again, only the specular reflection from dynamic light sources. As the object/view is rotated and the hot spot is no longer over the shadow casting element, you see no shadows.
A bit of observational science shows exactly the same thing. The lighting and position of the object here does not change, only the cameras position. As a bonus, the effects of Fresnel are shown in full effect here as well.
I think a lot of confusion related to this stuff comes from the fact that we want something to render how we think or expect it to based on previous experience with other renderers, more so than wanting it to behave in an accurate manner. I know when I first started using TB2 I had the same concerns, but every time I try to research and explain to our engineers that its somehow wrong, I end up proving the inverse.
There is certainly room for improvement here, but I dont think it will come from changing how the shaders behave or how we go about creating the art content, better quality will be achieved with more sophisticated rendering, specifically realtime reflections (not screen-space based) and radiosity. Were not there yet but I think long term that's where Marmoset and the rest of the industry will go when the hardware is good enough to do it.
PS: Jeff will flip his shit if you guys ask for a shadow color setting.
Yes, this is a known issue, we’ve got a bug report on it just haven’t had time to fix it. A quick work around you can do is render out one shot with ssr off to grab the alpha.
Hey guys, we thought that this was fixed but it looks like its still an issue. I’ve got a bug report filed for it, I think it only affects the scene rotation turntable type. Thanks for the info.
Sorry, not currently.
Interesting, a few things to try:
If using FBX, try obj. If using OBJ, try FBX. Make sure mesh normals are being exported. Try to toggle the tangent space option to Maya and see if that fixes it.
If none of this helps, please upload the scene and your obj/fbx file and I will have a look at it, thanks.
This is a known issue, the SSR gets baked into the alpha output. You can try rendering another set with SSR off and then replacing the alpha channel, perhaps with an action in photoshop if you need to do it over many frames. Sorry I don’t have a better solution for this problem.
Same as above it looks like, it appears this problem was fixed but not with the scene turntable rotation type. Please let me know if you are having this problem
This is not currently supported but something we will likely add in the future.
There are some limitation with SSR, because its a screenspace effect it only has access to certain data (it can’t “see” underneath objects that aren’t visible on screen for instance) and for performance reasons it gets blurred and dithered which makes it appear noisey. It should look better when you export rendered images though, you can export very large images and resize them to improve the look even further.
We do plan to add support for animations sometime in the future, and Alembic looks like a good candidate at this point.
Yeah this is basically it. If you study material types, you’ll learn that most non-metals can easily be represented with a fixed value of about 0.04. Non-metals actually vary much more in the roughness/glossiness than they do with reflectance, and energy conservation in the roughness/gloss means you can get a decent amount of reflectance variation with the gloss map alone (tighter highlights appear brighter, while wider highlights are more spread out and dim).
Metalness maps are an alternative way to pack the content, and also a way to simplify the process and prevent artists from setting a reflectance value of 0.5 for paint or some other non-metallic material. Its more efficient in terms of memory use as you can pack a metalness, gloss, and ao/cavity map all into the same 24 bit image that you would need just for a full color spec map.
Full color spec maps give you finer control, but in real use the difference isn’t as extreme as you would think, again unless you’re using values that just don’t make any sense. If you can afford the memory cost, and need the extra control, full color spec maps are a better way to go.
Unfortunately this is a technical limitation of realtime shadow mapping techniques. When dealing with low poly meshes like this, the shadowing algorithm has choice but to match the shape of the low poly mesh. If your mesh was denser the shadows would work a little better, you can try the PNtriangles tessellation option and see if that helps improve results.
Try to match the scale to this object as well and see if that helps: https://dl.dropboxusercontent.com/u/499159/scalecube.obj
Thanks for the quick reply, Joe.
What you're saying makes sense about the limitations of shadowing techniques.
I wonder, though, if there's something more that could be done to compensate for this? Loading up the same mesh in Toolbag 1, the shadows don't display nearly so many artifacts, and the shadows also look great in Unity.
Here's another shot with the mesh scaled to match the .obj you linked.
Hey, would it be possible for you to upload the scene file and also the OBJ so we can take a closer look at this? Thanks
Really like Toolbags shaders, more than UE4 for example. What I'm only missing here are some more robust camera-effects! We need lens-dirt/dust flares(from reflections too), chromatic aberration etc all that good stuff! I dont want to fake them in PS Any plans on adding more features in post processing? :>
-Auto-reload models (or a button to refresh)
-recent scenes in menu
-Warning popup when quitting an unsaved scene
I agree with kom, i think toolbag one had that option if you saved over the obj that is currently being displayed it autoloaded i just now notice this doesn't happen, nice mention kom.
Any information regarding the tone mapping reinhart option, as i have no clue what this is nor did i find anything anywhere about it.
Thanks again.
edit i haven't checked the pdf though.:poly136:
Here's an article about vray that briefly mentions the difference. I'm assuming it works similarly in Marmoset. Just ignore the app-specific things:
http://help.chaosgroup.com/vray/help/150SP1/render_params_colormapping.htm
Linear tonemapping: Linear multiply - this mode will simply multiply the final image colors based on their brightness are. Color components that are too bright (above 1.0 or 255) will be clipped. This can result in burnt out spots near bright light sources.
Reinhard tonemapping: this mode is a blend between exponential-style color mapping and linear mapping. (exponential tonemapping: this mode will saturate the colors based on their brightness. This can be useful to prevent burn-outs in very bright areas {for example around light sources etc}. This mode will not clip bright colors, but will instead saturate them.)
Awesome!
Yeah, we plan to improve the post effects and add some more features. Not sure when though.
Thanks for the feedback.
Joopsons link below sums it up well. Its an alternative tone mapping method to keep from blowing the highlights basically.
Cool, glad it was helpful!
Interesting, could you please tell me what hardware/gpu/os/etc youre using? Also if you can get me a copy of this scene to see if I can reproduce the issue that would be great too.
Sorry i had a bad education so i am pretty much dumb when it comes to a lot of this stuff and can't pay to learn so i've been winging it without any help for 10 years. lol (brooklyn, N.Y. education at it's best.)
I rather be honest then lie, sorry to be so honest it might come off weird i guess...
Anyway, i really feared going into the 2nd digit from 1 of the lighting in marmoset cause i thought that was a bad move but said screw it "I can't get what i want," from the lights I have currently. I want to know should i stay at 3 lights in total and not above the 1 setting factor to render or light a scene.
I am not smart as you all... I blame my up bringing but at least i can say that... I love marmoset if that makes any consolidation.
I have GeForce 8800GT with Direct3d 10.
But when running Marmo 2 - it says that it needs direct3d 11 dll files. So it needs direct11.0. Any chance starting prog on my videocard?
**In sys req i saw GeForce 8000 and up..
I am not aware of any reason why you would want to limit light intensity to 1 or lower. Light values are HDR and can certainly be above 1, for instance when you use the sky light picker tool it pulls the light color and intensity from the hdr panorama, and often will pull lights in with a value of 8 or so.
Also, light intensity for point and spot lights depends on distance from subject to light, so there really is no rule you can apply here for intensity.
Toolbag 2 requires a DX10 or higher card, so your 8800 should be good. Please update your video card drivers to make sure you have the latest.
Are you able to launch the problem or is the error preventing it from opening?
Certain DX11 features like tessellation, will not work with DX10 cards.
Good to know then thanks EQ.
Ah yeah okay I see what you're saying. I would caution giving out any advice on specific values though, because again depending on light type and distance to object, 1 can mean totally different values.
The easiest way to fix this is to simply downsize your HDR image, down to 5000x* or so (I assume you've got an HDR map around 10000x****)
I know toolbag is set up for rendering real time assets but is there any plans for adding Catmull Clark or Pixar open subdivisions?
The reason I'm asking is I'd like to be able to render out a model with a wireframe overlay. When I turn on subdivision, Pin or Flat, the wire frame is a triangulated. I'd like to be able to keep the display of the wire frame as Quads. Or at least have the behavior the same as hitting the Tab key in modo or the 3 key in Maya.
Also does toolbag support multiple UV tiles? Where the maps are outside the usual 0 to 1 space?
thanks
http://joostvanhoutte.com/marmoset-skies/
Polycount thread: http://www.polycount.com/forum/showthread.php?t=133153
Is there a way to mask out the skin shader attributes through an overall map? Say I have a mesh with a shirt that transitions to show skin on the arm. I want to keep the mesh all continuous. I know in marmoset 1 there was an option to mask in and out the overall skin attributes.
--> here's the option
http://www.marmoset.co/toolbag/learn/skin-shader
it was called "skin-tone/mask-map"
I may just be overlooking it right now! Thanks in advance
We looked into it and it was a no-go for performance reasons, so unfortunately we do not have any plans to add CC or pixar subds at this time.
Yep, no problems with uvs outside 0-1
Yeah, stick the mask in the alpha of the subdermis map.
I just did a quick test here and it seems to be working as expected, the shadow blur, scattering etc are all masked by the content in the subdermis alpha. Make sure you're saving the file as 32 bit otherwise the alpha will not get pulled in.
If you still are having issues, please get me a copy of your scene and textures and I will take a look,