From f5b3a00fbb89c4dc341f399add18ccd06a5b2759 Mon Sep 17 00:00:00 2001 From: Benoit Bolsee Date: Fri, 29 May 2009 17:09:20 +0000 Subject: [PATCH] BGE: small performance problem: object set invisible at startup were still put in the DBVT, causing unnecessary culling. --- source/gameengine/Converter/BL_BlenderDataConversion.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/source/gameengine/Converter/BL_BlenderDataConversion.cpp b/source/gameengine/Converter/BL_BlenderDataConversion.cpp index d9e93d41f34..385301b1105 100644 --- a/source/gameengine/Converter/BL_BlenderDataConversion.cpp +++ b/source/gameengine/Converter/BL_BlenderDataConversion.cpp @@ -1338,8 +1338,9 @@ void BL_CreateGraphicObjectNew(KX_GameObject* gameobj, ctrl->setNewClientInfo(gameobj->getClientInfo()); ctrl->setLocalAabb(localAabbMin, localAabbMax); if (isActive) { - // add first, this will create the proxy handle - env->addCcdGraphicController(ctrl); + // add first, this will create the proxy handle, only if the object is visible + if (gameobj->GetVisible()) + env->addCcdGraphicController(ctrl); // update the mesh if there is a deformer, this will also update the bounding box for modifiers RAS_Deformer* deformer = gameobj->GetDeformer(); if (deformer)