So I have an asset (spaceship) which i textured using substance painter, and thus has a color, roughness, and metalness texture. I need to render it in cinema 4d as part of animation
I am pretty damn happy with the way that I have it looking within the SP realtime viewport, but everything totally falls to pieces as soon as I try to render it in cinema 4d, and I have no idea wtf to do with the roughness and metallic texture.
All I want out of life right now is to just get the model to look as good in cinema 4d as it does in realtime SP viewport. It's just 3 textures, shouldn't be that hard, right? I posted this at c4dcafe or whatever but no one there seemed to know anything about this.
Annnyways I know someone's probably gonna tell me to study up on the reflectance channel in c4d until I know all of its intricacies (and I have a feeling that's what I'm going to have to end up doing) but just on the off chance there's someone lurking here who
a) Made a transition from game art to (whatever the hell not real time rendering is called, i have no idea... awful slow-ass rendering?) and
b) did it recently enough that PBR workflows were already thing..
you can be my savior in this situation!
Replies
It gets a little complicated if you have a Metalness map instead of Specular, in which case you should make a Mix/Blend node, between your Albedo and a constant 50-60 sRGB gray value (or 0.04 in linear rgb). You then mix them with the metalness mask, so whatever is white in the metalness shows the albedo through the blend node, whatever is black shows the constant gray value. Then just plug this in the Reflect slot.
Oh, and you may or may not have to invert the Roughness map too.
here is some info on that topic
http://www.marmoset.co/toolbag/learn/pbr-conversion
[ame]www.youtube.com/watch?v=Nj1wLfKLj9Y[/ame]
Neox I'll take a more in-depth look at the document you posted, it seems like it has some pretty useful info, although I guess the problem is that i'm unsure even if i SHOULD be using a spec workflow in c4d or not.
DerRazputin I am using r16, and am trying to wrap my head around the reflectance channel.
It seems like c4d still relies on a specular contribution to define roughness. It is possible to input a roughness map into the reflection roughness, but I guess when blurred reflections have to get calculated 'for real' it becomes extremely costly and render times totally drop.
It seems to be generally ignoring any variation in the roughness map, and generally looking like crap. This is what the image looks like in c4d.
And here is a screencap from SP, which is what i'm trying to get it look like. It's kind of amazing to me that this takes forever to render in cinema 4d and looks generally awful.
what kind of slots do you have in your shader in cinema?
also keep in mind that the environment it is reflecting has a great deal of an impact on the look of your maps on your model.
Besides the obvious stuff like color and normals, I am making use of the 'roughness' map slot for reflections in c4d, and shutting off the spec contribution all together. However my roughness map seems really washed out by c4d standards, i have to choke the shit out of the contrast to get any real roughness variation visible, which is kind of annoying since I assumed the map should function the same way across any application - but I guess that only applies to other realtime software and not stuff like c4d.
You need to load the Roughness map into the Roughness channel (Who would have thought that?) and the Metalness in the Layer Mask, and play with the values to get the right result.
You may also want to add a second specular channel, with the Metalness inverted, to get better results in the areas that are isolate, play with the various parameter sliders if you think that what you're getting is not right.
I think the biggest determing factor in how a material's reflectivity will behave, is the "layer fresnel" setting in c4d, which lets you select whether the material is a conductor or not, as well as letting you choose presets for different kind of metals and non-metals. This is kind of confusing, since to me 'fresnel' has always just meant how the reflections appears at grazing angles - however, in c4d it seems to control the overall reflectivity, at all angles of incidence.
For instance, i rendered out two spheres, with the same roughness and global strenght values for reflectivity. The only differnece is that the one on the left has the 'fresnel' set to dielectric, and the one on the right is conductor. However, changing this setting seems to have altered the global reflection intensity as well, not just at grazing angels. Again, it's kind of confusing, since to me fresnel has always just meant = brighter reflections at edges. If anyone reading this who has a better grasp of what fresnel 'really means' (*cough* someone from marmo or allegorithmic team*cough*) would like to fill me in, that'd be awesome
P.S. I have completely killed the specular value in all these renders, when enabled it's just the 'traditional' specular highlights that aren't actually physically accurate, which is not what i'm looking for.
Real world objects all have different fresnel curves. It's basically describes how reflective something is from a front facing angle angle to a side facing angle (0 degrees to 90 degrees). Some objects like your dielectric example above have a low amount of front facing reflection, about 10% for example and it's side angle has about 70%. The fresnel curve it makes would go from 10% to 70% with some sort of dipped curve in the middle.
Your metal would have about 90% on the front and about 95% on the side. They don't change much and the curves a bit different than dielectric materials.
here you can see the curve in action (pay attention to the green curve above. ignore the others)
That's what your doing when you change fresnel model, your choosing how refections change across the surface of your model. Unreal does this on a basic setting when you use a metalness map. It's either dielectric or metal.
Hope this helped