![]() |
Показать все 23 сообщений этой темы на одной странице |
HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- Освещение на карте. (https://hlfx.ru/forum/showthread.php?threadid=628)
Освещение на карте.
Никто не знает чем на карте создаётся освещение?
Тоесть необходимо по аналогии StudioEntityLight, для возможности отстройки параметра?
Во-первых, о каком движке речь, хл1 или хл2?
Во-вторых, какое освещение, статические или динамическое?
В-третьих, о каких параметрах речь?

Ммм, есть команда r_fullbright. Что происходит когда она выполняется? HL1. Статическое. Параметр - для возможности настройки яркости освещения карты. Если нет параметра, то хотябы функции.
А как можно отключить лайтмапы? Так после компиляции свет уже стабильно установлен, что мне в компиляторе лазить?

Издеваешься? Я вроде нашёл... directlight_s
Я мапу не компилирую. Хаммер давно стёрт и маппинг забыт.
Troll тогда я не понимаю, о чем ты говоришь. Это выше моих сил.
1) Есть мод.
2) Запускаем карту на этом моде.
3) Хотим убирать свет с карты. Из этого следует Вопрос.
Вопрос -> как это сделать?
В СДК нет переменной управления - r_fullbright.
Чёрт, забыл до кучи что это работает на софтваре... Похоже тут не догадатся, как движком работать с освещением..
Только openGl, да curstate.rendermode=kRenderGlow, на всё за исключением игрока. А этот РендерГлов глючит с энтитями мира..
Вот так:
CVAR_SET_FLOAT("r_fullbright", 0);
XaeroX, ты за кого меня принимаешь? См пред. пост.
Troll а, так тебе чит нужен?
Ну что ж:
glActiveTextureARB(GL_TEXTURE1_ARB);
glDisable(GL_TEXTURE_2D);
это отключит 2ю текстуру, лайтмапы.
Да, но ты до конца меня не понял. А это детский сад. Тогда лучше уж - if(mode != GL_TRIANGLES && mode != GL_TRIANGLE_STRIP && mode != GL_TRIANGLE_FAN && mode != GL_QUADS )
{
glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_DECAL);
glDisable(GL_TEXTURE_2D);
}
Troll если у тебя жыфорс 3 или выше (не радеон), можно еще вот так:
1 | glActiveTextureARB( GL_TEXTURE0_ARB ); |
2 | glTexEnvi (GL_TEXTURE_SHADER_NV, GL_SHADER_OPERATION_NV, GL_TEXTURE_2D ); |
3 | glActiveTextureARB( GL_TEXTURE1_ARB ); |
4 | glTexEnvi (GL_TEXTURE_SHADER_NV, GL_SHADER_OPERATION_NV, GL_NONE ); |
5 | glActiveTextureARB( GL_TEXTURE2_ARB ); |
6 | glTexEnvi (GL_TEXTURE_SHADER_NV, GL_SHADER_OPERATION_NV, GL_NONE ); |
7 | glActiveTextureARB( GL_TEXTURE3_ARB ); |
8 | glTexEnvi (GL_TEXTURE_SHADER_NV, GL_SHADER_OPERATION_NV, GL_NONE ); |
9 | glEnable( GL_TEXTURE_SHADER_NV ); |
Ну вот, опять радеон в пролёте
Зачем вообще отключать лайтмапы?
Ku2zoff радеон не в пролете. Там это можно сделать с помощью GL_ATI_fragment_shader 
Можно и так, но это черезчур жирновато, да и не у всех сработает. Меня интересовал другой вопрос - как снять лайтмапы через движок. Но по всему видимому это либо невозможно, либо возможно только один раз за мапу, тоесть после перезапуска уровня

Всё это хорошо, но это всё работает только на openGl.
Ну ты даёшь, зачем резать движок? Достаточно похукать.
void (*SetGL_TexSort)( int value );
void (*SetGL_TexSort_Colour)( float red, float green, float blue );
void (*SetGL_TexSort_Scale)( float scale );
Всего три функции. Правда опять не повезло мне.. Только oGl...
Не вкурсе как движок расставляет лайтмапы в софтваре?
Это несколько функций из cl_enginefuncs_s.
Troll в СДК хл1 нет таких функций.
Конечно нету. Это недокументированные функции найденные через отладчик.
| Временная зона GMT. Текущее время 01:32. | Показать все 23 сообщений этой темы на одной странице |
На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024