My Project
|
Classes | |
struct | TechniqueDescDX |
a technique description More... | |
Public Member Functions | |
CEffectFileDirectX (const char *filename) | |
CEffectFileDirectX (const AssetKey &key) | |
virtual HRESULT | InitDeviceObjects () |
virtual HRESULT | RestoreDeviceObjects () |
virtual HRESULT | InvalidateDeviceObjects () |
virtual HRESULT | DeleteDeviceObjects () |
bool | loadResource () |
bool | saveResource (const char *filename=0) |
void | SetFileName (const std::string &filename) |
set inner file name, usually at the load time. More... | |
bool | begin (bool bApplyParam=true, DWORD flag=D3DXFX_DONOTSAVESTATE|D3DXFX_DONOTSAVESAMPLERSTATE|D3DXFX_DONOTSAVESHADERSTATE, bool bForceBegin=false) |
bool | BeginPass (int pass, bool bForceBegin=false) |
void | CommitChanges () |
void | EndPass (bool bForceEnd=false) |
void | end (bool bForceEnd=false) |
void | EnableShareMode (bool bEnable) |
bool | IsInShareMode () |
bool | BeginSharePassMode (bool bApplyParam=true, DWORD flag=D3DXFX_DONOTSAVESTATE|D3DXFX_DONOTSAVESAMPLERSTATE|D3DXFX_DONOTSAVESHADERSTATE, bool bForceBegin=true) |
This is a handy function that calls EnableShareMode(true), begin() and then BeginPass(). | |
void | EndSharePassMode () |
This is a handy function that calls EnableShareMode(false), EndPass(true), end(true). | |
void | OnSwitchInShader () |
this is called when the shader is selected by the pipeline. More... | |
void | OnSwitchOutShader () |
this is called when the shader is deselected by the pipeline. More... | |
bool | SetFirstValidTechniqueByCategory (TechniqueCategory nCat) |
Set technique if it is different from the current one. More... | |
bool | SetTechniqueByIndex (int nIndex) |
Set technique if it is different from the current one. More... | |
const TechniqueDesc * | GetCurrentTechniqueDesc () |
get the current technique description. More... | |
int | GetCurrentTechniqueIndex () |
current technique index. More... | |
LPD3DXEFFECT | effect () const |
int | totalPasses () const |
bool | isParameterUsed (eParameterHandles index) const |
bool | isMatrixUsed (eParameterHandles index) const |
bool | isTextureUsed (int index) const |
bool | isTextureMatrixUsed (int index) const |
bool | isShadowTextureUsed () const |
bool | setParameter (eParameterHandles index, const void *data, INT32 size=D3DX_DEFAULT) const |
bool | setBool (eParameterHandles index, BOOL bBoolean) const |
bool | setInt (eParameterHandles index, int nValue) const |
bool | setFloat (eParameterHandles index, float fValue) const |
bool | setMatrix (eParameterHandles index, const Matrix4 *data) const |
bool | setMatrixArray (eParameterHandles index, const Matrix4 *data, UINT32 count) const |
bool | setMatrixInArray (eParameterHandles index, UINT32 element, const Matrix4 *data) const |
bool | setFloatArray (eParameterHandles index, const float *data, UINT32 count) const |
bool | setVectorArray (eParameterHandles index, const Vector4 *pVector, UINT count) const |
bool | setFloatInArray (eParameterHandles index, UINT32 element, float data) const |
bool | setTexture (int index, TextureEntity *data) |
bool | setTexture (int index, LPDIRECT3DTEXTURE9 pTex) |
bool | setTextureInternal (int index, LPDIRECT3DTEXTURE9 pTex) |
bool | setTextureMatrix (int index, const Matrix4 *data) const |
void | SetShadowMapSize (int nsize) |
void | SetShadowRadius (float fRadius) |
set the shadow radius | |
void | applySurfaceMaterial (const ParaMaterial *pSurfaceMaterial, bool bUseGlobalAmbient=true) |
void | applyCameraMatrices () |
void | applyWorldMatrices () |
void | applyGlobalLightingData (CSunLight &sunlight) |
void | applyLocalLightingData (const LightList *lights, int nLightNum) |
void | applyFogParameters (bool bEnableFog, const Vector4 *fogParam, const LinearColor *fogColor) |
void | applyLayersNum (int nLayers) |
void | applyTexWorldViewProj (const Matrix4 *mat) |
void | EnableAlphaBlending (bool bAlphaBlending) |
whether to enable alpha blending in shader. More... | |
void | EnableAlphaTesting (bool bAlphaTesting) |
whether to enable alpha testing | |
void | EnableSunLight (bool bEnableSunLight) |
whether to enable sun light calculation | |
void | EnableShadowmap (int nShadowMethod) |
whether to enable rendering with shadow map More... | |
bool | SetBoolean (int nIndex, bool value) |
set a boolean parameter. More... | |
bool | EnableEnvironmentMapping (bool bEnable) |
enable environment mapping More... | |
bool | EnableReflectionMapping (bool bEnable, float fSurfaceHeight=0.f) |
enable reflection mapping More... | |
void | SetReflectFactor (float fFactor) |
set shader parameter "reflectFactor" More... | |
void | EnableNormalMap (bool bEnable) |
whether to enable the use of normal map More... | |
void | EnableLightMap (bool bEnable) |
whether to enable the use of light map More... | |
LPD3DXEFFECT | GetDXEffect () |
get directX effect object associated with this object. More... | |
virtual CParameterBlock * | GetParamBlock (bool bCreateIfNotExist=false) |
get effect parameter block with this object. More... | |
void | LockTexture (int nIndex) |
Lock a texture at a given index. More... | |
void | UnLockTexture (int nIndex) |
UnLock a texture at a given index. More... | |
bool | IsTextureLocked (int nIndex) const |
check whether a given texture is locked at the given index. More... | |
D3DXHANDLE & | GetTextureHandle (int nIndex) |
get texture handle at the given index. More... | |
HRESULT | SetRawValue (D3DXHANDLE hParameter, LPCVOID pData, UINT ByteOffset, UINT Bytes) |
bool | SetBool (D3DXHANDLE hParameter, BOOL bBoolean) |
bool | SetInt (D3DXHANDLE hParameter, int nValue) |
bool | SetFloat (D3DXHANDLE hParameter, float fValue) |
bool | SetVector2 (D3DXHANDLE hParameter, const Vector2 &vValue) |
bool | SetVector3 (D3DXHANDLE hParameter, const Vector3 &vValue) |
bool | SetVector4 (D3DXHANDLE hParameter, const Vector4 &vValue) |
bool | SetMatrix (D3DXHANDLE hParameter, const Matrix4 &data) |
![]() | |
CEffectFileBase (const AssetKey &key) | |
virtual AssetType | GetType () |
void | SetFileName (const std::string &filename) |
set inner file name, usually at the load time. More... | |
int | totalPasses () const |
void | EnableSunLight (bool bEnableSunLight) |
whether to enable sun light calculation | |
void | applySurfaceMaterial (const ParaMaterial *pSurfaceMaterial, bool bUseGlobalAmbient=true) |
void | applyCameraMatrices () |
void | applyWorldMatrices () |
void | applyFogParameters (bool bEnableFog, const Vector4 *fogParam, const LinearColor *fogColor) |
void | applyGlobalLightingData (CSunLight &sunlight) |
bool | setParameter (eParameterHandles index, const void *data, int32 size=D3DX_DEFAULT) |
bool | setParameter (eParameterHandles index, const Vector2 *data) |
bool | setParameter (eParameterHandles index, const Vector3 *data) |
bool | setParameter (eParameterHandles index, const Vector4 *data) |
bool | setBool (eParameterHandles index, BOOL bBoolean) |
bool | setInt (eParameterHandles index, int nValue) |
bool | setFloat (eParameterHandles index, float fValue) |
HRESULT | SetRawValue (const char *hParameter, const void *pData, uint32 ByteOffset, uint32 Bytes) |
bool | SetBool (const char *hParameter, BOOL bBoolean) |
bool | SetInt (const char *hParameter, int nValue) |
bool | SetFloat (const char *hParameter, float fValue) |
bool | SetVector2 (const char *hParameter, const Vector2 &vValue) |
bool | SetVector3 (const char *hParameter, const Vector3 &vValue) |
bool | SetVector4 (const char *hParameter, const Vector4 &vValue) |
bool | SetMatrix (const char *hParameter, const Matrix4 &data) |
bool | isParameterUsed (eParameterHandles index) |
bool | setMatrix (eParameterHandles index, const Matrix4 *data) |
bool | isMatrixUsed (eParameterHandles index) |
bool | setTexture (int index, TextureEntity *data) |
bool | setTexture (int index, DeviceTexturePtr_type pTex) |
bool | SetBoolean (int nIndex, bool value) |
bool | begin (bool bApplyParam=true, DWORD flag=0) |
bool | BeginPass (int pass, bool bForceBegin=false) |
void | CommitChanges () |
void | EndPass (bool bForceEnd=false) |
void | end (bool bForceEnd=false) |
bool | LoadBuildinShader () |
void | releaseEffect (int nPass=-1) |
bool | EnableEnvironmentMapping (bool bEnable) |
enable environment mapping More... | |
bool | EnableReflectionMapping (bool bEnable, float fSurfaceHeight=0.f) |
enable reflection mapping More... | |
void | SetReflectFactor (float fFactor) |
set shader parameter "reflectFactor" More... | |
void | EnableNormalMap (bool bEnable) |
whether to enable the use of normal map More... | |
void | EnableLightMap (bool bEnable) |
whether to enable the use of light map More... | |
void | EnableAlphaBlending (bool bAlphaBlending) |
whether to enable alpha blending in shader. More... | |
void | EnableAlphaTesting (bool bAlphaTesting) |
whether to enable alpha testing | |
bool | SetFirstValidTechniqueByCategory (TechniqueCategory nCat) |
Set technique if it is different from the current one. More... | |
bool | SetTechniqueByIndex (int nIndex) |
Set technique if it is different from the current one. More... | |
const TechniqueDesc * | GetCurrentTechniqueDesc () |
get the current technique description. More... | |
void | onDrawPass (CParameterBlock *pMaterialParams, int passIndex) |
![]() | |
AssetEntity (const AssetKey &key) | |
ATTRIBUTE_DEFINE_CLASS (AssetEntity) | |
virtual int | InstallFields (CAttributeClass *pClass, bool bOverride) |
this class should be implemented if one wants to add new attribute. More... | |
ATTRIBUTE_METHOD1 (AssetEntity, GetLocalFileName_s, const char **) | |
ATTRIBUTE_METHOD1 (AssetEntity, SetLocalFileName_s, const char *) | |
ATTRIBUTE_METHOD1 (AssetEntity, GetRemoteAssetURL_s, const char **) | |
ATTRIBUTE_METHOD1 (AssetEntity, IsValid_s, bool *) | |
ATTRIBUTE_METHOD1 (AssetEntity, IsLoaded_s, bool *) | |
ATTRIBUTE_METHOD1 (AssetEntity, IsLocked_s, bool *) | |
ATTRIBUTE_METHOD1 (AssetEntity, IsInitialized_s, bool *) | |
ATTRIBUTE_METHOD1 (AssetEntity, GetState_s, int *) | |
ATTRIBUTE_METHOD1 (AssetEntity, SetState_s, int) | |
virtual const std::string & | GetIdentifier () |
virtual bool | AutoSync (bool bForceSync=false, bool bLazyLoading=true) |
call this function to automatically sync with the remote server according to current asset state More... | |
virtual void | Refresh (const char *sFilename=NULL, bool bLazyLoad=false) |
refresh the asset from local disk. More... | |
virtual const string & | GetLocalFileName () |
the actual local file name. More... | |
virtual void | SetLocalFileName (const char *sFileName) |
virtual string | GetRemoteAssetURL () |
get the remote server url of this asset. More... | |
bool | IsValid () |
whether this is a valid resource object. More... | |
bool | IsInitialized () |
whether initialized. More... | |
virtual bool | IsLoaded () |
most assets are loaded asynchronously. More... | |
virtual int | Release () |
call this function to safely release this asset. More... | |
AssetKey & | GetKey () |
return the key object. More... | |
AssetState | GetState () |
return the asset state. More... | |
void | SetState (AssetState state) |
set the asset state. More... | |
virtual IAttributeFields * | GetAttributeObject () |
get the attribute object of this asset. More... | |
virtual HRESULT | RendererRecreated () |
callback of listening the event that renderer was recreated on Android/WP8 all opengl related id has already become invalid at this time, no need to release them, just recreate them all in this function. | |
virtual void | Cleanup () |
Clean up additional resources. More... | |
void | LoadAsset () |
load asset. More... | |
void | UnloadAsset () |
unload asset. More... | |
void | GarbageCollectMe () |
if its reference count is zero, unload this asset object. More... | |
bool | IsLocked () |
whether this is a locked resource resource. More... | |
virtual bool | Lock (int nMethod=0) |
Lock the object. More... | |
virtual void | UnLock () |
UnLock the object. | |
virtual bool | GetBoundingBox (Vector3 *pMin, Vector3 *pMax) |
Get AABB bounding box of the asset object. More... | |
![]() | |
virtual int | GetAttributeClassID () |
attribute class ID should be identical, unless one knows how overriding rules work. More... | |
virtual const char * | GetAttributeClassName () |
a static string, describing the attribute class object's name | |
virtual const char * | GetAttributeClassDescription () |
a static string, describing the attribute class object | |
virtual int | GetChildAttributeColumnCount () |
we support multi-dimensional child object. More... | |
virtual int | GetChildAttributeObjectCount (int nColumnIndex=0) |
get the number of child objects (row count) in the given column. More... | |
virtual IAttributeFields * | GetChildAttributeObject (int nRowIndex, int nColumnIndex=0) |
virtual IAttributeFields * | GetChildAttributeObject (const std::string &sName) |
get attribute by child object. More... | |
ATTRIBUTE_METHOD1 (IAttributeFields, GetName_s, const char **) | |
ATTRIBUTE_METHOD1 (IAttributeFields, SetName_s, const char *) | |
ATTRIBUTE_METHOD (IAttributeFields, PrintObject_s) | |
ATTRIBUTE_METHOD (IAttributeFields, AddRef_s) | |
ATTRIBUTE_METHOD1 (IAttributeFields, GetRefCount_s, int *) | |
ATTRIBUTE_METHOD1 (IAttributeFields, SetTime_s, int) | |
ATTRIBUTE_METHOD1 (IAttributeFields, GetTime_s, int *) | |
ATTRIBUTE_METHOD (IAttributeFields, Release_s) | |
virtual void | SetIdentifier (const std::string &sID) |
virtual bool | IsModified () |
whether some of the fields are modified.It is up to the implementation class to provide this functionality if necessary. More... | |
virtual void | SetModified (bool bModified) |
set whether any field has been modified. More... | |
virtual bool | ValidateFields () |
validate all fields and return true if validation passed. More... | |
virtual string | GetValidationMessage () |
get the recent validation message due to the most recent call to ValidateFields() | |
virtual bool | ResetField (int nFieldID) |
Reset the field to its initial or default value. More... | |
virtual bool | InvokeEditor (int nFieldID, const std::string &sParameters) |
Invoke an (external) editor for a given field. More... | |
virtual bool | AddChildAttributeObject (IAttributeFields *pChild, int nRowIndex=-1, int nColumnIndex=0) |
add child object. More... | |
virtual void * | QueryObjectByName (const std::string &sObjectType) |
convert to object of a given type. More... | |
virtual void * | QueryObject (int nObjectType) |
convert to object of a given type. More... | |
virtual int | GetTime () |
get the current local time in case it is animated in milli seconds frames. More... | |
virtual void | SetTime (int nTime) |
virtual CDynamicAttributeField * | GetDynamicField (const std::string &sName) |
Get a dynamic field with a given name. More... | |
virtual CDynamicAttributeField * | GetDynamicField (int nIndex) |
Get a dynamic field with a given index. More... | |
virtual const char * | GetDynamicFieldNameByIndex (int nIndex) |
get field name by index | |
virtual int | GetDynamicFieldCount () |
how many dynamic field this object currently have. More... | |
virtual int | SetDynamicField (const std::string &sName, const CVariable &value) |
set a dynamic field with a given name. More... | |
virtual int | AddDynamicField (const std::string &sName, ATTRIBUTE_FIELDTYPE dwType) |
add dynamic field and return field index | |
virtual void | RemoveAllDynamicFields () |
remove all dynamic fields | |
virtual int | SaveDynamicFieldsToString (std::string &output) |
save only text dynamic fields to fieldname = value text strings. More... | |
virtual int | LoadDynamicFieldsFromString (const std::string &input) |
load only text dynamic fields from string More... | |
CAttributeClass * | GetAttributeClass () |
get the main attribute class object. More... | |
void | PrintObject () |
print the content of this object to a text file at temp/doc/[ClassName].txt. More... | |
![]() | |
virtual void | Clone (IObject *obj) const |
Clone the object's contains to a pointer. More... | |
virtual IObject * | Clone () const |
Clone the object's contains and return a pointer to the newly created object. More... | |
virtual bool | Equals (const IObject *obj) const |
Compare the object with another object. More... | |
virtual const IType * | GetType () const |
virtual std::string | ToString () const |
WeakPtr_type & | GetWeakReference () |
get weak reference object. More... | |
virtual int | ProcessObjectEvent (const ObjectEvent &event) |
this function is only used to backward compatibility of ParaObject:AddEvent() function. More... | |
![]() | |
void | addref () const |
add reference count of the object. More... | |
bool | delref () const |
decrease reference count of the object. More... | |
int | GetRefCount () const |
get the reference count | |
CRefCounted * | AddToAutoReleasePool () |
addref and releases the ownership sometime soon automatically (usually at the end of the current frame). More... | |
![]() | |
virtual bool | AddScriptCallback (int func_type, const string &script_func) |
add a new call back handler. More... | |
virtual ScriptCallback * | GetScriptCallback (int func_type) |
return NULL if there is no associated script. More... | |
virtual bool | RemoveScriptCallback (int func_type) |
remove a call back handler | |
Static Public Member Functions | |
static void | EnableTextures (bool bEnable) |
one occasion to disable textures is during the shadow pass. More... | |
static bool | AreTextureEnabled () |
![]() | |
static void | EnableTextures (bool bEnable) |
static bool | AreTextureEnabled () |
![]() | |
static const string & | GetAssetServerUrl () |
get the asset server url. More... | |
static void | SetAssetServerUrl (const char *pStr) |
set the asset server url. More... | |
![]() | |
static HRESULT | GetAttributeClassID_s (IAttributeFields *cls, int *p1) |
static HRESULT | GetAttributeClassName_s (IAttributeFields *cls, const char **p1) |
static bool | OpenWithDefaultEditor (const char *sFilename, bool bWaitOnReturn=false) |
Open a given file with the default registered editor in the game engine. More... | |
Additional Inherited Members | |
![]() | |
enum | TechniqueCategory { TechCategory_default = 0, TechCategory_GenShadowMap, TechCategory_Character, TechCategory_DetailCharacter, TechCategory_Vegetation } |
The game engine will identified some predefined technique name from the the effect file, and given them a category number e.g. More... | |
enum | eParameterHandles { k_worldMatrix = 0, k_worldInverseMatrix, k_worldViewMatrix, k_worldViewProjMatrix, k_worldMatrixArray, k_viewMatrix, k_projMatrix, k_viewProjMatrix, k_TexWorldViewProjMatrix, k_skyBoxMatrix, k_first_parameter, k_boneInfluenceCount, k_ambientMaterialColor, k_diffuseMaterialColor, k_emissiveMaterialColor, k_specularMaterialColor, k_specularMaterialPower, k_reflectFactor, k_LayersNum, k_LocalLightNum, k_LightPositions, k_LightColors, k_LightParams, k_patchCorners, k_posScaleOffset, k_uvScaleOffset, k_lensFlareColor, k_sunVector, k_sunColor, k_fresnelR0, k_ambientLight, k_atmosphericLighting, k_cameraPos, k_cameraDistances, k_cameraFacing, k_sunlightInscatter, k_sunlightExtinction, k_LightStrength, k_bSunlightEnable, k_nShadowmapSize, k_fShadowRadius, k_fogEnable, k_fogParameters, k_fogColor, k_worldPos, k_ConstVector0, k_ConstVector1, k_ConstVector2, k_ConstVector3, k_time, k_specularPower, k_texCoordOffset, k_opacity, k_shadowFactor, k_transitionFactor, k_bAlphaTesting, k_bAlphaBlending, k_bBoolean0, k_bBoolean1, k_bBoolean2, k_bBoolean3, k_bBoolean4, k_bBoolean5, k_bBoolean6, k_bBoolean7, k_bBoolean8, k_bBoolean9, k_bBoolean10, k_bBoolean11, k_bBoolean12, k_bBoolean13, k_bBoolean14, k_bBoolean15, k_bBooleanMAX, k_tex0, k_tex1, k_tex2, k_tex3, k_tex4, k_tex5, k_tex6, k_tex7, k_tex8, k_tex9, k_tex10, k_tex11, k_tex12, k_tex13, k_tex14, k_tex15, k_tex_max, k_tex_mat0, k_tex_mat1, k_tex_mat2, k_tex_mat3, k_tex_mat4, k_tex_mat5, k_tex_mat6, k_tex_mat7, k_tex_mat8, k_tex_mat9, k_tex_mat10, k_tex_mat11, k_tex_mat12, k_tex_mat13, k_tex_mat14, k_tex_mat15, k_tex_mat_max, k_max_param_handles } |
enum | CallBackType { Type_DrawPass } |
![]() | |
enum | AssetState { ASSET_STATE_NORMAL, ASSET_STATE_LOCAL, ASSET_STATE_REMOTE, ASSET_STATE_CACHE, ASSET_STATE_SYNC_START, ASSET_STATE_SYNC_SUCCEED, ASSET_STATE_SYNC_FAIL, ASSET_STATE_FAILED_TO_LOAD } |
the asset state. More... | |
enum | AssetType { base =0, texture, mesh, multianimation, spritevertex, font, sound, mdx, parax, database, effectfile, dllplugin, datagrid, cadMesh, image } |
each asset type has a unique asset type number | |
![]() | |
typedef ParaEngine::weak_ptr< IObject, IAttributeFields > | WeakPtr_type |
![]() | |
typedef ParaEngine::weak_ptr< IObject > | WeakPtr_type |
![]() | |
typedef std::vector< ScriptCallback > | ObjectCallbackPool_Type |
![]() | |
AssetKey | m_key |
this is the unique key object. More... | |
bool | m_bIsInitialized |
whether this entity is initialized;Entity is by default lazily initialized | |
bool | m_bIsValid |
whether this is a valid resource object. More... | |
![]() | |
static const int | MAX_EFFECT_LIGHT_NUM = 4 |
![]() | |
virtual CAttributeClass * | CreateAttributeClass () |
initialize fields | |
virtual CDynamicAttributesSet * | GetDynamicAttributes (bool bCreateIfNotExist=false) |
![]() | |
WeakPtr_type | m_weak_reference |
![]() | |
int | m_refcount |
![]() | |
ObjectCallbackPool_Type | m_callback_scripts |
the NPL script handlers | |
void ParaEngine::CEffectFileDirectX::applySurfaceMaterial | ( | const ParaMaterial * | pSurfaceMaterial, |
bool | bUseGlobalAmbient = true |
||
) |
bUseGlobalAmbient | if true and that the ambient in pSurfaceMaterial is 0, the ambient in the material is ignored. and the scene's ambient color will be used. |
bool ParaEngine::CEffectFileDirectX::begin | ( | bool | bApplyParam = true , |
DWORD | flag = D3DXFX_DONOTSAVESTATE|D3DXFX_DONOTSAVESAMPLERSTATE|D3DXFX_DONOTSAVESHADERSTATE , |
||
bool | bForceBegin = false |
||
) |
bApplyParam | whether to apply current camera and lighting parameters to shader |
flag | default is not saving any state D3DXFX_DONOTSAVESTATE: No state is saved when calling Begin or restored when calling End. (1 << 0) D3DXFX_DONOTSAVESAMPLERSTATE: A stateblock saves state when calling Begin and restores state when calling End. (1 << 2) D3DXFX_DONOTSAVESHADERSTATE: A stateblock saves state (except shaders and shader constants) when calling Begin and restores state when calling End. |
bShare | if this false, it will only begin the effect if the effect file is not in shared mode. |
void ParaEngine::CEffectFileDirectX::EnableAlphaBlending | ( | bool | bAlphaBlending | ) |
whether to enable alpha blending in shader.
bool ParaEngine::CEffectFileDirectX::EnableEnvironmentMapping | ( | bool | bEnable | ) |
enable environment mapping
bEnable |
void ParaEngine::CEffectFileDirectX::EnableLightMap | ( | bool | bEnable | ) |
whether to enable the use of light map
bEnable |
void ParaEngine::CEffectFileDirectX::EnableNormalMap | ( | bool | bEnable | ) |
whether to enable the use of normal map
bEnable |
bool ParaEngine::CEffectFileDirectX::EnableReflectionMapping | ( | bool | bEnable, |
float | fSurfaceHeight = 0.f |
||
) |
enable reflection mapping
bEnable | |
fSurfaceHeight | surface height in current model space. only used when bEnable is true. |
void ParaEngine::CEffectFileDirectX::EnableShadowmap | ( | int | nShadowMethod | ) |
whether to enable rendering with shadow map
nShadowMethod | 0 disable shadow map; 1 hardware shadow map; 2 F32 shadow map |
|
static |
one occasion to disable textures is during the shadow pass.
When textures are disabled all setTexture call will take no effect.
const TechniqueDesc* ParaEngine::CEffectFileDirectX::GetCurrentTechniqueDesc | ( | ) |
get the current technique description.
This function may return NULL
int ParaEngine::CEffectFileDirectX::GetCurrentTechniqueIndex | ( | ) |
current technique index.
|
inline |
get directX effect object associated with this object.
|
virtual |
get effect parameter block with this object.
bCreateIfNotExist |
Reimplemented from ParaEngine::AssetEntity.
D3DXHANDLE& ParaEngine::CEffectFileDirectX::GetTextureHandle | ( | int | nIndex | ) |
get texture handle at the given index.
bool ParaEngine::CEffectFileDirectX::IsTextureLocked | ( | int | nIndex | ) | const |
check whether a given texture is locked at the given index.
nIndex | 0 based index of the texture registry. |
void ParaEngine::CEffectFileDirectX::LockTexture | ( | int | nIndex | ) |
Lock a texture at a given index.
A locked texture will make all subsequent calls to setTexture takes no effect, thus preserving old value in video card.
nIndex | 0 based index of the texture registry. If -1 it will lock all. |
void ParaEngine::CEffectFileDirectX::OnSwitchInShader | ( | ) |
this is called when the shader is selected by the pipeline.
There may be many objects drawn using the same shader between switch in and out.
void ParaEngine::CEffectFileDirectX::OnSwitchOutShader | ( | ) |
this is called when the shader is deselected by the pipeline.
There may be many objects drawn using the same shader between switch in and out.
bool ParaEngine::CEffectFileDirectX::SetBoolean | ( | int | nIndex, |
bool | value | ||
) |
set a boolean parameter.
nIndex | range 0-15, value 0-7 is reserved for lights. |
void ParaEngine::CEffectFileDirectX::SetFileName | ( | const std::string & | filename | ) |
set inner file name, usually at the load time.
bool ParaEngine::CEffectFileDirectX::SetFirstValidTechniqueByCategory | ( | TechniqueCategory | nCat | ) |
Set technique if it is different from the current one.
nCat |
void ParaEngine::CEffectFileDirectX::SetReflectFactor | ( | float | fFactor | ) |
set shader parameter "reflectFactor"
fFactor | (0,1). 1 is fully reflective. 0 is not reflective. |
bool ParaEngine::CEffectFileDirectX::SetTechniqueByIndex | ( | int | nIndex | ) |
Set technique if it is different from the current one.
multiple calls to this function with the same index takes no effect.
nIndex | 0 based index. |
void ParaEngine::CEffectFileDirectX::UnLockTexture | ( | int | nIndex | ) |
UnLock a texture at a given index.
A locked texture will make all subsequent calls to setTexture takes no effect, thus preserving old value in video card.
nIndex | 0 based index of the texture registry. If -1 it will unlock all. |