Page MenuHome

Cycles: add pointcloud support for metal
ClosedPublic

Authored by Brecht Van Lommel (brecht) on Dec 20 2021, 4:18 PM.

Details

Summary

Not currently working due to internal compiler error, but might also be some
wrong setup in this implementation.

Ref T92573, T92212

Diff Detail

Repository
rB Blender
Branch
metal-pt (branched from master)
Build Status
Buildable 19540
Build 19540: arc lint + arc unit

Event Timeline

@Brecht Van Lommel (brecht) , I tried this patch. Interestingly I didn't get an internal compiler error (I run on prerelease OS versions, so perhaps a compiler bug has been fixed), but it produced blank renders so something is not quite right.

A couple of thoughts:

  • In master, the custom box intersectors (i.e. non trimesh) can handle thick curves and/or ribbons, and the host selects the appropriate level of specialization. I think this 2-bit approach needs to be expanded to a 3-bit one (i.e. thick curves, ribbons, pointclouds) for this to handle all possible combinations of geometry.
  • I think the existing MetalRT primitive offset stuff doesn't apply to pointclouds from what I can see, although removing this didn't fix things.

I should be able to take a closer look in January.

I plan to merge this in the current non-working state, so the code doesn't go out of sync.

After D13877: Cycles: Fix bvh2 gen on Apple Silicon and use it to speed up renders this will have no effect for users.

This revision was not accepted when it landed; it landed in state Draft.Jan 21 2022, 2:43 PM
This revision was automatically updated to reflect the committed changes.