XLE  v0.02.0
Classes | Public Types | Public Member Functions | Protected Types | Protected Attributes | List of all members
SceneEngine::ShallowWaterSim Class Reference

Classes

struct  BorderMode
 
class  Desc
 
class  SimSettings
 
class  SimulationContext
 

Public Types

using SRV = RenderCore::Metal::ShaderResourceView
 
using UAV = RenderCore::Metal::UnorderedAccessView
 
using MetalContext = RenderCore::Metal::DeviceContext
 

Public Member Functions

void ExecuteSim (const SimulationContext &context, LightingParserContext &parserContext, const SimSettings &settings, unsigned bufferCounter, const Int2 *validGridBegin=nullptr, const Int2 *validGridEnd=nullptr)
 
void ExecuteInternalSimulation (const SimulationContext &context, const SimSettings &settings, unsigned bufferCounter)
 
void BeginElements (const SimulationContext &context, const Int2 *newElementsBegin, const Int2 *newElementsEnd)
 
void BindForOceanRender (MetalContext &context, unsigned bufferCounter)
 
void UnbindForOceanRender (MetalContext &metalContext)
 
void BindForErosionSimulation (MetalContext &context, unsigned bufferCounter)
 
void RenderWireframe (MetalContext &context, LightingParserContext &parserContext, const DeepOceanSimSettings &oceanSettings, float gridPhysicalDimension, Float2 offset, unsigned bufferCounter, BorderMode::Enum borderMode)
 
void RenderVelocities (MetalContext &context, LightingParserContext &parserContext, const DeepOceanSimSettings &oceanSettings, float gridPhysicalDimension, Float2 offset, unsigned bufferCounter, BorderMode::Enum borderMode, bool showErosion)
 
unsigned GetGridDimension () const
 
bool IsActive () const
 
unsigned FindActiveGrid (Int2 gridCoords)
 
RenderCore::SharedPkt BuildCellConstants (Int2 gridCoords)
 
 ShallowWaterSim (const Desc &desc)
 

Protected Types

using ResLocator = intrusive_ptr< BufferUploads::ResourceLocator >
 

Protected Attributes

std::unique_ptr< ShallowWaterGrid > _simulationGrid
 
ResLocator _lookupTable
 
SRV _lookupTableSRV
 
UAV _lookupTableUAV
 
std::vector< ActiveElement > _activeSimulationElements
 
std::vector< unsigned > _poolOfUnallocatedArrayIndices
 
unsigned _simulatingGridsCount
 
unsigned _gridDimension
 
bool _usePipeModel
 

The documentation for this class was generated from the following files: