3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/core/utility/optional_ref.h"
7#include "mc/deps/minecraft_renderer/game/LevelCullerType.h"
8#include "mc/deps/minecraft_renderer/game/ShadowContext.h"
9#include "mc/platform/brstd/flat_map.h"
10#include "mc/util/GridArea.h"
11#include "mc/world/level/FogDefinition.h"
328 virtual void addCameraListenerToRenderChunkCoordinator();
331 virtual void onAppSuspended();
334 virtual void onAppResumed();
337 virtual void onDeviceLost();
340 virtual void onLowMemory();
343 virtual void initResources();
349 virtual void tickLevelRendererCamera();
352 virtual void tickRain();
361 virtual ::NameTagRenderObjectCollection extractNameTags(
::ScreenContext& screenContext)
const;
367 virtual ::CrackRenderObjectCollection extractCracks(
::ScreenContext& screenContext)
const;
379 virtual bool getForceFog(
::Actor const&)
const;
382 virtual void setupFog(
::ScreenContext& screenContext,
float const skyIntensityOverride);
385 virtual float getAmbientBrightness()
const;
388 virtual void recalculateRenderDistance(
float const renderDistanceScalar);
391 virtual void preRenderUpdate(
404 virtual void postRenderUpdate();
410 virtual void updateLevelCullerType(::LevelCullerType
const) = 0;
416 virtual void _releaseRespectiveResources();
419 virtual ::Block
const* _getBlockForBlockEnity(
::BlockActor const& blockActor);
422 virtual void setupViewArea();
425 virtual ::FogDefinition::DistanceSettingType _getFogDistanceSettingType()
const;
428 virtual ::FogDefinition::DensitySettingType _getFogDensitySettingType()
const;
450 float skyIntensityOverride
456 ::LevelCullerType type,
457 ::std::weak_ptr<::LevelRendererCamera> levelRendererCamera,
463 MCNAPI ::FogVolumetricCoefficientSetting
472 MCNAPI ::FogVolumetricHenyeyGreensteinGSetting
482 ::GridArea<::std::shared_ptr<::RenderChunkInstanced>>
const& viewArea
488 bool accurateSorting,
489 ::GridArea<::std::shared_ptr<::RenderChunkInstanced>>
const& viewArea
501 ::std::map<
::ChunkPos, ::std::unordered_set<::BlockPos>>
const& skipList
Definition BaseActorRenderContext.h:16
Definition BlockActor.h:32
Definition BlockSource.h:63
Definition Dimension.h:85
Definition LevelRendererCamera.h:54
MCAPI ::std::shared_ptr<::RenderChunkInstanced > getRenderChunkInstancedAtShared(::SubChunkPos const &rcp) const
MCAPI::FogVolumetricHenyeyGreensteinGSetting _getCurrentHenyeyGreensteinGFogSetting(::FogDefinition::HenyeyGreensteinGSettingType settingType) const
MCAPI void $updateViewArea(::LevelRenderPreRenderUpdateParameters const &levelRenderPreRenderUpdateParameters)
MCAPI void $recalculateRenderDistance(float const renderDistanceScalar)
MCAPI void renderGameplayMetadata(::ScreenContext &screenContext, ::ViewRenderObject const &renderObj, bool waitingForLoad, ::BaseSceneDirectionalLightRenderData const &sceneDirectionalLightRenderData) const
MCAPI::LevelRendererCamera::RainState doRainUpdate()
MCAPI::RenderChunkInstanced * getOrCreateRenderChunkInstancedAt(::SubChunkPos const &rcp)
MCAPI bool isAABBVisible(::AABB const &bb, bool useFastCulling) const
MCAPI void renderPlayerVision(::ScreenContext &screenContext) const
MCAPI void $setViewArea(::LevelRenderPreRenderUpdateParameters const &levelRenderPreRenderUpdateParameters)
MCAPI void $frameUpdate(::ClientFrameUpdateContext &clientFrameUpdateContext)
MCAPI void _releaseResources()
MCAPI::FogVolumetricCoefficientSetting _getCurrentCoefficientFogSetting(::FogDefinition::CoefficientSettingType settingType) const
MCAPI::FogDefinition::DensitySettingType $_getFogDensitySettingType() const
MCAPI::NameTagRenderObjectCollection $extractNameTags(::ScreenContext &screenContext) const
static MCAPI void renderEndChaos(::ScreenContext &screenContext, ::BaseSceneDirectionalLightRenderData const &sceneDirectionalLightRenderData)
MCAPI void renderAtmosphere(::ScreenContext &screenContext, ::ViewRenderObject const &renderObj, ::BaseSceneDirectionalLightRenderData const &sceneDirectionalLightRenderData, bool isSkyLit) const
MCAPI void $addCameraListenerToRenderChunkCoordinator()
MCAPI void $onDeviceLost()
MCAPI void _notifyPerspectiveCameraMoved(::SubChunkPos const &pos, ::Vec3 const &viewPos, bool accurateSorting, ::GridArea<::std::shared_ptr<::RenderChunkInstanced > > const &viewArea)
MCAPI void _freeSkyProbeTexture()
MCAPI::CrackRenderObjectCollection $extractCracks(::ScreenContext &screenContext) const
MCAPI void _applyAdjustmentsForAir(::FogDistanceSetting &setting, ::ScreenContext &screenContext, float skyIntensityOverride) const
MCAPI void $_releaseRespectiveResources()
MCAPI::FogTransitionSetting _getCurrentFixedTransitionFogSetting(float renderDistance) const
MCAPI void _notifyOrthographicCameraMoved(::SubChunkPos const &pos, ::Vec3 const &viewDir, ::GridArea<::std::shared_ptr<::RenderChunkInstanced > > const &viewArea)
MCAPI bool $getForceFog(::Actor const &) const
MCAPI ::optional_ref<::TerrainMaterialVariationManager const > getCurrentVariationManager() const
MCAPI::RenderChunkInstanced * getRenderChunkInstancedAt(::SubChunkPos const &rcp) const
MCAPI void $renderBlockEntities(::BaseActorRenderContext &renderContext, bool renderAlphaLayer)
MCAPI void $callRenderCracks(::BaseActorRenderContext &renderContext, ::ViewRenderObject const &renderObj)
MCAPI::Block const * $_getBlockForBlockEnity(::BlockActor const &blockActor)
MCAPI void renderEditorCursor(::ScreenContext const &screenContext)
MCAPI void renderChunkOccluders(::BaseActorRenderContext &renderContext) const
MCAPI void renderEntities(::BaseActorRenderContext &renderContext)
MCAPI void $notifyGeoChangedForAffectedEntities(::RenderChunkShared &, uchar)
MCAPI::FogVolumetricDensitySetting _getCurrentDensityFogSetting() const
MCAPI void $onLowMemory()
static MCAPI void renderClouds(::ScreenContext &screenContext, ::ViewRenderObject const &renderObj, float levelRenderDistance)
MCAPI void renderVolumetricFog(::ScreenContext &screenContext, ::ViewRenderObject const &renderObj)
static MCAPI void renderStars(::ScreenContext &screenContext, ::ViewRenderData const &renderData, ::SkyRenderObject const &skyData)
MCAPI void recaptureViewAreaDimensions()
MCAPI void $preRenderUpdate(::ScreenContext &screenContext, ::LevelRenderPreRenderUpdateParameters &levelRenderPreRenderUpdateParameters)
MCAPI void * $ctor(::IClientInstance &clientInstance, ::Level &level, ::LevelRenderer &levelRenderer)
MCAPI void renderSky(::ScreenContext &screenContext, ::ViewRenderObject const &renderObj, ::BaseSceneDirectionalLightRenderData const &sceneDirectionalLightRenderData) const
MCAPI void _addBiomeFogDefinitionToManager(::BlockPos const &pos) const
MCAPI void $postRenderUpdate()
MCAPI void _tryInsertBlockEntityIntoRenderQueues(::BlockActor *blockActor, ::std::map<::ChunkPos, ::std::unordered_set<::BlockPos > > const &skipList)
MCAPI void $queueRenderEntities(::LevelRenderPreRenderUpdateParameters const &)
MCAPI void updateFarChunksDistance()
MCAPI void $tickLevelRendererCamera()
MCAPI void $setupViewArea()
MCAPI bool shouldCullThisFrame(uint64 lastNumRenderChunksVisibleFromCullingPoint)
MCAPI void _initCubemapTextures(::Dimension const &dimension)
static MCAPI void renderShadows(::ScreenContext &screenContext, ::ViewRenderObject const &renderObj)
static MCAPI bool shouldRenderActor(::Actor const &actor, ::LevelRendererCamera::PlayerStateParams const &playerStateParams)
MCAPI void preDimensionChanged(::Player &player)
MCAPI::FogDistanceSetting _getCurrentFixedDistanceFogSetting(float renderDistance) const
MCAPI ::std::shared_ptr<::LevelCullerBase > _createCuller(::LevelCullerType type, ::std::weak_ptr<::LevelRendererCamera > levelRendererCamera, ::LevelBuilder &levelBuilder)
MCAPI void $initResources()
MCAPI void $setupFog(::ScreenContext &screenContext, float const skyIntensityOverride)
MCAPI void _addToRenderChunkQueue(::ChunkRenderObjectCollection &collection, ::TerrainMaterialVariationManager const &terrainVariationMgr, ::TerrainLayer const &layer, ::RenderChunkInstanced const &renderChunkInstanced, uint64 chunkIdx, ::BlockPos const &chunkPos)
MCAPI uint64 getRenderChunkInstancedCount()
MCAPI void doneQueuingChunks()
MCAPI void _resortNearbyChunks(::Vec3 const &viewPos, ::GridArea<::std::shared_ptr<::RenderChunkInstanced > > const &viewArea)
MCAPI void determineUnderwaterStatus(::BlockSource ®ion)
MCAPI float $getAmbientBrightness() const
static MCAPI void ** $vftable()
MCAPI void $renderEntityEffects(::BaseActorRenderContext &renderContext)
MCAPI void _initSkyProbeTexture(::glm::ivec3 size)
MCAPI void $onAppSuspended()
MCAPI LevelRendererCamera(::IClientInstance &clientInstance, ::Level &level, ::LevelRenderer &levelRenderer)
MCAPI::FogDefinition::DistanceSettingType $_getFogDistanceSettingType() const
MCAPI void $callRenderNameTags(::ScreenContext &screenContext, ::ViewRenderObject const &renderObj, ::Font &font)
MCAPI void $onAppResumed()
MCAPI void _applyAdjustmentsForUnderwater(::FogDistanceSetting &setting) const
MCAPI::LevelRendererCamera::RainState calcRainState(::Vec3 const &rainPos) const
MCAPI void updatePerChunkFaceSortState(::Vec3 const &viewPos, ::Vec3 const &viewDir, bool isOrthoCamera)
MCAPI void renderCameraAimAssistHighlight(::ScreenContext &screenContext)
MCAPI bool _shouldRenderLeashedEntity(::Actor *actor, ::Vec3 cameraPos)
MCAPI ::GridArea<::std::shared_ptr<::RenderChunkInstanced > > & _viewAreaMutable()
static MCAPI void renderSunAndMoon(::ScreenContext &screenContext, ::ViewRenderData const &renderData, ::SkyRenderObject const &skyData, ::BaseSceneDirectionalLightRenderData const &sceneDirectionalLightRenderData)
MCAPI void $render(::BaseActorRenderContext &baseEntityRenderContext, ::ViewRenderObject const &renderObj, ::IClientInstance &ci)
MCAPI void renderStructureWireframes(::BaseActorRenderContext &renderContext, ::IClientInstance const &clientInstance, ::ViewRenderObject const &renderObj)
MCAPI void queueChunk(::ChunkRenderObjectCollection &collection, ::RenderChunkInstanced const &renderChunkInstanced, float farDistance2, float currentTime, ::TerrainMaterialVariationManager const &terrainVariationMgr, ::optional_ref<::TerrainMaterialVariationManager const > fadeVariationMgr)
MCAPI void onViewRadiusChanged(bool resetAll)
Definition LevelRenderer.h:47
Definition ScreenContext.h:23
Definition SubChunkPos.h:5
Definition optional_ref.h:6
Definition BaseSceneDirectionalLightRenderData.h:5
Definition ChunkRenderObjectCollection.h:5
Definition ClientFrameUpdateContext.h:5
Definition CrackRenderObjectCollection.h:5
Definition FogDistanceSetting.h:5
Definition FogTransitionSetting.h:5
Definition FogVolumetricCoefficientSetting.h:5
Definition FogVolumetricDensitySetting.h:5
Definition FogVolumetricHenyeyGreensteinGSetting.h:5
Definition IClientInstance.h:5
Definition LevelBuilder.h:5
Definition LevelCullerBase.h:5
Definition LevelRenderPreRenderUpdateParameters.h:5
Definition LevelRendererCamera.h:122
Definition LevelRendererCamera.h:137
Definition LevelRendererCamera.h:173
Definition LevelRendererCamera.h:155
Definition LevelRendererCamera.h:88
MCAPI::LevelRendererCamera::RainState & operator=(::LevelRendererCamera::RainState &&)
Definition LevelRendererCamera.h:189
Definition RenderChunkInstanced.h:5
Definition RenderChunkShared.h:5
Definition SkyRenderObject.h:5
Definition TerrainLayer.h:5
Definition TerrainMaterialVariationManager.h:5
Definition ViewRenderData.h:5
Definition ViewRenderObject.h:5
Definition _HeaderOutputPredefine.h:273