public void CollectVisibleObjects(RenderQueue queue, string pipelineStage, ref BoundingFrustum visibleFrustum, Vector3 viewPosition) { var stageList = new List <RenderItem>(GetStageList(pipelineStage)); Cull(stageList, ref visibleFrustum); queue.AddRange(stageList, viewPosition); }
public void CollectVisibleObjects(RenderQueue queue, string pipelineStage, ref BoundingFrustum visibleFrustum, Vector3 viewPosition) { _results.Clear(); Func <RenderItem, bool> filter = GetFilter(pipelineStage); _octree.GetContainedObjects(visibleFrustum, _results, filter); queue.AddRange(_results, viewPosition); foreach (var item in _freeRenderItems) { if (filter(item)) { queue.Add(item, viewPosition); } } }
public void CollectVisibleObjects(RenderQueue queue, string pipelineStage, Vector3 viewPosition) { var stageList = GetStageList(pipelineStage); queue.AddRange(GetStageList(pipelineStage), viewPosition); }