Merge branch 'master' of https://github.com/highfidelity/hifi into scriptEngineCleanup

This commit is contained in:
Brad Hefta-Gaub 2015-09-15 08:11:11 -07:00
commit bd1d3cb468
2 changed files with 5 additions and 27 deletions

View file

@ -829,9 +829,6 @@ bool Model::addToScene(std::shared_ptr<render::Scene> scene, render::PendingChan
auto renderData = MeshPartPayload::Pointer(renderItem); auto renderData = MeshPartPayload::Pointer(renderItem);
auto renderPayload = std::make_shared<MeshPartPayload::Payload>(renderData); auto renderPayload = std::make_shared<MeshPartPayload::Payload>(renderData);
pendingChanges.resetItem(item, renderPayload); pendingChanges.resetItem(item, renderPayload);
pendingChanges.updateItem<MeshPartPayload>(item, [&](MeshPartPayload& data) {
data.model->_needsUpdateClusterMatrices = true;
});
_renderItems.insert(item, renderPayload); _renderItems.insert(item, renderPayload);
somethingAdded = true; somethingAdded = true;
} }
@ -841,9 +838,6 @@ bool Model::addToScene(std::shared_ptr<render::Scene> scene, render::PendingChan
auto renderData = MeshPartPayload::Pointer(renderItem); auto renderData = MeshPartPayload::Pointer(renderItem);
auto renderPayload = std::make_shared<MeshPartPayload::Payload>(renderData); auto renderPayload = std::make_shared<MeshPartPayload::Payload>(renderData);
pendingChanges.resetItem(item, renderPayload); pendingChanges.resetItem(item, renderPayload);
pendingChanges.updateItem<MeshPartPayload>(item, [&](MeshPartPayload& data) {
data.model->_needsUpdateClusterMatrices = true;
});
_renderItems.insert(item, renderPayload); _renderItems.insert(item, renderPayload);
somethingAdded = true; somethingAdded = true;
} }
@ -866,9 +860,6 @@ bool Model::addToScene(std::shared_ptr<render::Scene> scene, render::PendingChan
auto renderPayload = std::make_shared<MeshPartPayload::Payload>(renderData); auto renderPayload = std::make_shared<MeshPartPayload::Payload>(renderData);
renderPayload->addStatusGetters(statusGetters); renderPayload->addStatusGetters(statusGetters);
pendingChanges.resetItem(item, renderPayload); pendingChanges.resetItem(item, renderPayload);
pendingChanges.updateItem<MeshPartPayload>(item, [&](MeshPartPayload& data) {
data.model->_needsUpdateClusterMatrices = true;
});
_renderItems.insert(item, renderPayload); _renderItems.insert(item, renderPayload);
somethingAdded = true; somethingAdded = true;
} }
@ -879,9 +870,6 @@ bool Model::addToScene(std::shared_ptr<render::Scene> scene, render::PendingChan
auto renderPayload = std::make_shared<MeshPartPayload::Payload>(renderData); auto renderPayload = std::make_shared<MeshPartPayload::Payload>(renderData);
renderPayload->addStatusGetters(statusGetters); renderPayload->addStatusGetters(statusGetters);
pendingChanges.resetItem(item, renderPayload); pendingChanges.resetItem(item, renderPayload);
pendingChanges.updateItem<MeshPartPayload>(item, [&](MeshPartPayload& data) {
data.model->_needsUpdateClusterMatrices = true;
});
_renderItems.insert(item, renderPayload); _renderItems.insert(item, renderPayload);
somethingAdded = true; somethingAdded = true;
} }
@ -1305,10 +1293,6 @@ void Model::simulateInternal(float deltaTime) {
updateRig(deltaTime, parentTransform); updateRig(deltaTime, parentTransform);
} }
void Model::updateClusterMatrices() { void Model::updateClusterMatrices() {
if (!_needsUpdateClusterMatrices) {
return;
}
_needsUpdateClusterMatrices = false;
const FBXGeometry& geometry = _geometry->getFBXGeometry(); const FBXGeometry& geometry = _geometry->getFBXGeometry();
glm::mat4 zeroScale(glm::vec4(0.0f, 0.0f, 0.0f, 0.0f), glm::mat4 zeroScale(glm::vec4(0.0f, 0.0f, 0.0f, 0.0f),
glm::vec4(0.0f, 0.0f, 0.0f, 0.0f), glm::vec4(0.0f, 0.0f, 0.0f, 0.0f),
@ -1819,15 +1803,13 @@ bool Model::initWhenReady(render::ScenePointer scene) {
segregateMeshGroups(); segregateMeshGroups();
render::PendingChanges pendingChanges; render::PendingChanges pendingChanges;
foreach (auto renderItem, _transparentRenderItems) { foreach (auto renderItem, _transparentRenderItems) {
auto item = scene->allocateID(); auto item = scene->allocateID();
auto renderData = MeshPartPayload::Pointer(renderItem); auto renderData = MeshPartPayload::Pointer(renderItem);
auto renderPayload = std::make_shared<MeshPartPayload::Payload>(renderData); auto renderPayload = std::make_shared<MeshPartPayload::Payload>(renderData);
_renderItems.insert(item, renderPayload); _renderItems.insert(item, renderPayload);
pendingChanges.resetItem(item, renderPayload); pendingChanges.resetItem(item, renderPayload);
pendingChanges.updateItem<MeshPartPayload>(item, [&](MeshPartPayload& data) {
data.model->_needsUpdateClusterMatrices = true;
});
} }
foreach (auto renderItem, _opaqueRenderItems) { foreach (auto renderItem, _opaqueRenderItems) {
@ -1836,9 +1818,6 @@ bool Model::initWhenReady(render::ScenePointer scene) {
auto renderPayload = std::make_shared<MeshPartPayload::Payload>(renderData); auto renderPayload = std::make_shared<MeshPartPayload::Payload>(renderData);
_renderItems.insert(item, renderPayload); _renderItems.insert(item, renderPayload);
pendingChanges.resetItem(item, renderPayload); pendingChanges.resetItem(item, renderPayload);
pendingChanges.updateItem<MeshPartPayload>(item, [&](MeshPartPayload& data) {
data.model->_needsUpdateClusterMatrices = true;
});
} }
scene->enqueuePendingChanges(pendingChanges); scene->enqueuePendingChanges(pendingChanges);

View file

@ -497,7 +497,6 @@ private:
QMap<render::ItemID, render::PayloadPointer> _renderItems; QMap<render::ItemID, render::PayloadPointer> _renderItems;
bool _readyWhenAdded = false; bool _readyWhenAdded = false;
bool _needsReload = true; bool _needsReload = true;
bool _needsUpdateClusterMatrices = true;
protected: protected:
RigPointer _rig; RigPointer _rig;