- Home /
Making lightmaps in Unity look photoreal just like in Maya
I have a photorealistic light setup in Maya and I am transferring the scene lighting to a 32bit .EXR lightmap via MentalRay baking: -When I compare the original render (witch is the ultimate visual reference) to my rendered lightmaps, the result is 99% identical (the lightmap is plugged to the ambient slot of the lamber shader - all lights and global illumination turned off - gamma 2.2 for the rendered camera) works like a charm!
-Now in Unity I plug my 32 bit .EXR lightmap to the lightmap slot of the “lightmapped/diffuse” shader and set the texture mode to “lightmap” (“color space” is set to “linear”). Unlike Maya, the lightmap effect in Unity gives a different look then the original render. Why is that? Shouldn’t the lighmap be applied just like in Maya (where it is plugged to the ambient slot) witch is the correct way of applying the lightmap since it was identical to the original render? How can I make the lightmap in Unity have the same correct look as in the Maya?
It would be much appreciated if you submitted a bug report (Help > Report a Bug) with a repro case ($$anonymous$$aya project with $$anonymous$$entalRay settings and the Unity project) and mentioned the case number in a comment below. Thanks!
It does look like an issue with gamma though.
That said, please don't use the legacy shaders. $$anonymous$$ore info on how to use externally baked lightmaps: http://forum.unity3d.com/threads/146055-Using-externally-baked-lightmaps-in-Unity-3.5
Answer by Groutcho · May 21, 2012 at 07:53 AM
I think that the EXR setting is different. Since the EXR format stores high dynamic light data, it may be dependent on exposure, gamma or other light parameters. It is possible that Beast and Mental Ray generate these parameters at different values.
Answer by sathya · Aug 07, 2012 at 12:29 PM
Try exporting lightmap as 24bit TGA. that is what i usually use when i render lightmap in 3D Max. Make sure gamma is set to 2.2
Answer by gherat · Oct 30, 2013 at 11:35 AM
I think it could be the default ambient light in Unity! Turn the Ambient light off in Edit -> Render Settings.. That way, when there are no lights and lightmaps, it's pitchblack in the scene like it supposed to be when there is no light. Your scene is now lit by an ambient light.
Answer by alejoasks · Sep 11, 2015 at 04:10 PM
I have had a similar problem with 3ds max. I had an expected result on the Frame Buffer (render window). But after I saved the image I noticed with did not save it the same way as in the Frame Buffer, as if it did not apply the gamma correction before saving.
Your answer
Follow this Question
Related Questions
A node in a childnode? 1 Answer
UV maps won't import?? 1 Answer
Why Mel Scripted Animation Won't Play in Unity 1 Answer
Importing Mesh from Maya into Unity Issues 0 Answers
How does Unity apply a lightmap? 0 Answers