Alternate fix for castRay issue
@@ -1768,10 +1768,10 @@ void GuiConvexEditorCtrl::submitUndo( UndoType type, const Vector<ConvexShape*>
mIsDirty = true;
}
-bool GuiConvexEditorCtrl::_cursorCastCallback( RayInfo* ri )
+bool GuiConvexEditorCtrl::_cursorCastCallback( SceneObject* object )
{
// Reject anything that's not a ConvexShape.
- return dynamic_cast< ConvexShape* >( ri->object );
+ return dynamic_cast< ConvexShape* >( object );
bool GuiConvexEditorCtrl::_cursorCast( const Gui3DMouseEvent &event, ConvexShape **hitShape, S32 *hitFace )
@@ -169,7 +169,7 @@ protected:
void _renderObject( ObjectRenderInst *ri, SceneRenderState *state, BaseMatInstance *matInst );
bool _cursorCast( const Gui3DMouseEvent &event, ConvexShape **hitShape, S32 *hitFace );
- static bool _cursorCastCallback( RayInfo* ri );
+ static bool _cursorCastCallback( SceneObject* object );
protected:
@@ -318,10 +318,9 @@ struct SceneRayHelper
xformedEnd.convolveInverse(ptr->mObjScale);
RayInfo ri;
- ri.object = ptr;
ri.generateTexCoord = info->generateTexCoord;
- if (mFunc && !mFunc(&ri))
+ if (mFunc && !mFunc(ptr))
return false;
bool result = false;
@@ -668,7 +668,7 @@ class SceneContainer
/// @name Line intersection
/// @{
- typedef bool ( *CastRayCallback )( RayInfo* ri );
+ typedef bool ( *CastRayCallback )( SceneObject* object );
/// Test against collision geometry -- fast.
bool castRay( const Point3F &start, const Point3F &end, U32 mask, RayInfo* info, CastRayCallback callback = NULL );