Refactor SceneRendering to simplify actors impl of drawing flow at high level
This commit is contained in:
@@ -559,7 +559,7 @@ void Foliage::OnFoliageTypeModelLoaded(int32 index)
|
||||
}
|
||||
BoundingSphere::FromBox(_box, _sphere);
|
||||
if (_sceneRenderingKey != -1)
|
||||
GetSceneRendering()->UpdateGeometry(this, _sceneRenderingKey);
|
||||
GetSceneRendering()->UpdateActor(this, _sceneRenderingKey);
|
||||
}
|
||||
{
|
||||
PROFILE_CPU_NAMED("Create Clusters");
|
||||
@@ -606,7 +606,7 @@ void Foliage::RebuildClusters()
|
||||
_box = BoundingBox(_transform.Translation, _transform.Translation);
|
||||
_sphere = BoundingSphere(_transform.Translation, 0.0f);
|
||||
if (_sceneRenderingKey != -1)
|
||||
GetSceneRendering()->UpdateGeometry(this, _sceneRenderingKey);
|
||||
GetSceneRendering()->UpdateActor(this, _sceneRenderingKey);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -696,7 +696,7 @@ void Foliage::RebuildClusters()
|
||||
_box = totalBounds;
|
||||
BoundingSphere::FromBox(_box, _sphere);
|
||||
if (_sceneRenderingKey != -1)
|
||||
GetSceneRendering()->UpdateGeometry(this, _sceneRenderingKey);
|
||||
GetSceneRendering()->UpdateActor(this, _sceneRenderingKey);
|
||||
}
|
||||
|
||||
// Insert all instances to the clusters
|
||||
@@ -1016,11 +1016,6 @@ void Foliage::Draw(RenderContext& renderContext)
|
||||
#endif
|
||||
}
|
||||
|
||||
void Foliage::DrawGeneric(RenderContext& renderContext)
|
||||
{
|
||||
Draw(renderContext);
|
||||
}
|
||||
|
||||
bool Foliage::IntersectsItself(const Ray& ray, float& distance, Vector3& normal)
|
||||
{
|
||||
int32 instanceIndex;
|
||||
@@ -1227,12 +1222,12 @@ void Foliage::Deserialize(DeserializeStream& stream, ISerializeModifier* modifie
|
||||
void Foliage::OnLayerChanged()
|
||||
{
|
||||
if (_sceneRenderingKey != -1)
|
||||
GetSceneRendering()->UpdateGeometry(this, _sceneRenderingKey);
|
||||
GetSceneRendering()->UpdateActor(this, _sceneRenderingKey);
|
||||
}
|
||||
|
||||
void Foliage::OnEnable()
|
||||
{
|
||||
_sceneRenderingKey = GetSceneRendering()->AddGeometry(this);
|
||||
_sceneRenderingKey = GetSceneRendering()->AddActor(this);
|
||||
|
||||
// Base
|
||||
Actor::OnEnable();
|
||||
@@ -1240,7 +1235,7 @@ void Foliage::OnEnable()
|
||||
|
||||
void Foliage::OnDisable()
|
||||
{
|
||||
GetSceneRendering()->RemoveGeometry(this, _sceneRenderingKey);
|
||||
GetSceneRendering()->RemoveActor(this, _sceneRenderingKey);
|
||||
|
||||
// Base
|
||||
Actor::OnDisable();
|
||||
|
||||
Reference in New Issue
Block a user