// Copyright (c) 2023 Dominic Masters // // This software is released under the MIT License. // https://opensource.org/licenses/MIT #pragma once #include "scene/SceneItemComponent.hpp" #include "physics/3d/Ray3D.hpp" namespace Dawn { struct Collider3DRayResult { glm::vec3 normal; glm::vec3 point; }; class Collider3D : public SceneItemComponent { public: Collider3D(SceneItem *item); virtual bool_t raycast(struct Ray3D ray, struct Collider3DRayResult *out) = 0; }; }