![]() |
Показать все 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. Текущее время 23:17. | Показать все 23 сообщений этой темы на одной странице |
На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024