#pragma once #ifdef _WIN32 #include // before any import: its guard must be set here #endif #include #include "nvrenderer/nvrenderer.h" // TSubModel/TModel3d are owned by the simulation core; a forward // declaration here would be a second, conflicting declaration. #include #include #include #include #include #include #include #include #include #include #include #include #include import eu07.simcore; import eu07.glm; namespace Rt { struct IRtModel { virtual TSubModel const* Intersect(NvRenderer::Renderable const& renderable, glm::dvec3 const& ro, glm::dvec3 const& rd) const { return nullptr; } virtual ~IRtModel() = default; }; std::shared_ptr CreateRtModel(TModel3d const* src, NvRenderer const* owner); } // namespace Rt