Jelajahi Sumber

replace RaycastMode and RaycastFilter with SceneQueryMode and SceneQueryFilter

mikymod 12 tahun lalu
induk
melakukan
f0eb4ed7fa

+ 1 - 1
engine/lua/LuaPhysicsWorld.cpp

@@ -66,7 +66,7 @@ CE_EXPORT int physics_world_make_raycast(lua_State* L)
 	int mode = stack.get_int(3);
 	int filter = stack.get_int(4);
 
-	RaycastId raycast = world->create_raycast(callback, (RaycastMode::Enum) mode, (RaycastFilter::Enum) filter);
+	RaycastId raycast = world->create_raycast(callback, (SceneQueryMode::Enum) mode, (SceneQueryFilter::Enum) filter);
 
 	stack.push_raycast(world->lookup_raycast(raycast));
 	return 1;

+ 6 - 6
engine/lua/LuaRaycast.cpp

@@ -51,13 +51,13 @@ void load_raycast(LuaEnvironment& env)
 {
 	env.load_module_function("Raycast", "cast",	raycast_cast);
 
-	env.load_module_enum("Raycast", "CLOSEST",	RaycastMode::CLOSEST);
-	env.load_module_enum("Raycast", "ANY",		RaycastMode::ANY);
-	env.load_module_enum("Raycast", "ALL",		RaycastMode::ALL);
+	env.load_module_enum("Raycast", "CLOSEST",	SceneQueryMode::CLOSEST);
+	env.load_module_enum("Raycast", "ANY",		SceneQueryMode::ANY);
+	env.load_module_enum("Raycast", "ALL",		SceneQueryMode::ALL);
 
-	env.load_module_enum("Raycast", "STATIC",	RaycastFilter::STATIC);
-	env.load_module_enum("Raycast", "DYNAMIC",	RaycastFilter::DYNAMIC);
-	env.load_module_enum("Raycast", "BOTH",		RaycastFilter::BOTH);
+	env.load_module_enum("Raycast", "STATIC",	SceneQueryFilter::STATIC);
+	env.load_module_enum("Raycast", "DYNAMIC",	SceneQueryFilter::DYNAMIC);
+	env.load_module_enum("Raycast", "BOTH",		SceneQueryFilter::BOTH);
 }
 
 } // namespace crown

+ 3 - 3
engine/physics/PhysicsTypes.h

@@ -118,7 +118,7 @@ struct CollisionGroup
 };
 
 //-----------------------------------------------------------------------------
-struct RaycastMode
+struct SceneQueryMode
 {
 	enum Enum
 	{
@@ -129,7 +129,7 @@ struct RaycastMode
 };
 
 //-----------------------------------------------------------------------------
-struct RaycastFilter
+struct SceneQueryFilter
 {
 	enum Enum
 	{
@@ -170,7 +170,7 @@ struct RaycastEvent
 {
 	bool 				hit;
 	char* 				callback;
-	RaycastMode::Enum 	mode;
+	SceneQueryMode::Enum 	mode;
 	Vector3 			position;
 	float				distance;
 	Vector3 			normal;

+ 1 - 1
engine/physics/PhysicsWorld.cpp

@@ -303,7 +303,7 @@ void PhysicsWorld::destroy_joint(JointId id)
 }
 
 //-----------------------------------------------------------------------------
-RaycastId PhysicsWorld::create_raycast(const char* callback, RaycastMode::Enum mode, RaycastFilter::Enum filter)
+RaycastId PhysicsWorld::create_raycast(const char* callback, SceneQueryMode::Enum mode, SceneQueryFilter::Enum filter)
 {
 	Raycast* raycast = CE_NEW(m_raycasts_pool, Raycast)(m_scene, m_events, callback, mode, filter);
 	return m_raycasts.create(raycast);

+ 1 - 2
engine/physics/PhysicsWorld.h

@@ -86,7 +86,7 @@ public:
 	JointId						create_joint(const PhysicsResource* pr, const uint32_t index, const Actor& actor_0, const Actor& actor_1);
 	void						destroy_joint(JointId id);
 
-	RaycastId					create_raycast(const char* callback, RaycastMode::Enum mode, RaycastFilter::Enum filter);
+	RaycastId					create_raycast(const char* callback, SceneQueryMode::Enum mode, SceneQueryFilter::Enum filter);
 	void						destroy_raycast(RaycastId id);
 
 	Actor*						lookup_actor(StringId32 name);
@@ -100,7 +100,6 @@ public:
 	void						set_kinematic(ActorId id);
 	void						clear_kinematic(ActorId id);
 
-
 	void						update(float dt);
 
 public:

+ 7 - 7
engine/physics/Raycast.cpp

@@ -35,7 +35,7 @@ namespace crown
 {
 
 //-------------------------------------------------------------------------
-Raycast::Raycast(PxScene* scene, EventStream& events, const char* callback, RaycastMode::Enum mode, RaycastFilter::Enum filter)
+Raycast::Raycast(PxScene* scene, EventStream& events, const char* callback, SceneQueryMode::Enum mode, SceneQueryFilter::Enum filter)
 	: m_scene(scene)
 	, m_buffer(m_hits, CE_MAX_RAY_INTERSECTIONS)
 	, m_events(events)
@@ -45,16 +45,16 @@ Raycast::Raycast(PxScene* scene, EventStream& events, const char* callback, Rayc
 {
 	switch (m_filter)
 	{
-		case RaycastFilter::BOTH: break;
-		case RaycastFilter::STATIC: m_fd.flags = PxQueryFlag::eSTATIC; break;
-		case RaycastFilter::DYNAMIC: m_fd.flags = PxQueryFlag::eDYNAMIC; break;
+		case SceneQueryFilter::BOTH: break;
+		case SceneQueryFilter::STATIC: m_fd.flags = PxQueryFlag::eSTATIC; break;
+		case SceneQueryFilter::DYNAMIC: m_fd.flags = PxQueryFlag::eDYNAMIC; break;
 	}
 
 	switch (m_mode)
 	{
-		case RaycastMode::CLOSEST: break;
-		case RaycastMode::ANY: m_fd.flags |= PxQueryFlag::eANY_HIT; break;
-		case RaycastMode::ALL: break;
+		case SceneQueryMode::CLOSEST: break;
+		case SceneQueryMode::ANY: m_fd.flags |= PxQueryFlag::eANY_HIT; break;
+		case SceneQueryMode::ALL: break;
 	}
 }
 

+ 6 - 6
engine/physics/Raycast.h

@@ -48,15 +48,15 @@ struct Vector3;
 struct Raycast
 {
 	/// Constructor
-			Raycast(PxScene* scene, EventStream& events, const char* callback, RaycastMode::Enum mode, RaycastFilter::Enum filter);
+			Raycast(PxScene* scene, EventStream& events, const char* callback, SceneQueryMode::Enum mode, SceneQueryFilter::Enum filter);
 
 	/// Performs a raycast against objects in the scene. The ray is casted from position @a from, has direction @a dir and is long @a length
 	/// If any actor is hit along the ray, @a EventStream is filled according to @a mode previously specified and callback will be called for processing.
-	/// @a RaycastMode::ANY: the callback is called with just true or false depending on whether the ray hit anything or not.
-	/// @a RaycastMode::CLOSEST: the first argument will tell if there was a hit or not, as before. 
+	/// @a SceneQueryMode::ANY: the callback is called with just true or false depending on whether the ray hit anything or not.
+	/// @a SceneQueryMode::CLOSEST: the first argument will tell if there was a hit or not, as before. 
 	/// If there was a hit, the callback will also be called with the position of the hit, the distance from the origin, the normal of the surface that 
 	/// was hit and the actor that was hit.
-	/// @a RaycastMode::ALL: as @a RaycastMode::CLOSEST, with more tuples
+	/// @a SceneQueryMode::ALL: as @a SceneQueryMode::CLOSEST, with more tuples
 	void	cast(const Vector3& from, const Vector3& dir, const float length);
 
 private:
@@ -69,8 +69,8 @@ private:
 	EventStream&			m_events;
 	const char*				m_callback;
 
-	RaycastMode::Enum		m_mode;
-	RaycastFilter::Enum		m_filter;
+	SceneQueryMode::Enum		m_mode;
+	SceneQueryFilter::Enum		m_filter;
 };
 
 } // namespace crown