From 67f1fd25ee6361df5f84e254eea103fe7952125f Mon Sep 17 00:00:00 2001 From: Dalai Felinto Date: Fri, 24 Jan 2014 02:10:04 -0200 Subject: game engine: implement hitMaterial for collision and ray sensors Reviewed By: moguri, kupoman Differential Revision: https://developer.blender.org/D167 --- source/gameengine/Ketsji/KX_RaySensor.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'source/gameengine/Ketsji/KX_RaySensor.cpp') diff --git a/source/gameengine/Ketsji/KX_RaySensor.cpp b/source/gameengine/Ketsji/KX_RaySensor.cpp index afd39557130..84e615b61ab 100644 --- a/source/gameengine/Ketsji/KX_RaySensor.cpp +++ b/source/gameengine/Ketsji/KX_RaySensor.cpp @@ -64,9 +64,8 @@ KX_RaySensor::KX_RaySensor(class SCA_EventManager* eventmgr, m_bXRay(bXRay), m_distance(distance), m_scene(ketsjiScene), - m_axis(axis) - - + m_axis(axis), + m_hitMaterial("") { Init(); } @@ -144,6 +143,7 @@ bool KX_RaySensor::RayHit(KX_ClientObjectInfo *client, KX_RayCast *result, void m_hitNormal[1] = result->m_hitNormal[1]; m_hitNormal[2] = result->m_hitNormal[2]; + m_hitMaterial = (client->m_auxilary_info ? (char*)client->m_auxilary_info : ""); } // no multi-hit search yet return true; @@ -356,6 +356,7 @@ PyAttributeDef KX_RaySensor::Attributes[] = { KX_PYATTRIBUTE_FLOAT_ARRAY_RO("hitPosition", KX_RaySensor, m_hitPosition, 3), KX_PYATTRIBUTE_FLOAT_ARRAY_RO("rayDirection", KX_RaySensor, m_rayDirection, 3), KX_PYATTRIBUTE_FLOAT_ARRAY_RO("hitNormal", KX_RaySensor, m_hitNormal, 3), + KX_PYATTRIBUTE_STRING_RO("hitMaterial", KX_RaySensor, m_hitMaterial), KX_PYATTRIBUTE_RO_FUNCTION("hitObject", KX_RaySensor, pyattr_get_hitobject), { NULL } //Sentinel }; -- cgit v1.2.3