public void AddRenderable(ISimpleRenderable renderable) { renderables.Add(renderable); culler.AddCullable(renderable); if (initialized) { renderable.Initialize(game); } }
public void RemoveRenderableObject(ISimpleRenderable toRemove) { if ((toRemove.RenderLayer > -1) && (toRemove.RenderLayer < _layers.Count) && (_layers[toRemove.RenderLayer].SimpleObjects.Contains(toRemove))) { _layers[toRemove.RenderLayer].SimpleObjects.Remove(toRemove); } if ((!(toRemove is ICameraRelative)) && (_cameraIndependentObjects.Contains(toRemove))) { _cameraIndependentObjects.Remove(toRemove); } _someObjectsAreNotCameraLinked = (_cameraIndependentObjects.Count > 0); }
public void AddRenderableObject(ISimpleRenderable toAdd) { if ((toAdd.RenderLayer > -1) && (toAdd.RenderLayer < _layers.Count) && (!_layers[toAdd.RenderLayer].SimpleObjects.Contains(toAdd))) { _layers[toAdd.RenderLayer].SimpleObjects.Add(toAdd); _layerCount = _layers.Count; } if ((!(toAdd is ICameraRelative)) && (!_cameraIndependentObjects.Contains(toAdd))) { _cameraIndependentObjects.Add(toAdd); } _someObjectsAreNotCameraLinked = (_cameraIndependentObjects.Count > 0); }
public void RemoveRenderableObject(ISimpleRenderable toRemove) { if ((toRemove.RenderLayer > -1) && (toRemove.RenderLayer < _layers.Count) && (_layers[toRemove.RenderLayer].SimpleObjects.Contains(toRemove))) { _layers[toRemove.RenderLayer].SimpleObjects.Remove(toRemove); } if ((!(toRemove is ICameraRelative)) && (_cameraIndependentObjects.Contains(toRemove))) { _cameraIndependentObjects.Remove(toRemove); } _someObjectsAreNotCameraLinked = (_cameraIndependentObjects.Count > 0); }
public void AddRenderableObject(ISimpleRenderable toAdd) { if ((toAdd.RenderLayer > -1) && (toAdd.RenderLayer < _layers.Count) && (!_layers[toAdd.RenderLayer].SimpleObjects.Contains(toAdd))) { _layers[toAdd.RenderLayer].SimpleObjects.Add(toAdd); _layerCount = _layers.Count; } if ((!(toAdd is ICameraRelative)) && (!_cameraIndependentObjects.Contains(toAdd))) { _cameraIndependentObjects.Add(toAdd); } _someObjectsAreNotCameraLinked = (_cameraIndependentObjects.Count > 0); }
private bool ObjectShouldBeRendered(ISimpleRenderable toRender) { if (!toRender.Visible) { return(false); } if (!_useCameraController) { return(true); } if ((_someObjectsAreNotCameraLinked) && (_cameraIndependentObjects.Contains(toRender))) { return(true); } return(_cameraController.ObjectIsWithinRenderableArea((ICameraRelative)toRender)); }
/// <summary> /// Call this when the properties of given renderable were changed. The culler will be updated /// </summary> /// <param name="renderable"></param> public void UpdateRenderable(ISimpleRenderable renderable) { culler.UpdateCullable(renderable); }
public void RemoveRenderable(ISimpleRenderable renderable) { renderables.Remove(renderable); culler.RemoveCullable(renderable); }
private bool ObjectShouldBeRendered(ISimpleRenderable toRender) { if (!toRender.Visible) { return false; } if (!_useCameraController) { return true; } if ((_someObjectsAreNotCameraLinked) && (_cameraIndependentObjects.Contains(toRender))) { return true; } return _cameraController.ObjectIsWithinRenderableArea((ICameraRelative)toRender); }