5#include "optix_types.h"
6#include <torch/extension.h>
19 const torch::Tensor &origins,
20 const torch::Tensor &dirs);
22 const torch::Tensor &origins,
23 const torch::Tensor &dirs);
24extern std::tuple<torch::Tensor, torch::Tensor, torch::Tensor, torch::Tensor,
27 torch::Tensor directions);
29 torch::Tensor origins,
30 torch::Tensor directions);
31extern std::tuple<torch::Tensor, torch::Tensor, torch::Tensor>
33 torch::Tensor directions);
std::tuple< torch::Tensor, torch::Tensor, torch::Tensor > intersectsLocation(OptixAccelStructureWrapperCPP as, torch::Tensor origins, torch::Tensor directions)
torch::Tensor intersectsFirst(OptixAccelStructureWrapperCPP as, const torch::Tensor &origins, const torch::Tensor &dirs)
std::tuple< torch::Tensor, torch::Tensor, torch::Tensor, torch::Tensor, torch::Tensor > intersectsClosest(OptixAccelStructureWrapperCPP as, torch::Tensor origins, torch::Tensor directions)
Find if ray hits any triangle and return ray index, triangle index, hit location and uv.
torch::Tensor intersectsCount(OptixAccelStructureWrapperCPP as, torch::Tensor origins, torch::Tensor directions)
torch::Tensor intersectsAny(OptixAccelStructureWrapperCPP as, const torch::Tensor &origins, const torch::Tensor &dirs)
void buildAccelStructure(torch::Tensor vertices, torch::Tensor faces)
OptixTraversableHandle asHandle
void freeAccelStructure()