Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
ParticleEngine Class Reference
Inheritance diagram for ParticleEngine:

Public Types

using ParticleBin = ::std::vector<::std::unique_ptr<::Particle>>
using ParticleTextureMap = ::std::unordered_map<::ParticleType, ::std::vector<::std::unique_ptr<::Particle>>>

Public Member Functions

ParticleEngine & operator= (ParticleEngine const &)
 ParticleEngine (ParticleEngine const &)
MCAPI ParticleEngine (::Level &level, ::Bedrock::NotNullNonOwnerPtr<::SeasonsRenderer > seasons, ::LightTexture &lightTexture)
MCAPI ::std::unique_ptr<::Particle > _create (::ParticleType type)
MCAPI void _emitParticleNew (::ParticleSystemEngine &particleSystemEngine, ::ParticleType type, ::Vec3 const &pos, ::Vec3 const &dir, int data)
MCAPI::ParticleLayerRenderObject _extractParticleLayer (::ScreenContext &screenContext, ::ParticleRenderContext const &particleRenderContext, ::ParticleLayer particleLayer, ::mce::MaterialPtr const &mat) const
MCAPI void addCustomParticle (::std::unique_ptr<::CustomParticle > particle)
MCAPI void clear ()
MCAPI::ParticleRenderObjectCollection extract (::ScreenContext &screenContext, ::Vec3 const &cameraPos, ::Vec3 const &viewOff, float minDist) const
MCAPI::ParticleRenderObjectCollection extractEmptyCollection (::ScreenContext &screenContext) const
MCAPI::Particle * instance (::ParticleType type, ::Vec3 const &pos, ::Vec3 const &dir, int data, ::ParticleSystemEngine *particleSystemEngine, ::CompoundTag const *tag)
MCAPI void tick ()
MCAPI void * $ctor (::Level &level, ::Bedrock::NotNullNonOwnerPtr<::SeasonsRenderer > seasons, ::LightTexture &lightTexture)
MCFOLD void $dtor ()

Static Public Member Functions

static MCAPI void render (::ScreenContext &screenContext, ::ParticleLayerRenderObject const &particleState)
static MCAPI void ** $vftable ()

Public Attributes

::ll::TypedStorage< 8, 2544, ::std::vector<::std::unique_ptr<::Particle > >[106]> mInactiveParticlesPool
::ll::TypedStorage< 8, 8, ::Level & > mLevel
::ll::TypedStorage< 8, 6784, ::std::unordered_map<::ParticleType, ::std::vector<::std::unique_ptr<::Particle > > >[106]> mActiveParticles
::ll::TypedStorage< 8, 24, ::std::vector<::std::unique_ptr<::CustomParticle > > > customParticles
::ll::TypedStorage< 8, 24, ::std::vector<::std::unique_ptr<::Particle > > > mNewParticles
::ll::TypedStorage< 8, 24, ::Bedrock::NonOwnerPointer<::SeasonsRenderer > > mSeasons
::ll::TypedStorage< 8, 8, ::LightTexture & > mLightTexture
::ll::TypedStorage< 8, 16, ::mce::MaterialPtr > opaqueMat
::ll::TypedStorage< 8, 16, ::mce::MaterialPtr > alphaTestMat
::ll::TypedStorage< 8, 16, ::mce::MaterialPtr > blendMat
::ll::TypedStorage< 4, 424, uint[106]> maxParticleCount
::ll::TypedStorage< 4, 424, uint[106]> particleCount
::ll::TypedStorage< 1, 1, bool > mTemporaryCameraActive
::ll::TypedStorage< 8, 64, ::std::unordered_map<::ParticleType, ::HashedString > > mNewParticleSystemJsonLookup
::ll::TypedStorage< 8, 64, ::std::unordered_map< ::ParticleType, ::Bedrock::slot_map_handle<::std::unique_ptr<::ParticleSystem::ParticleEmitter >, 64, 32 > > > mNewParticleSystemMap
::std::shared_ptr<::Bedrock::EnableNonOwnerReferences::ControlBlock > mControlBlock

Constructor & Destructor Documentation

◆ ParticleEngine()

MCAPI ParticleEngine::ParticleEngine ( ::Level & level,
::Bedrock::NotNullNonOwnerPtr<::SeasonsRenderer > seasons,
::LightTexture & lightTexture )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

Member Function Documentation

◆ _create()

MCAPI ::std::unique_ptr<::Particle > ParticleEngine::_create ( ::ParticleType type)
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ _extractParticleLayer()

MCAPI::ParticleLayerRenderObject ParticleEngine::_extractParticleLayer ( ::ScreenContext & screenContext,
::ParticleRenderContext const & particleRenderContext,
::ParticleLayer particleLayer,
::mce::MaterialPtr const & mat ) const
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ addCustomParticle()

MCAPI void ParticleEngine::addCustomParticle ( ::std::unique_ptr<::CustomParticle > particle)
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ extract()

MCAPI::ParticleRenderObjectCollection ParticleEngine::extract ( ::ScreenContext & screenContext,
::Vec3 const & cameraPos,
::Vec3 const & viewOff,
float minDist ) const
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ extractEmptyCollection()

MCAPI::ParticleRenderObjectCollection ParticleEngine::extractEmptyCollection ( ::ScreenContext & screenContext) const
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ instance()

MCAPI::Particle * ParticleEngine::instance ( ::ParticleType type,
::Vec3 const & pos,
::Vec3 const & dir,
int data,
::ParticleSystemEngine * particleSystemEngine,
::CompoundTag const * tag )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ tick()

MCAPI void ParticleEngine::tick ( )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ $ctor()

MCAPI void * ParticleEngine::$ctor ( ::Level & level,
::Bedrock::NotNullNonOwnerPtr<::SeasonsRenderer > seasons,
::LightTexture & lightTexture )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ $vftable()

MCAPI void ** Bedrock::EnableNonOwnerReferences::$vftable ( )
staticinherited
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

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