Survivalcraft API 1.8.2.3 v1.8.2.3
Survivalcraft 2.4
载入中...
搜索中...
未找到
Game.TerrainUpdater
Game.TerrainUpdater 的协作图:

class  UpdateStatistics
struct  UpdateLocation
struct  UpdateParameters
struct  LightSource

Public 成员函数

 TerrainUpdater ()
 TerrainUpdater (SubsystemTerrain subsystemTerrain)
virtual void Dispose ()
virtual void RequestSynchronousUpdate ()
virtual void SetUpdateLocation (int locationIndex, Vector2 center, float visibilityDistance, float contentDistance)
virtual void RemoveUpdateLocation (int locationIndex)
virtual float GetUpdateProgress (int locationIndex, float visibilityDistance, float contentDistance)
virtual void Update ()
virtual void PrepareForDrawing (Camera camera)
virtual void DowngradeChunkNeighborhoodState (Point2 coordinates, int radius, TerrainChunkState state, bool forceGeometryRegeneration)
virtual void DowngradeAllChunksState (TerrainChunkState state, bool forceGeometryRegeneration)
virtual bool AllocateAndFreeChunks (UpdateLocation[] locations)
virtual bool SendReceiveChunkStates ()
virtual void SendReceiveChunkStatesThread ()
virtual void ThreadUpdateFunction ()
virtual bool SynchronousUpdateFunction ()
virtual TerrainChunk FindBestChunkToUpdate (out TerrainChunkState desiredState)
virtual List< TerrainChunkDetermineSynchronousUpdateChunks (Vector3 viewPosition, Vector3 viewDirection)
virtual void UpdateChunkSingleStep (TerrainChunk chunk, int skylightValue)
virtual void GenerateChunkSunLightAndHeight (TerrainChunk chunk, int skylightValue)
virtual void GenerateChunkLightSources (TerrainChunk chunk)
virtual void GenerateChunkEdgeLightSources (TerrainChunk chunk, int face)
virtual void PropagateLightSource (int x, int y, int z, int light)
virtual void PropagateLightSources ()
virtual void PropagateLightSource (TerrainChunk chunk, int x, int y, int z, int light)
virtual void GenerateChunkVertices (TerrainChunk chunk, int stage)
virtual void CalculateChunkSliceContentsHashes (TerrainChunk chunk)
virtual void NotifyBlockBehaviors (TerrainChunk chunk)
virtual void UnpauseUpdateThread ()
virtual void SettingsManager_SettingChanged (string name)

静态 Public 成员函数

static bool IsChunkInRange (Vector2 chunkCenter, ref UpdateLocation location)
static bool IsChunkInRange (Vector2 chunkCenter, UpdateLocation[] locations)

Public 属性

FloatCurve TemperatureCurve
FloatCurve HumidityCurve
SubsystemTerrain m_subsystemTerrain
SubsystemGameInfo m_subsystemGameInfo
SubsystemSky m_subsystemSky
SubsystemSeasons m_subsystemSeasons
SubsystemAnimatedTextures m_subsystemAnimatedTextures
SubsystemBlockBehaviors m_subsystemBlockBehaviors
Terrain m_terrain
DynamicArray< LightSourcem_lightSources = []
UpdateStatistics m_statistics = new()
Task m_task
AutoResetEvent m_updateEvent = new(true)
ManualResetEvent m_pauseEvent = new(true)
volatile bool m_quitUpdateThread
bool m_unpauseUpdateThread
object m_updateParametersLock = new()
object m_unpauseLock = new()
UpdateParameters m_updateParameters
UpdateParameters m_threadUpdateParameters
int m_lastSkylightValue
int m_synchronousUpdateFrame
Dictionary< int, UpdateLocation?> m_pendingLocations = []

静态 Public 属性

const int m_lightAttenuationWithDistance = 1
const float m_updateHysteresis = 8f
static int ChunkUpdates
static int SlowTerrainUpdate
static bool LogTerrainUpdateStats = false

属性

AutoResetEvent UpdateEvent [get]

事件

Action< TerrainChunkChunkInitialized

详细描述

在文件 TerrainUpdater.cs5 行定义.

构造及析构函数说明

◆ TerrainUpdater() [1/2]

Game.TerrainUpdater.TerrainUpdater ( )

在文件 TerrainUpdater.cs221 行定义.

◆ TerrainUpdater() [2/2]

Game.TerrainUpdater.TerrainUpdater ( SubsystemTerrain subsystemTerrain)

在文件 TerrainUpdater.cs223 行定义.

函数调用图:

成员函数说明

◆ AllocateAndFreeChunks()

virtual bool Game.TerrainUpdater.AllocateAndFreeChunks ( UpdateLocation[] locations)
virtual

在文件 TerrainUpdater.cs459 行定义.

函数调用图:
这是这个函数的调用关系图:

◆ CalculateChunkSliceContentsHashes()

virtual void Game.TerrainUpdater.CalculateChunkSliceContentsHashes ( TerrainChunk chunk)
virtual

在文件 TerrainUpdater.cs1228 行定义.

函数调用图:
这是这个函数的调用关系图:

◆ DetermineSynchronousUpdateChunks()

virtual List< TerrainChunk > Game.TerrainUpdater.DetermineSynchronousUpdateChunks ( Vector3 viewPosition,
Vector3 viewDirection )
virtual

在文件 TerrainUpdater.cs627 行定义.

函数调用图:
这是这个函数的调用关系图:

◆ Dispose()

virtual void Game.TerrainUpdater.Dispose ( )
virtual

在文件 TerrainUpdater.cs239 行定义.

函数调用图:

◆ DowngradeAllChunksState()

virtual void Game.TerrainUpdater.DowngradeAllChunksState ( TerrainChunkState state,
bool forceGeometryRegeneration )
virtual

在文件 TerrainUpdater.cs434 行定义.

函数调用图:
这是这个函数的调用关系图:

◆ DowngradeChunkNeighborhoodState()

virtual void Game.TerrainUpdater.DowngradeChunkNeighborhoodState ( Point2 coordinates,
int radius,
TerrainChunkState state,
bool forceGeometryRegeneration )
virtual

在文件 TerrainUpdater.cs416 行定义.

函数调用图:
这是这个函数的调用关系图:

◆ FindBestChunkToUpdate()

virtual TerrainChunk Game.TerrainUpdater.FindBestChunkToUpdate ( out TerrainChunkState desiredState)
virtual

在文件 TerrainUpdater.cs593 行定义.

函数调用图:
这是这个函数的调用关系图:

◆ GenerateChunkEdgeLightSources()

virtual void Game.TerrainUpdater.GenerateChunkEdgeLightSources ( TerrainChunk chunk,
int face )
virtual

在文件 TerrainUpdater.cs961 行定义.

函数调用图:
这是这个函数的调用关系图:

◆ GenerateChunkLightSources()

virtual void Game.TerrainUpdater.GenerateChunkLightSources ( TerrainChunk chunk)
virtual

在文件 TerrainUpdater.cs880 行定义.

函数调用图:
这是这个函数的调用关系图:

◆ GenerateChunkSunLightAndHeight()

virtual void Game.TerrainUpdater.GenerateChunkSunLightAndHeight ( TerrainChunk chunk,
int skylightValue )
virtual

在文件 TerrainUpdater.cs812 行定义.

函数调用图:
这是这个函数的调用关系图:

◆ GenerateChunkVertices()

virtual void Game.TerrainUpdater.GenerateChunkVertices ( TerrainChunk chunk,
int stage )
virtual

在文件 TerrainUpdater.cs1131 行定义.

函数调用图:
这是这个函数的调用关系图:

◆ GetUpdateProgress()

virtual float Game.TerrainUpdater.GetUpdateProgress ( int locationIndex,
float visibilityDistance,
float contentDistance )
virtual

在文件 TerrainUpdater.cs275 行定义.

函数调用图:

◆ IsChunkInRange() [1/2]

bool Game.TerrainUpdater.IsChunkInRange ( Vector2 chunkCenter,
ref UpdateLocation location )
static

在文件 TerrainUpdater.cs447 行定义.

这是这个函数的调用关系图:

◆ IsChunkInRange() [2/2]

bool Game.TerrainUpdater.IsChunkInRange ( Vector2 chunkCenter,
UpdateLocation[] locations )
static

在文件 TerrainUpdater.cs450 行定义.

函数调用图:

◆ NotifyBlockBehaviors()

virtual void Game.TerrainUpdater.NotifyBlockBehaviors ( TerrainChunk chunk)
virtual

在文件 TerrainUpdater.cs1299 行定义.

函数调用图:
这是这个函数的调用关系图:

◆ PrepareForDrawing()

virtual void Game.TerrainUpdater.PrepareForDrawing ( Camera camera)
virtual

在文件 TerrainUpdater.cs392 行定义.

函数调用图:

◆ PropagateLightSource() [1/2]

virtual void Game.TerrainUpdater.PropagateLightSource ( int x,
int y,
int z,
int light )
virtual

在文件 TerrainUpdater.cs1035 行定义.

函数调用图:
这是这个函数的调用关系图:

◆ PropagateLightSource() [2/2]

virtual void Game.TerrainUpdater.PropagateLightSource ( TerrainChunk chunk,
int x,
int y,
int z,
int light )
virtual

在文件 TerrainUpdater.cs1113 行定义.

函数调用图:

◆ PropagateLightSources()

virtual void Game.TerrainUpdater.PropagateLightSources ( )
virtual

在文件 TerrainUpdater.cs1053 行定义.

函数调用图:
这是这个函数的调用关系图:

◆ RemoveUpdateLocation()

virtual void Game.TerrainUpdater.RemoveUpdateLocation ( int locationIndex)
virtual

在文件 TerrainUpdater.cs271 行定义.

◆ RequestSynchronousUpdate()

virtual void Game.TerrainUpdater.RequestSynchronousUpdate ( )
virtual

在文件 TerrainUpdater.cs252 行定义.

◆ SendReceiveChunkStates()

virtual bool Game.TerrainUpdater.SendReceiveChunkStates ( )
virtual

在文件 TerrainUpdater.cs517 行定义.

这是这个函数的调用关系图:

◆ SendReceiveChunkStatesThread()

virtual void Game.TerrainUpdater.SendReceiveChunkStatesThread ( )
virtual

在文件 TerrainUpdater.cs534 行定义.

这是这个函数的调用关系图:

◆ SettingsManager_SettingChanged()

virtual void Game.TerrainUpdater.SettingsManager_SettingChanged ( string name)
virtual

在文件 TerrainUpdater.cs1334 行定义.

函数调用图:
这是这个函数的调用关系图:

◆ SetUpdateLocation()

virtual void Game.TerrainUpdater.SetUpdateLocation ( int locationIndex,
Vector2 center,
float visibilityDistance,
float contentDistance )
virtual

在文件 TerrainUpdater.cs256 行定义.

函数调用图:
这是这个函数的调用关系图:

◆ SynchronousUpdateFunction()

virtual bool Game.TerrainUpdater.SynchronousUpdateFunction ( )
virtual

在文件 TerrainUpdater.cs571 行定义.

函数调用图:
这是这个函数的调用关系图:

◆ ThreadUpdateFunction()

virtual void Game.TerrainUpdater.ThreadUpdateFunction ( )
virtual

在文件 TerrainUpdater.cs548 行定义.

函数调用图:
这是这个函数的调用关系图:

◆ UnpauseUpdateThread()

virtual void Game.TerrainUpdater.UnpauseUpdateThread ( )
virtual

在文件 TerrainUpdater.cs1327 行定义.

这是这个函数的调用关系图:

◆ Update()

virtual void Game.TerrainUpdater.Update ( )
virtual

在文件 TerrainUpdater.cs318 行定义.

函数调用图:

◆ UpdateChunkSingleStep()

virtual void Game.TerrainUpdater.UpdateChunkSingleStep ( TerrainChunk chunk,
int skylightValue )
virtual

在文件 TerrainUpdater.cs651 行定义.

函数调用图:
这是这个函数的调用关系图:

类成员变量说明

◆ ChunkUpdates

int Game.TerrainUpdater.ChunkUpdates
static

在文件 TerrainUpdater.cs211 行定义.

◆ HumidityCurve

FloatCurve Game.TerrainUpdater.HumidityCurve
初始值:
= new(
new Vector2(0f, 0f),
new Vector2(0.25f, 0f),
new Vector2(0.5f, 0f),
new Vector2(0.75f, 0f),
new Vector2(1f, 0f)
)

在文件 TerrainUpdater.cs157 行定义.

◆ LogTerrainUpdateStats

bool Game.TerrainUpdater.LogTerrainUpdateStats = false
static

在文件 TerrainUpdater.cs215 行定义.

◆ m_lastSkylightValue

int Game.TerrainUpdater.m_lastSkylightValue

在文件 TerrainUpdater.cs205 行定义.

◆ m_lightAttenuationWithDistance

const int Game.TerrainUpdater.m_lightAttenuationWithDistance = 1
static

在文件 TerrainUpdater.cs165 行定义.

◆ m_lightSources

DynamicArray<LightSource> Game.TerrainUpdater.m_lightSources = []

在文件 TerrainUpdater.cs183 行定义.

◆ m_pauseEvent

ManualResetEvent Game.TerrainUpdater.m_pauseEvent = new(true)

在文件 TerrainUpdater.cs191 行定义.

◆ m_pendingLocations

Dictionary<int, UpdateLocation?> Game.TerrainUpdater.m_pendingLocations = []

在文件 TerrainUpdater.cs209 行定义.

◆ m_quitUpdateThread

volatile bool Game.TerrainUpdater.m_quitUpdateThread

在文件 TerrainUpdater.cs193 行定义.

◆ m_statistics

UpdateStatistics Game.TerrainUpdater.m_statistics = new()

在文件 TerrainUpdater.cs185 行定义.

◆ m_subsystemAnimatedTextures

SubsystemAnimatedTextures Game.TerrainUpdater.m_subsystemAnimatedTextures

在文件 TerrainUpdater.cs177 行定义.

◆ m_subsystemBlockBehaviors

SubsystemBlockBehaviors Game.TerrainUpdater.m_subsystemBlockBehaviors

在文件 TerrainUpdater.cs179 行定义.

◆ m_subsystemGameInfo

SubsystemGameInfo Game.TerrainUpdater.m_subsystemGameInfo

在文件 TerrainUpdater.cs171 行定义.

◆ m_subsystemSeasons

SubsystemSeasons Game.TerrainUpdater.m_subsystemSeasons

在文件 TerrainUpdater.cs175 行定义.

◆ m_subsystemSky

SubsystemSky Game.TerrainUpdater.m_subsystemSky

在文件 TerrainUpdater.cs173 行定义.

◆ m_subsystemTerrain

SubsystemTerrain Game.TerrainUpdater.m_subsystemTerrain

在文件 TerrainUpdater.cs169 行定义.

◆ m_synchronousUpdateFrame

int Game.TerrainUpdater.m_synchronousUpdateFrame

在文件 TerrainUpdater.cs207 行定义.

◆ m_task

Task Game.TerrainUpdater.m_task

在文件 TerrainUpdater.cs187 行定义.

◆ m_terrain

Terrain Game.TerrainUpdater.m_terrain

在文件 TerrainUpdater.cs181 行定义.

◆ m_threadUpdateParameters

UpdateParameters Game.TerrainUpdater.m_threadUpdateParameters

在文件 TerrainUpdater.cs203 行定义.

◆ m_unpauseLock

object Game.TerrainUpdater.m_unpauseLock = new()

在文件 TerrainUpdater.cs199 行定义.

◆ m_unpauseUpdateThread

bool Game.TerrainUpdater.m_unpauseUpdateThread

在文件 TerrainUpdater.cs195 行定义.

◆ m_updateEvent

AutoResetEvent Game.TerrainUpdater.m_updateEvent = new(true)

在文件 TerrainUpdater.cs189 行定义.

◆ m_updateHysteresis

const float Game.TerrainUpdater.m_updateHysteresis = 8f
static

在文件 TerrainUpdater.cs167 行定义.

◆ m_updateParameters

UpdateParameters Game.TerrainUpdater.m_updateParameters

在文件 TerrainUpdater.cs201 行定义.

◆ m_updateParametersLock

object Game.TerrainUpdater.m_updateParametersLock = new()

在文件 TerrainUpdater.cs197 行定义.

◆ SlowTerrainUpdate

int Game.TerrainUpdater.SlowTerrainUpdate
static

在文件 TerrainUpdater.cs213 行定义.

◆ TemperatureCurve

FloatCurve Game.TerrainUpdater.TemperatureCurve
初始值:
= new(
new Vector2(0f, 0f),
new Vector2(0.125f, 0f),
new Vector2(0.25f, 0f),
new Vector2(0.375f, -4f),
new Vector2(0.5f, -12f),
new Vector2(0.625f, -24f),
new Vector2(0.75f, -12f),
new Vector2(0.875f, -4f),
new Vector2(1f, 0f)
)

在文件 TerrainUpdater.cs145 行定义.

属性说明

◆ UpdateEvent

AutoResetEvent Game.TerrainUpdater.UpdateEvent
get

在文件 TerrainUpdater.cs217 行定义.

事件说明

◆ ChunkInitialized

Action<TerrainChunk> Game.TerrainUpdater.ChunkInitialized

在文件 TerrainUpdater.cs219 行定义.


该类的文档由以下文件生成:
  • E:/sc/doxygen/SurvivalcraftApi 1.8.2.3/Survivalcraft.Windows/Game/TerrainUpdater.cs