28 lines
666 B
C++
28 lines
666 B
C++
// Copyright (c) 2023 Dominic Masters
|
|
//
|
|
// This software is released under the MIT License.
|
|
// https://opensource.org/licenses/MIT
|
|
|
|
#pragma once
|
|
#include "Collider3D.hpp"
|
|
#include "physics/3d/Ray3D.hpp"
|
|
|
|
namespace Dawn {
|
|
class CubeCollider : public Collider3D {
|
|
protected:
|
|
bool_t performRaycast(
|
|
struct Collider3DRayResult *result,
|
|
struct Ray3D ray
|
|
) override;
|
|
|
|
public:
|
|
// @optional
|
|
glm::vec3 min = glm::vec3(-0.5f, -0.5f, -0.5f);
|
|
// @optional
|
|
glm::vec3 max = glm::vec3(0.5f, 0.5f, 0.5f);
|
|
|
|
CubeCollider(std::weak_ptr<SceneItem> item);
|
|
|
|
enum Collider3DType getColliderType() override;
|
|
};
|
|
} |