Code: Select all
GetEntity()->GetMaterial()->SetGetMaterialParamFloat("opacity", m_fTransparentValue, false);
Code: Select all
GetEntity()->SetOpacity(0.2f);
Thanks in advance,
Savas
Code: Select all
GetEntity()->GetMaterial()->SetGetMaterialParamFloat("opacity", m_fTransparentValue, false);
Code: Select all
GetEntity()->SetOpacity(0.2f);
Code: Select all
const SShaderItem& shaderItem = pMtl->GetShaderItem();
IRenderShaderResources* pRendRes = shaderItem.m_pShaderResources;
DynArrayRef<SShaderParam>& params = pRendRes->GetParameters();
if (pMtl->SetGetMaterialParamFloat(paramNameFloat, floatValue, false) == false)
{
UParamVal val;
val.m_Float = floatValue;
SShaderParam::SetParam(paramNameFloat, ¶ms, val);
bUpdateShaderConstants = true;
}
if (bUpdateShaderConstants)
{
shaderItem.m_pShaderResources->UpdateConstants(shaderItem.m_pShader);
}
}
Code: Select all
SComponentParams::MakeMaterial(CParticleComponent* pComponent)
m_pMaterial = gEnv->p3DEngine->GetMaterialManager()->CreateMaterial(materialName);
if (gEnv->pRenderer)
{
SInputShaderResourcesPtr pResources = gEnv->pRenderer->EF_CreateInputShaderResource();
pResources->m_Textures[EFTT_DIFFUSE].m_Name = m_diffuseMap;
uint32 mask = eGpuParticlesVertexShaderFlags_None;
if (params.facingMode == 1)
mask |= eGpuParticlesVertexShaderFlags_FacingVelocity;
SShaderItem shaderItem = gEnv->pRenderer->EF_LoadShaderItem(shaderName, false, 0, pResources, mask);
m_pMaterial->AssignShaderItem(shaderItem);
}
Vec3 white = Vec3(1.0f, 1.0f, 1.0f);
float defaultOpacity = 1.0f;
m_pMaterial->SetGetMaterialParamVec3("diffuse", white, false);
m_pMaterial->SetGetMaterialParamFloat("opacity", defaultOpacity, false);
m_pMaterial->RequestTexturesLoading(0.0f);
Code: Select all
Vec3 white = Vec3(1.0f, 1.0f, 1.0f);
float defaultOpacity = 1.0f;
m_pMaterial->SetGetMaterialParamVec3("diffuse", white, false);
m_pMaterial->SetGetMaterialParamFloat("opacity", defaultOpacity, false);
I don't find files like these in my project folder and web search is also not one of cryengines strongest features.check illum.ext illum.cfx
Code: Select all
bool MaterialHelpers::SetGetMaterialParamFloat(IRenderShaderResources& pShaderResources, const char* sParamName, float& v, bool bGet) const
{
EEfResTextures texSlot = EFTT_UNKNOWN;
if (!stricmp("emissive_intensity", sParamName))
texSlot = EFTT_EMITTANCE;
else if (!stricmp("shininess", sParamName))
texSlot = EFTT_SMOOTHNESS;
else if (!stricmp("opacity", sParamName))
texSlot = EFTT_OPACITY;
if (!stricmp("alpha", sParamName))
{
if (bGet)
v = pShaderResources.GetAlphaRef();
else
pShaderResources.SetAlphaRef(v);
return true;
}
else if (texSlot != EFTT_UNKNOWN)
{
if (bGet)
v = pShaderResources.GetStrengthValue(texSlot);
else
pShaderResources.SetStrengthValue(texSlot, v);
return true;
}
return false;
}
Code: Select all
DynArrayRef<SShaderParam>& shaderParams = sItem.m_pShaderResources->GetParameters();
for (uint32 i = 0, si = shaderParams.size(); i < si; ++i)
Code: Select all
if (pMtl->SetGetMaterialParamFloat(paramNameFloat, floatValue, false) == false)
{
UParamVal val;
val.m_Float = floatValue;
SShaderParam::SetParam(paramNameFloat, ¶ms, val);
bUpdateShaderConstants = true;
}
if (bUpdateShaderConstants)
{
shaderItem.m_pShaderResources->UpdateConstants(shaderItem.m_pShader);
}
Code: Select all
m_pMaterial->SetGetMaterialParamFloat("opacity", defaultOpacity, false);
m_pMaterial->RequestTexturesLoading(0.0f);
Code: Select all
GetEntity()->GetStatObj()->GetMaterial();
Code: Select all
GetEntity()->GetMaterial()
Return to “Shaders & Rendering in General”
Users browsing this forum: No registered users and 1 guest