Mirage is a powerful tool that provides full impostor management, from baking to rendering, with automatic LOD Group setup.Mirage Impostors rendering is 100% supported on any pipeline out-of-the-box, but baking impostors on HDRP can give underwhelming results depending on the project settings (it still technically works). BiRP is the most accurate for baking impostors. Impostors are self-contained prefabs that can be dragged from a project to another seamlessly, no matter which pipeline it was baked on.Mirage gives 50% OFF AutoLOD (Mesh Decimator)!It works in symbiosis with it, for the ultimate optimization ecosystem.Try Mirage on this Online WebGL DemoYou can check the Online DocumentationIntroducing Mirage 2.0 - Redefining your expectationsYou can now restrict the longitude range for objects that don't need to be seen from 360°See the Gizmos in real time as you tweak the parameters in the editor windowImproved interpolation - Choose whether you want a Smooth but blurrier or Sharp but Snaps renderingWhat you can expect from Mirage:Reduce the triangles count and draw calls by orders of magnitude in just one clickPerformance magic - Up to 10x FPS increase on complex massive scenesBy far the most versatile impostor system : Say goodbye to pink outputs or other errors, Mirage is compatible with ANY unity version after 2021.3 and ANY render pipeline, with ANY shader and can be embedded on ANY platform. Natively.Bake as many objects as you want in a single impostorExtremely easy to use: Struggling is not an option, the plugin is really straightforward to use and you will get your first impostors baked in just a few seconds.VR ready: and more generally, multi-view and single pass stereo instancing compatible.Compatible with GPU Instancing2 lighting modes:Surface estimation: lit, multi-light compatible impostorsUse Scene Sun Source: If your lighting is directional and static, you can use this option to bake directly the light reflections on the impostor colormap. The impostor is then rendered on an unlit material.Lightweight and non-intrusive module: Mirage will not change project or player settings nor install any additionnal dependencies aside from shadergraph in your project. It is a lightweight standalone package that was designed to fit seamlessly in any project.FAQ:What is an impostor?An impostor is a billboard that displays an image of a 3D object. The image will update and change according to the viewing angle in order to fake a 3D effect and save on performance.When should I use it?Impostors are mainly used to render non-deformable objects far off in the distance in order to optimize the scene.You could also use them to get a unique art style with a 2.5D "snapping" effect.Can any object in my scene be replaced with an impostor?Technically, any objects with a MeshFilter and MeshRenderer attached can be baked into an impostor. However, they should mainly be used to replace meshes in the far distance. At closer range, the difference will be noticeable as a simple quad doesn't intersect the same way with surrounding objects in the same way as the original mesh. Also, impostors are baked in orthographic view which means that the perspective will be wrong at closer ranges.Are impostors compatible with the LODGroup component?Yes. You also don't have to deal with geometry alignment manually, by default the tool sets the LODs for you.How long does it take to bake an impostor?A few seconds.Can I build on any platform?The impostors shader is based on Unity surface shader so you should be able to build on any platform handled by Unity out-of-the-box.Are there any required dependencies?No. This is a standalone package.What makes Mirage different from its competitors?Even though baking on HDRP is not recommended, Mirage is the only 100% versatile 3D impostor system. It is compatible with any shader, on any pipeline, on any target platform, on any unity version after 2020.3, out-of-the-box. Although it is a trade on visual fidelity, especially when dealing with complex objects with intricate self-shadowing shapes or smoothness variations. Fortunately Mirage comes with a lot of post-baking settings directly in the material inspector and you can always get a seamless match from the original object when seen from far in the distance.Can I bake impostors at runtime?Not yet, but that is a feature we are working on. The C# core was designed to have several baking engines, but only the EditorBakingEngine is available yet.If you need help or want more information, you can join the Discord serverImpostors Atlases are stored in DXT Compressed files for minimal memory usageSince DXT is not compatible with all platforms, you can still use the Impostor Optimizer (included) to use any other RGB(A) format.The MirageCoreHelper.hlsl and MirageGeometryHelper.hlsl hold the pipeline/platform agnostic code to resolve the impostor geometry. Feel free to make you own shader based on these. You can use the provided unlit Shaders as minimal examples.