History

Lock geometry on blender

Zach Pomerantz committed 10 years ago

Commit 34026351 parent aa038ba1 file · +9 −6Browse files

Showing the changes to libraries/render-utils/src/Model.cpp (1 of 1 file). Show all

Unified · Split

libraries/render-utils/src/Model.cpp+9−6
@@ -1071,18 +1071,21 @@ float Model::getLimbLength(int jointIndex) const { · 1070 unmodified lines
1071}1071}
1072 1072
1073bool Model::maybeStartBlender() {1073bool Model::maybeStartBlender() {
1074 const FBXGeometry& fbxGeometry = getFBXGeometry();1074 if (isLoaded()) {
1075 if (fbxGeometry.hasBlendedMeshes()) {1075 const FBXGeometry& fbxGeometry = getFBXGeometry();
1076 QThreadPool::globalInstance()->start(new Blender(getThisPointer(), ++_blendNumber, _geometry,1076 if (fbxGeometry.hasBlendedMeshes()) {
1077 fbxGeometry.meshes, _blendshapeCoefficients));1077 QThreadPool::globalInstance()->start(new Blender(getThisPointer(), ++_blendNumber, _geometry,
1078 return true;1078 fbxGeometry.meshes, _blendshapeCoefficients));
1079 return true;
1080 }
1079 }1081 }
1080 return false;1082 return false;
1081}1083}
1082 1084
1083void Model::setBlendedVertices(int blendNumber, const std::weak_ptr<NetworkGeometry>& geometry,1085void Model::setBlendedVertices(int blendNumber, const std::weak_ptr<NetworkGeometry>& geometry,
1084 const QVector<glm::vec3>& vertices, const QVector<glm::vec3>& normals) {1086 const QVector<glm::vec3>& vertices, const QVector<glm::vec3>& normals) {
1085 if (_geometry != geometry.lock() || _blendedVertexBuffers.empty() || blendNumber < _appliedBlendNumber) {1087 auto geometryRef = geometry.lock();
1088 if (!geometryRef || _geometry != geometryRef || _blendedVertexBuffers.empty() || blendNumber < _appliedBlendNumber) {
1086 return;1089 return;
1087 }1090 }
1088 _appliedBlendNumber = blendNumber;1091 _appliedBlendNumber = blendNumber;