Package net.minecraft.client.renderer
Class SectionOcclusionGraph
java.lang.Object
net.minecraft.client.renderer.SectionOcclusionGraph
- 
Nested Class SummaryNested ClassesModifier and TypeClassDescription(package private) static final record(package private) static final record(package private) static classprotected static class(package private) static class
- 
Field SummaryFieldsModifier and TypeFieldDescriptionprivate static final doubleprivate final AtomicReference<SectionOcclusionGraph.GraphState>private static final Direction[]private Future<?>private static final org.slf4j.Loggerprivate static final intprivate final AtomicBooleanprivate booleanprivate final AtomicReference<SectionOcclusionGraph.GraphEvents>private ViewArea
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionprivate voidaddNeighbors(SectionOcclusionGraph.GraphEvents p_300825_, ChunkPos p_297758_) voidaddSectionsInFrustum(Frustum p_299761_, List<SectionRenderDispatcher.RenderSection> p_301346_) booleanprotected SectionOcclusionGraph.NodegetNode(SectionRenderDispatcher.RenderSection p_299335_) getRelativeFrom(BlockPos p_298318_, SectionRenderDispatcher.RenderSection p_299737_, Direction p_301139_) private voidinitializeQueueForFullUpdate(Camera p_298889_, Queue<SectionOcclusionGraph.Node> p_297605_) voidprivate booleanisInViewDistance(BlockPos p_298566_, BlockPos p_298230_) voidonChunkLoaded(ChunkPos p_299612_) voidprivate voidprivate voidrunPartialUpdate(boolean p_298388_, Frustum p_299940_, List<SectionRenderDispatcher.RenderSection> p_297967_, Vec3 p_299094_) private voidrunUpdates(SectionOcclusionGraph.GraphStorage p_299200_, Vec3 p_300018_, Queue<SectionOcclusionGraph.Node> p_300570_, boolean p_300892_, Consumer<SectionRenderDispatcher.RenderSection> p_298647_) private voidscheduleFullUpdate(boolean p_298569_, Camera p_299582_, Vec3 p_297830_) voidupdate(boolean p_301275_, Camera p_298972_, Frustum p_298939_, List<SectionRenderDispatcher.RenderSection> p_300432_) voidwaitAndReset(ViewArea p_298923_) 
- 
Field Details- 
LOGGERprivate static final org.slf4j.Logger LOGGER
- 
DIRECTIONS
- 
MINIMUM_ADVANCED_CULLING_DISTANCEprivate static final int MINIMUM_ADVANCED_CULLING_DISTANCE- See Also:
 
- 
CEILED_SECTION_DIAGONALprivate static final double CEILED_SECTION_DIAGONAL
- 
needsFullUpdateprivate boolean needsFullUpdate
- 
fullUpdateTask
- 
viewArea
- 
currentGraph
- 
nextGraphEvents
- 
needsFrustumUpdate
 
- 
- 
Constructor Details- 
SectionOcclusionGraphpublic SectionOcclusionGraph()
 
- 
- 
Method Details- 
waitAndReset
- 
invalidatepublic void invalidate()
- 
addSectionsInFrustumpublic void addSectionsInFrustum(Frustum p_299761_, List<SectionRenderDispatcher.RenderSection> p_301346_) 
- 
consumeFrustumUpdatepublic boolean consumeFrustumUpdate()
- 
onChunkLoaded
- 
onSectionCompiled
- 
updatepublic void update(boolean p_301275_, Camera p_298972_, Frustum p_298939_, List<SectionRenderDispatcher.RenderSection> p_300432_) 
- 
scheduleFullUpdate
- 
runPartialUpdateprivate void runPartialUpdate(boolean p_298388_, Frustum p_299940_, List<SectionRenderDispatcher.RenderSection> p_297967_, Vec3 p_299094_) 
- 
queueSectionsWithNewNeighbors
- 
addNeighbors
- 
initializeQueueForFullUpdateprivate void initializeQueueForFullUpdate(Camera p_298889_, Queue<SectionOcclusionGraph.Node> p_297605_) 
- 
runUpdatesprivate void runUpdates(SectionOcclusionGraph.GraphStorage p_299200_, Vec3 p_300018_, Queue<SectionOcclusionGraph.Node> p_300570_, boolean p_300892_, Consumer<SectionRenderDispatcher.RenderSection> p_298647_) 
- 
isInViewDistance
- 
getRelativeFrom@Nullable private SectionRenderDispatcher.RenderSection getRelativeFrom(BlockPos p_298318_, SectionRenderDispatcher.RenderSection p_299737_, Direction p_301139_) 
- 
getNode@Nullable protected SectionOcclusionGraph.Node getNode(SectionRenderDispatcher.RenderSection p_299335_) 
 
-