-
Автор темы
- #1
Покраска любого материала, всякие стекла, и т.д. (на них ColorModulate не действует)
C++:
bool bFound = false;
IMaterialVar* pMatVar= Material->FindVar("$envmaptint", &bFound);
if (bFound)
(*(void(__thiscall * *)(int, float, float, float))(*(DWORD*)pMatVar+ 0x2c))((uintptr_t)pMatVar, rgba.r() / 255.f, rgba.g() / 255.f, rgba.b() / 255.f);
C++:
bool bFound = false;
IMaterialVar* pMatVar = Material->FindVar("$envmaptint", &bFound);
if (bFound)
(*(void(__thiscall * *)(int, float, float, float))(*(DWORD*)pMatVar+ 0x2c))((uintptr_t)pMatVar, rgba.r() / 255.f, rgba.g() / 255.f, rgba.b() / 255.f);
Material->SetMaterialVarFlag(MATERIAL_VAR_IGNOREZ, ignoreZ);
Material->ColorModulate(rgba.r() / 255.0f, rgba.g() / 255.0f, rgba.b() / 255.0f);
Material->AlphaModulate(rgba.a() / 255.0f);
g_MdlRender->ForcedMaterialOverride(Material);
Пожалуйста, авторизуйтесь для просмотра ссылки.
Пожалуйста, авторизуйтесь для просмотра ссылки.
Последнее редактирование: