public void PrepareRender(ICamera camera, NebulaRenderer nr, SystemRenderer sys) { if (RenderComponent == null || RenderComponent.PrepareRender(camera, nr, sys)) { foreach (var child in Children) { child.PrepareRender(camera, nr, sys); } } foreach (var child in ForceRenderCheck) { child.PrepareRender(camera, nr, sys); } }
public void PrepareRender(ICamera camera, NebulaRenderer nr, SystemRenderer sys) { if(RenderComponent == null || RenderComponent.PrepareRender(camera,nr,sys)) { //Guns etc. aren't drawn when parent isn't on LOD0 var isZero = RenderComponent == null || RenderComponent.CurrentLevel == 0; foreach (var child in Children) { if((child.RenderComponent != null && !child.RenderComponent.InheritCull) || isZero) child.PrepareRender(camera, nr, sys); } } foreach (var child in ForceRenderCheck) child.PrepareRender(camera, nr, sys); }