We just got PRO today. Yeah! And here the first question: is there an official way to get a pure mirror material? I mean a material which reflects based on the polygons normals? If not, do you think this is an achievable task? Any idea on where to start? Thanks G.
In realtime graphics, there are two kinds of practical mirrors: 1. planar mirrors; where mirror surface is a plane (or almost a plane). Conceptually this is very similar to Reflective Water in Unity Pro, just without wave distortion. There's a script+shader on the wiki for that: http://www.unifycommunity.com/wiki/index.php?title=MirrorReflection2 2. cubemap reflections, that represent reflections that are infinitely far away. In real scenes of course, nothing is infinitely far away, but it's a good approximation. Camera.RenderToCubemap can be used here.
thanks, so basically reflection on 3d surfaces are either a cube map or not possible (unless the surface is a plane)... oops... I always imagined that unity-pro was actually able to do real time reflections on 3d surfaces, for real. But it is my over optimistic ignorance I have tried cubemap and I get weird interpolaton artifacts between polygons... I need to investigate this further but it looks like the cube map is somehow smoothed at the edges... which would not happen in two non planar polygons sharing an edge... I will come back with a picture. Thanks anyway. G.
That's just the limitation of graphics hardware. Until we get realtime raytracing everywhere, doing accurate reflections from curved objects is going to be faked.
No, practical realtime raytracing is still a few years away The best way to fake reflections on curved surfaces is to use RenderToCubemap: http://unity3d.com/support/documentation/ScriptReference/Camera.RenderToCubemap.html
nice, can this be ticked as static object? edit Guess not, so no occlusion possible for a mirror shaded object....?
@Somian, I'm pretty sure what they are talking about is accurate reflection. Like it has been said in the earlier post, using cubemap and combining with the real time mirror code for each face of the cube then projecting it onto the surface of the 3d object is one way to get real time reflection for complex object. I think that's how icenhancer got reflections on cars in GTA IV.
if this is not possible, then how would you get gta-like reflections, the quality you get with the iCEnhancer, would that be done with cubemaps ?
Just tested it out. It no longer works in Unity 4.3. Any reason why it's not working and any fixes for it soon?