sead
Loading...
Searching...
No Matches
agl::lght::LightMapMgr Class Reference

#include <aglLightMapMgr.h>

Inherits agl::utl::IParameterIO, and sead::hostio::Node.

Classes

class  CPUTexture
class  CreateArg
class  LUT

Public Member Functions

 LightMapMgr ()
virtual ~LightMapMgr ()
void initialize (const env::EnvObjBuffer::AllocateArg &alloc_arg, const CreateArg &create_arg, env::EnvObjMgr *p_env_mgr, sead::Heap *heap=nullptr)
void update ()
void updateGPU (bool invalidate_gpu=false) const
void updateViewGPU (s32 view_index, bool ignore_mapping_type, const sead::Matrix34f &view_mtx, bool invalidate_gpu=false) const
ShaderMode draw (s32 view_index, bool ignore_mapping_type, ShaderMode mode) const
LightMapgetLightMap (s32 index)
const LightMapgetLightMap (s32 index) const
s32 searchIndex (const sead::SafeString &name) const
Public Member Functions inherited from agl::utl::IParameterIO
 IParameterIO ()
 IParameterIO (const sead::SafeString &type, u32 version=0)
virtual ~IParameterIO ()
virtual bool save (const sead::SafeString &, u32) const
virtual void applyResParameterArchive (ResParameterArchive arc)
virtual void applyResParameterArchiveLerp (ResParameterArchive arc_a, ResParameterArchive arc_b, f32 t)
void setDelegate (void *delegate)
Public Member Functions inherited from agl::utl::IParameterList
 IParameterList ()
void addList (IParameterList *child, const sead::SafeString &name)
void addObj (IParameterObj *child, const sead::SafeString &name)
void applyResParameterList (ResParameterList list)
bool isApply (ResParameterList list) const

Protected Member Functions

virtual void postRead_ ()
Protected Member Functions inherited from agl::utl::IParameterIO
virtual void callbackInvalidVersion_ (ResParameterArchive arc)
Protected Member Functions inherited from agl::utl::IParameterList
virtual bool preWrite_ () const
virtual void postWrite_ () const
virtual bool preRead_ ()
virtual bool isApply_ (ResParameterList list) const
virtual void callbackNotAppliable_ (IParameterObj *, ResParameter)
void setParameterListName_ (const sead::SafeString &name)
void applyResParameterList_ (ResParameterList list, bool lerp=false, f32 t=1.0f)
void applyResParameterListB_ (ResParameterList list, f32 t)

Private Types

enum  LUTType {
  cLUT_Lambert = 0 , cLUT_Half_Lambert , cLUT_Hemisphere , cLUT_UserData_0 ,
  cLUT_UserData_Num = 29 , cLUT_Num = cLUT_UserData_0 + cLUT_UserData_Num
}
typedef LightMap::GraphicsContext GraphicsContext

Private Member Functions

void updateLUT_ ()
void createNormalMap_ (s32 size_sphere, s32 size_cube)
void constructList_ ()
void constructMemory_ ()

Private Attributes

sead::Buffer< LightMapmLightMap
sead::PtrArray< LightMapmLightMapCalc
CPUTexture mCPUTextureLUT
CPUTexture mCPUTextureSphereNormal
CPUTexture mCPUTextureCubeNormal
sead::UnsafeArray< LUT, cLUT_NummLUT
GraphicsContext mGraphicsContext
utl::IParameterObj mConfig
utl::Parameter< sead::FixedSafeString< 32 > > mType
utl::IParameterObj mLUTParam
f32 _2b84
u32 _2b88
utl::DebugTexturePage mDebugTexturePage
sead::HeapmpLightMapHeap

Static Private Attributes

static const s32 cLUTValueNum = 128

Friends

class LightMap

Additional Inherited Members

Protected Attributes inherited from agl::utl::IParameterIO
sead::FixedSafeString< 64 > mType
u32 mVersion
void * mpDelegate
sead::FixedSafeString< 256 > mSaveFilePath
Protected Attributes inherited from agl::utl::IParameterList
sead::OffsetList< IParameterListmChildList
sead::OffsetList< IParameterObjmChildObj
sead::FixedSafeString< 64 > mName
u32 mNameHash
sead::ListNode mListNode
IParameterListmpParent

Member Typedef Documentation

◆ GraphicsContext

Member Enumeration Documentation

◆ LUTType

Enumerator
cLUT_Lambert 
cLUT_Half_Lambert 
cLUT_Hemisphere 
cLUT_UserData_0 
cLUT_UserData_Num 
cLUT_Num 

Constructor & Destructor Documentation

◆ LightMapMgr()

agl::lght::LightMapMgr::LightMapMgr ( )

◆ ~LightMapMgr()

agl::lght::LightMapMgr::~LightMapMgr ( )
virtual

Member Function Documentation

◆ initialize()

void agl::lght::LightMapMgr::initialize ( const env::EnvObjBuffer::AllocateArg & alloc_arg,
const CreateArg & create_arg,
env::EnvObjMgr * p_env_mgr,
sead::Heap * heap = nullptr )

◆ update()

void agl::lght::LightMapMgr::update ( )

◆ updateGPU()

void agl::lght::LightMapMgr::updateGPU ( bool invalidate_gpu = false) const

◆ updateViewGPU()

void agl::lght::LightMapMgr::updateViewGPU ( s32 view_index,
bool ignore_mapping_type,
const sead::Matrix34f & view_mtx,
bool invalidate_gpu = false ) const

◆ draw()

ShaderMode agl::lght::LightMapMgr::draw ( s32 view_index,
bool ignore_mapping_type,
ShaderMode mode ) const

◆ getLightMap() [1/2]

LightMap * agl::lght::LightMapMgr::getLightMap ( s32 index)
inline

◆ getLightMap() [2/2]

const LightMap * agl::lght::LightMapMgr::getLightMap ( s32 index) const
inline

◆ searchIndex()

s32 agl::lght::LightMapMgr::searchIndex ( const sead::SafeString & name) const

◆ postRead_()

void agl::lght::LightMapMgr::postRead_ ( )
protectedvirtual

Reimplemented from agl::utl::IParameterList.

◆ updateLUT_()

void agl::lght::LightMapMgr::updateLUT_ ( )
private

◆ createNormalMap_()

void agl::lght::LightMapMgr::createNormalMap_ ( s32 size_sphere,
s32 size_cube )
private

◆ constructList_()

void agl::lght::LightMapMgr::constructList_ ( )
private

◆ constructMemory_()

void agl::lght::LightMapMgr::constructMemory_ ( )
private

◆ LightMap

friend class LightMap
friend

Member Data Documentation

◆ cLUTValueNum

const s32 agl::lght::LightMapMgr::cLUTValueNum = 128
staticprivate

◆ mLightMap

sead::Buffer<LightMap> agl::lght::LightMapMgr::mLightMap
private

◆ mLightMapCalc

sead::PtrArray<LightMap> agl::lght::LightMapMgr::mLightMapCalc
private

◆ mCPUTextureLUT

CPUTexture agl::lght::LightMapMgr::mCPUTextureLUT
private

◆ mCPUTextureSphereNormal

CPUTexture agl::lght::LightMapMgr::mCPUTextureSphereNormal
private

◆ mCPUTextureCubeNormal

CPUTexture agl::lght::LightMapMgr::mCPUTextureCubeNormal
private

◆ mLUT

sead::UnsafeArray<LUT, cLUT_Num> agl::lght::LightMapMgr::mLUT
private

◆ mGraphicsContext

GraphicsContext agl::lght::LightMapMgr::mGraphicsContext
private

◆ mConfig

utl::IParameterObj agl::lght::LightMapMgr::mConfig
private

◆ mType

utl::Parameter< sead::FixedSafeString<32> > agl::lght::LightMapMgr::mType
private

◆ mLUTParam

utl::IParameterObj agl::lght::LightMapMgr::mLUTParam
private

◆ _2b84

f32 agl::lght::LightMapMgr::_2b84
private

◆ _2b88

u32 agl::lght::LightMapMgr::_2b88
private

◆ mDebugTexturePage

utl::DebugTexturePage agl::lght::LightMapMgr::mDebugTexturePage
private

◆ mpLightMapHeap

sead::Heap* agl::lght::LightMapMgr::mpLightMapHeap
private