rtcGetGeo...ataDevice(3)

πŸ“¦ version 4.4.1, in ubuntu stonking

✨ NAME ✨

rtcGetGeometryBufferDataDevice β€” bestie, it gets you a pointer to the very first buffer view element, but like… on the device πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

#include <embree4/rtcore.h>

void* rtcGetGeometryBufferDataDevice(
  RTCGeometry geometry,
  enum RTCBufferType type,
  unsigned int slot
);

🌸 DESCRIPTION 🌸

okay so, this is Embree Ray Tracing Kernels 4 territory, and the function we're obsessing over is rtcGetGeometryBufferDataDevice. What does it do? It hands you back a pointer to the first element of the buffer view that's attached to a specific buffer type and slot β€” those are the type and slot arguments, btw β€” on the geometry you pass in as the geometry argument. and it's on the device. hence the name. slay.

Now here's the little plot twist 🫢: if the device that's associated with geometry is not a SYCL device, or if Embree is running on a system with host unified memory (think an iGPU, iykyk), then the pointer it gives you back is literally the same one you'd get from rtcGetGeometryBufferData. same pointer, no new character arc. periodt.


πŸ’€ EXIT STATUS πŸ’€

If it fails, an error code gets set, and you can go query that with rtcGetDeviceError. not me finding out about failures the hard way πŸ™ˆ


πŸ‘‘ SEE ALSO πŸ‘‘

  • [rtcGetGeometryBufferData]
  • [rtcSetGeometryBuffer]
  • [rtcSetSharedGeometryBuffer]
  • [rtcSetNewGeometryBuffer]

that's the whole vibe, bestie πŸ’– this page lives in the Embree Ray Tracing Kernels 4 manual and goes by rtcGetGeo...ataDevice(3) β€” catch you in the next buffer view βœ¨πŸŽ€

πŸ“¦ where this page comes from