MantraFeatures
From Odwiki
Features of mantra:
- Several render modes:
- MicroPolygon renderer (with variable ShadingQuality and various Measurers to control Dicing), with raytracing for secondary rays; a hybrid.
- RayTrace rendering for primary rays
- PhysicallyBasedRendering (PBR)
- Photon renderer for rendering photon maps for direct and indirect illumination
- Bucket Rendering : enables rendering of large images without a large impact on RAM usage
- Full RayTracing
- GatherLoops, Occlusion, Irradiance and PathTracing support
- Geometry can be PreDiced to accelerate raytracing - particularly good for displaced or higher-order surfaces such as SubdivisionSurfaces.
- Sub-pixel DisplacementMapping
- Displacements can be ReDiced to provide non-linear displacements.
- IPR Rendering (Interactive Photorealistic Rendering): Caching of rendered samples which allow accelerated re-rendering of images to make the lighting and shader-building process faster and more interactive. This accelerates:
- Lighting changes
- Shader changes
- Certain renderer parameter changes, such as PixelFilter and so on.
- Intermixing of "live" object rendering with IPR pre-rendered caches of objects.
- Many renderable geometry types include:
- Polygon surfaces
- SubdivisionSurface rendering from Polygons
- Metaball : Direct rendering of the limit surface (micropolygon and raytraced) including displacement mapping and motion-blur.
- NURBS surface rendering
- Open Curves and Polygons are rendered as ribbons (oriented to camera or custom) - useful for fast hair rendering.
- Volume primitive type for full volumetric rendering
- Supports procedural geometry generation at render-time called MantraProcedurals
- ReadFromFileProcedural : (Delayed) Read Archives for rendering geometry directly from disk when necessary.
- SpriteProcedural: Sprite rendering
- Houdini can be invoked to supply geometry at render-time. HScriptInstancingProcedural
- User extensible in the HDK.
- Programmable Shaders (MantraShaders are written in VEX code, and see VEXUsageTips)
- VEX allows access to VEXPointClouds which offer accelerated methods for computing phenomenon such as SubsurfaceScattering, GlobalIllumination and many other effects. PointClouds can also be written out from shaders.
- VEXProfiling for determining crucial areas in shaders
- C++ programmable extensions in the HoudiniDevelopmentKit
- VEXDSOs for extending the shading language
- Procedural DSOs for generating geometry. See MantraProcedurals.
- GlobalIllumination support, and general cone-angle sampling in all raytracing operations.
- AmbientOcclusion
- Irradiance with IrradianceCache
- PhotonMapping for indirect and direct illumination.
- GlobalIlluminationCache can be generated to accelerate and improved rendering and re-rendering of GI.
- Fast MotionBlur (VelocityBlur, DeformationBlur (unlimited multisegment), TransformationBlur (unlimited multisegment)
- 3D raytraced motionblur
- MotionFactor : variable dicing of objects to accelerate rendering of objects with a large amount of MotionBlur
- SuperSampling
- MultiProcessing : for single frames distributed amongst several workstations ( Remote Rendering)
- MultiThreading : for using all the CPUs or Cores on a local workstation
- Instancing (see MantraInstancing) for rendering multiple similar subnets/objects/lights/etc without a negative RAM impact:
- GeometryInstancing
- LightInstancing
- PointInstancing : instance geometry/lights/etc on points
- DepthOfField : enhancedBokeh support
- DeepRaster (ArbitraryOutputVariables) support
- FieldRendering
- PanoramicProjection rendering
- ShaderUnwrapping
- Cross Platform : Linux, Windows, IRIX and Solaris
- HDRI rendering
- MipMap textures (for good TextureFiltering and low RAM usage)
- Wide variety of FileFormats
- AreaLight support
- IFDArchives : archiving via IFD snippets
- DeepShadow and DepthMap generation for ShadowMapping
- Python integration
- PythonFiltering : for overriding sections of the scene description
- PythonTileCallbacks: for custom python callbacks between rendered tiles
- Several render modes:



