SDK/GraphicsComponent: Makes component watch over renderable destruction

Allows to use persistent (not using the internal counter)
InstancedRenderable


Former-commit-id: cc511c6da80a57126f48c2f1dbc0f7c1b4ee0d18 [formerly 803948db3b98db6d47f8c2a3d6dee73274f90bb7] [formerly 86a3c484eac16f58263d2c22a8992d088af383c9 [formerly d0d78ebee97f2d309b28f734f176814f9c9a3d22]]
Former-commit-id: f9b885450c133524597d2a81119af311f6755789 [formerly 195b15dc4c47f6783c91383ef5d9f01cf67abb42]
Former-commit-id: 820d52038de469dc89d040f9718378249495d474
This commit is contained in:
Lynix
2016-08-11 01:07:46 +02:00
parent 7802183be0
commit fd874098f9
2 changed files with 11 additions and 1 deletions

View File

@@ -42,7 +42,8 @@ namespace Ndk
Renderable& r = m_renderables.back();
r.data.renderOrder = renderOrder;
r.renderable = std::move(renderable);
r.renderableInvalidationSlot.Connect(r.renderable->OnInstancedRenderableInvalidateData, std::bind(&GraphicsComponent::InvalidateRenderableData, this, std::placeholders::_1, std::placeholders::_2, m_renderables.size()-1));
r.renderableInvalidationSlot.Connect(r.renderable->OnInstancedRenderableInvalidateData, std::bind(&GraphicsComponent::InvalidateRenderableData, this, std::placeholders::_1, std::placeholders::_2, m_renderables.size() - 1));
r.renderableReleaseSlot.Connect(r.renderable->OnInstancedRenderableRelease, this, &GraphicsComponent::Detach);
InvalidateBoundingVolume();
}