From f0b464bccfd226a5b82b165f9d7bd45bceb0377e Mon Sep 17 00:00:00 2001 From: Dander7BD Date: Mon, 11 Nov 2013 21:14:52 +0100 Subject: [PATCH] Frustrum fix --- OysterPhysics3D/Collision/Frustrum.cpp | 6 +++--- OysterPhysics3D/Collision/Frustrum.h | 4 ++-- OysterPhysics3D/Collision/ICollideable.cpp | 12 ++++++++++++ OysterPhysics3D/Collision/ICollideable.h | 1 + 4 files changed, 18 insertions(+), 5 deletions(-) create mode 100644 OysterPhysics3D/Collision/ICollideable.cpp diff --git a/OysterPhysics3D/Collision/Frustrum.cpp b/OysterPhysics3D/Collision/Frustrum.cpp index 5c7a6664..b13c257a 100644 --- a/OysterPhysics3D/Collision/Frustrum.cpp +++ b/OysterPhysics3D/Collision/Frustrum.cpp @@ -3,7 +3,7 @@ ///////////////////////////////////////////////////////////////////// #include "Frustrum.h" -#include "OysterCollision.h" +#include "..\OysterCollision3D.h" using namespace Oyster::Math; using namespace Oyster::Collision3D; @@ -74,7 +74,7 @@ namespace PrivateStatic } } -Frustrum::Frustrum( ) : ICollideable(Type_frustrum), +Frustrum::Frustrum() : ICollideable(Type_frustrum), leftPlane(Float3::standard_unit_x, -0.5f), rightPlane(-Float3::standard_unit_x, 0.5f), bottomPlane(Float3::standard_unit_y, -0.5f), topPlane(-Float3::standard_unit_y, 0.5f), nearPlane(Float3::standard_unit_z, -0.5f), farPlane(-Float3::standard_unit_z, 0.5f) {} @@ -82,7 +82,7 @@ Frustrum::Frustrum( ) : ICollideable(Type_frustrum), Frustrum::Frustrum( const Float4x4 &vp ) : ICollideable(Type_frustrum) { PrivateStatic::VP_ToPlanes( this->leftPlane, this->rightPlane, this->bottomPlane, this->topPlane, this->nearPlane, this->farPlane, vp ); } -Frustrum::~Frustrum( ) {} +Frustrum::~Frustrum() {} Frustrum & Frustrum::operator = ( const Frustrum &frustrum ) { diff --git a/OysterPhysics3D/Collision/Frustrum.h b/OysterPhysics3D/Collision/Frustrum.h index 03688154..a27a8f4a 100644 --- a/OysterPhysics3D/Collision/Frustrum.h +++ b/OysterPhysics3D/Collision/Frustrum.h @@ -24,9 +24,9 @@ namespace Oyster { namespace Collision3D { class Plane leftPlane, rightPlane, bottomPlane, topPlane, nearPlane, farPlane; }; }; - Frustrum( ); + Frustrum(); Frustrum( const ::Oyster::Math::Float4x4 &viewProjection ); - virtual ~Frustrum( ); + virtual ~Frustrum(); Frustrum & operator = ( const Frustrum &frustrum ); Frustrum & operator = ( const ::Oyster::Math::Float4x4 &viewProjection ); diff --git a/OysterPhysics3D/Collision/ICollideable.cpp b/OysterPhysics3D/Collision/ICollideable.cpp new file mode 100644 index 00000000..89effa36 --- /dev/null +++ b/OysterPhysics3D/Collision/ICollideable.cpp @@ -0,0 +1,12 @@ +///////////////////////////////////////////////////////////////////// +// Created by Dan Andersson 2013 +///////////////////////////////////////////////////////////////////// + +#include "ICollideable.h" + +using namespace ::Oyster::Collision3D; + +ICollideable::ICollideable( Type _type ) + : type(_type) {} + +ICollideable::~ICollideable() {} \ No newline at end of file diff --git a/OysterPhysics3D/Collision/ICollideable.h b/OysterPhysics3D/Collision/ICollideable.h index 4e59e841..b2a74aed 100644 --- a/OysterPhysics3D/Collision/ICollideable.h +++ b/OysterPhysics3D/Collision/ICollideable.h @@ -31,6 +31,7 @@ namespace Oyster { namespace Collision3D /// Contains a collection of 3D shapes const Type type; ICollideable( Type type = Type_undefined ); + virtual ~ICollideable(); virtual ::Utility::Memory::UniquePointer Clone( ) const = 0; virtual bool Intersects( const ICollideable *target ) const = 0;