Подпишитесь на наш Telegram-канал, чтобы всегда быть в курсе важных обновлений! Перейти

Гайд Fix black chams csgosimple

Забаненный
Забаненный
Статус
Оффлайн
Регистрация
24 Фев 2022
Сообщения
277
Реакции
20
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Столкнулся с проблемой, что были черные чамсы в симпле ( старый сурс очень ). В итоге нашел решение проблемы
Пожалуйста, авторизуйтесь для просмотра ссылки.
- это мне очень помогло. Ну а теперь к коду на симпле
Код:
Expand Collapse Copy
Chams::Chams() {
    materialRegular = g_MatSystem->FindMaterial("debug/debugambientcube", TEXTURE_GROUP_MODEL);
    materialFlat = g_MatSystem->FindMaterial("debug/debugdrawflat", TEXTURE_GROUP_MODEL);

    materialRegularIgnoreZ = g_MatSystem->FindMaterial("debug/debugambientcube_ignorez", TEXTURE_GROUP_MODEL);
    materialFlatIgnoreZ = g_MatSystem->FindMaterial("debug/debugdrawflat_ignorez", TEXTURE_GROUP_MODEL);
}

void Chams::OverrideMaterial(bool ignoreZ, bool flat, bool wireframe, bool glass, const Color& rgba) {
    IMaterial* material = nullptr;

    if (flat) {
        material = materialFlat;
    }
    else {
        material = materialRegular;
    }

    material->SetMaterialVarFlag(MATERIAL_VAR_IGNOREZ, ignoreZ);

    if (glass) {
        material = materialFlat;
        material->AlphaModulate(0.45f);
    }
    else {
        material->AlphaModulate(
            rgba.a() / 255.0f);
    }

    material->SetMaterialVarFlag(MATERIAL_VAR_WIREFRAME, wireframe);
    material->ColorModulate(
        rgba.r() / 255.0f,
        rgba.g() / 255.0f,
        rgba.b() / 255.0f);

    g_MdlRender->ForcedMaterialOverride(material);
}
Столкнулся с проблемой, что были черные чамсы в симпле ( старый сурс очень ). В итоге нашел решение проблемы
Пожалуйста, авторизуйтесь для просмотра ссылки.
- это мне очень помогло. Ну а теперь к коду на симпле
Код:
Expand Collapse Copy
Chams::Chams() {
    materialRegular = g_MatSystem->FindMaterial("debug/debugambientcube", TEXTURE_GROUP_MODEL);
    materialFlat = g_MatSystem->FindMaterial("debug/debugdrawflat", TEXTURE_GROUP_MODEL);

    materialRegularIgnoreZ = g_MatSystem->FindMaterial("debug/debugambientcube_ignorez", TEXTURE_GROUP_MODEL);
    materialFlatIgnoreZ = g_MatSystem->FindMaterial("debug/debugdrawflat_ignorez", TEXTURE_GROUP_MODEL);
}

void Chams::OverrideMaterial(bool ignoreZ, bool flat, bool wireframe, bool glass, const Color& rgba) {
    IMaterial* material = nullptr;

    if (flat) {
        material = materialFlat;
    }
    else {
        material = materialRegular;
    }

    material->SetMaterialVarFlag(MATERIAL_VAR_IGNOREZ, ignoreZ);

    if (glass) {
        material = materialFlat;
        material->AlphaModulate(0.45f);
    }
    else {
        material->AlphaModulate(
            rgba.a() / 255.0f);
    }

    material->SetMaterialVarFlag(MATERIAL_VAR_WIREFRAME, wireframe);
    material->ColorModulate(
        rgba.r() / 255.0f,
        rgba.g() / 255.0f,
        rgba.b() / 255.0f);

    g_MdlRender->ForcedMaterialOverride(material);
}
materialRegularIgnoreZ = g_MatSystem->FindMaterial("debug/debugambientcube_ignorez", TEXTURE_GROUP_MODEL);
materialFlatIgnoreZ = g_MatSystem->FindMaterial("debug/debugdrawflat_ignorez", TEXTURE_GROUP_MODEL);
можете убрать, они не нужны
 
Столкнулся с проблемой, что были черные чамсы в симпле ( старый сурс очень ). В итоге нашел решение проблемы
Пожалуйста, авторизуйтесь для просмотра ссылки.
- это мне очень помогло. Ну а теперь к коду на симпле
Код:
Expand Collapse Copy
Chams::Chams() {
    materialRegular = g_MatSystem->FindMaterial("debug/debugambientcube", TEXTURE_GROUP_MODEL);
    materialFlat = g_MatSystem->FindMaterial("debug/debugdrawflat", TEXTURE_GROUP_MODEL);

    materialRegularIgnoreZ = g_MatSystem->FindMaterial("debug/debugambientcube_ignorez", TEXTURE_GROUP_MODEL);
    materialFlatIgnoreZ = g_MatSystem->FindMaterial("debug/debugdrawflat_ignorez", TEXTURE_GROUP_MODEL);
}

void Chams::OverrideMaterial(bool ignoreZ, bool flat, bool wireframe, bool glass, const Color& rgba) {
    IMaterial* material = nullptr;

    if (flat) {
        material = materialFlat;
    }
    else {
        material = materialRegular;
    }

    material->SetMaterialVarFlag(MATERIAL_VAR_IGNOREZ, ignoreZ);

    if (glass) {
        material = materialFlat;
        material->AlphaModulate(0.45f);
    }
    else {
        material->AlphaModulate(
            rgba.a() / 255.0f);
    }

    material->SetMaterialVarFlag(MATERIAL_VAR_WIREFRAME, wireframe);
    material->ColorModulate(
        rgba.r() / 255.0f,
        rgba.g() / 255.0f,
        rgba.b() / 255.0f);

    g_MdlRender->ForcedMaterialOverride(material);
}

materialRegularIgnoreZ = g_MatSystem->FindMaterial("debug/debugambientcube_ignorez", TEXTURE_GROUP_MODEL);
materialFlatIgnoreZ = g_MatSystem->FindMaterial("debug/debugdrawflat_ignorez", TEXTURE_GROUP_MODEL);
можете убрать, они не нужны
а зачем создавать отдельные материалы для ignoreZ, если для этого есть флаг?
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Назад
Сверху Снизу