This is an Anari device implementation on top of Apple's Metal library. It has 2 renderers, default (forward) and hybrid (deferred, ray traced postprocessing effects will be added).
The project is currently in an early stage of development, and there are some limitations to it.
- Only triangle geometry is supported
- The frames's color and depth format is always RGBA8_sRGB and Depth32Float respectively
- Only directional light is supported
- Volumes aren't rendered
- Command buffers and encoders are created separatelly for every blit command, which is very inefficient
- anariViewer does not render models, though models can be loaded using the file/obj scene and work just fine
- anariViewer renders only the upper right quarter of the example, most likely because of Retina screens
- All the images are rendered upside down (will be fixed soon)
- The 'Matte' material is currently the same as PBM material
- Some primitive attributes don't work, like primitive.color and primitive.attributeXX
- Sampler ignores it's parameters (will be fixed soon)
- Reflections only work for surfaces, not instances
- Build the project
cd /path/to/anari_metal mkdir build cd build cmake --build . -t install
Distributed under the Apache License. See LICENSE.txt
for more information.
Samuel Žúbor - [email protected]
Project Link: https://github.com/SamoZ256/anari_metal