From 41dfb64210b6e711071320c8cce30bfadb337f46 Mon Sep 17 00:00:00 2001 From: Azaezel Date: Fri, 5 Aug 2016 05:41:57 -0500 Subject: [PATCH] hardware skinning and instancing are mutually exclusive --- Engine/source/ts/tsMesh.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Engine/source/ts/tsMesh.cpp b/Engine/source/ts/tsMesh.cpp index 39ccc72b9..5b454a572 100644 --- a/Engine/source/ts/tsMesh.cpp +++ b/Engine/source/ts/tsMesh.cpp @@ -46,6 +46,7 @@ #include "scene/sceneManager.h" #include "scene/sceneRenderState.h" #include "materials/matInstance.h" +#include "materials/materialFeatureTypes.h" #include "renderInstance/renderPassManager.h" #include "materials/customMaterialDefinition.h" #include "gfx/util/triListOpt.h" @@ -257,7 +258,8 @@ void TSMesh::innerRender( TSMaterialList *materials, const TSRenderState &rdata, // Get the instancing material if this mesh qualifies. if ( meshType != SkinMeshType && pb->mPrimitiveArray[i].numVertices < smMaxInstancingVerts ) - matInst = InstancingMaterialHook::getInstancingMat( matInst ); + if (matInst && !matInst->getFeatures().hasFeature(MFT_HardwareSkinning)) + matInst = InstancingMaterialHook::getInstancingMat( matInst ); #endif