By TZORG
#328164
Here are three inconveniences I deal with.

1. Transparency with brightness 0% (no transmap, white color) doesn't work right no matter how you look at it. In C4D it looks the same as if Transparency were unchecked. In Maxwell, the transmission color seems to be based on brightness, so it's opaque there too. But instead of preserving the rest of the material, you get replaced Refl 0 color (gray I think, not that it matters), roughness 0, Nd 1. Pitch black. It's neither a useful nor accurate material, and I get it for almost everything, due to my workflow, unless I uncheck Transparency on every material that doesn't use it.

The plugin can already tell the material isn't supposed to be transparent. It doesn't produce a transparent material. The problem is it makes it smooth (and discards the Refl 0 color).

How about deriving roughness from Transparency brightness, similar to how transmittance color is? If you had a 50% transparent material then you wouldn't expect the opaque component to have roughness 0.

2. Transparency maps get converted as maps on transmittance. For reasons unknown to me, this doesn't work correctly in comparison to using the map as a layer opacity map:
http://www.maxwellrender.com/forum/view ... 97&t=34795

I don't know if transmittance maps are working properly or if there is some advantage to using them over layer opacity maps, but it is definitely tedious and error-prone to change all of these materials (copy transmittance map to layer, invert it, turn it off in transmittance, kill transmittance color).

also
2b. Reflectance 0 always seems to be gray with these materials instead of what it was (unless there was a diffuse map to override it). E.g. I tried to make a purple box with holes in it but the box is gray. I guess this just always happens when Transparency is checked.

3. Yesterday I loaded a .c4d file, a free car model from Dosch Design. It's supposed to be a red and black shiny car. It renders in Maxwell as a mirror. Its C4D materials mostly have Color, Reflection, and Specular checked. The converted material has "Gloss" and "Base" layers, but the roughness/Nd on both layers is 0/100 due to the Reflection. I don't think that makes any sense. If the code can determine that there IS a diffuse-colored "base," it should be left alone, and the conversion should have reflection either affect only the "gloss" layer (which does seem to happen currently), or obtain a new component just for high Nd reflection.

Otherwise I can't let the plugin process Reflection unless the material is truly meant to be a simple mirror.

The broad theme with 1, 2b, and 3, is that if the material is supposed to have a diffuse "Color" (or map) according to C4D, this should virtually always be preserved in the appearance of the translated material in Maxwell. And any code dropping roughness to 0 should raise alarm bells here.

Thanks for reading.
By JDHill
#328166
Thanks. It would be best though, if you could also provide a scene (simpler is better), so that I am not trying to duplicate the example materials just from your descriptions.
By TZORG
#328197
Ok, the car model is available here
http://www.dosch3d.com/samples.php
It comes with two .c4d files but I didn't notice a difference in using one over the other.

If you load it, I would look at the red material called 10-body. It has Color, Reflection, and Specular. I haven't looked closely at how they are set because I guess it doesn't really affect what happens. I made a bunch of copies of this material and had the plugin convert them to Maxwell materials.

I added the possibility of having Transparency checked, to kill another bird with one stone. I made the Transparency settings (when present) color white, brightness 0%, no map. (It starts out black/100%, a case I believe you fixed.)

Based on what is checked, this is what you get:
Transparency on, no matter what else: pitch black. gray refl 0, roughness 0, nd 1.
Color only: red with no highlight. red refl 0, roughness 99, nd 3.
Color & Specular: red with a highlight. Two layers: gray refl 0, roughness 39, nd 1.7; and red refl 0, roughness 99, nd 3.
Color & Reflection: mirror with a hint of red. red refl 0, roughness 0, nd 100.
Color, Reflection, & Specular: same but somewhat brighter than previous. Two layers: gray refl 0, roughness 0, nd 100; and red refl 0, roughness 0, nd 100.

My feeling is that when "Color" is checked there should be a red refl 0, roughness 99, nd 3 component in the resulting material. Reflection should probably work more like Specular; Color+Reflection in a single BSDF doesn't seem workable.

This should be enough to illustrate points 1 and 3.

For point 2 I want to make a scene that uses a hair or eyelash type of transmap, and email it to you. The difficulty (as seen in the thread I linked) is that a transmittance map apparently can work if you only use two colors. So I need to make an example that deliberately uses grays, not just as a jpeg artifact.

Thanks.
By TZORG
#328387
I've made a .mxs I'll email you.

I made a simple "hair" transmap (I'm used to white being opaque; I forgot in C4D it's reversed):
Image

and then compared using it as a transmittance map inverted (left) vs. a layer opacity map (right):
Image

It seems to me that a transmittance color map doesn't provide much control over what gets through. The attenuation is so small that a partly transparent surface is almost the same as a fully transparent one. I tried reducing the attenuation from 5m to 5nm, but I didn't see any difference, which perhaps makes sense as this is not a closed three-dimensional object. (Which is typical for hair or eyelashes in my experience.)
User avatar
By macray
#328721
Sorry to add to another thread but I have another material loading issue.

here in the forum in Ressources / fun stuff metal materials can be found that import and bahave normal in MXED but imported in cinema they have the IOR mode switched. Normal it should be set to 'Custom' but all the metal materials are imported using the 'measured data' and gold.ior loaded. If you switch the mode in all layers it renders fine again.
But why is the IOR mode changed when importing it?
By JDHill
#328724
I don't know -- I confirm the issue, but I don't yet know what is causing it. When I read the MXM, the SDK is telling me that its complex mode is enabled. However, it tells me the opposite in identical code in a different plugin. I'll let you know when I figure it out.

So, is this a known issue?