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=2935)
Отправлено Дядя Миша 10-08-2012 в 14:58:
pev->gravity это фактор ослабления локальной гравитации от нуля до еденички. А sv_gravity как раз и копируется в movevars и передаётся по сети. Впрочем в недокументированном клиентском интерфейсе есть корочи специальная функция для получения значения гравитации.
А для тестирования можешь вписать туда просто 800.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено Shapirlic 10-08-2012 в 15:00:
Вообщем сделал в каждом евенте - при создании клиентской пули указываю в функции создания клиентского трейсера нужную pev->gravity,скопированную с серверных пуль,умножаю её на CVAR_GET_FLOAT("sv_gravity"). При полёте всё совпадает
Спасибо.
Отправлено Дядя Миша 10-08-2012 в 16:59:
ох ёлки...
pev->gravity у тебя для каждой пули равен нулю либо еденичке, ты бы хоть не поленился проверить.
а sv_gravity нельзя брать на клиенте через квар, потому что все нелокальные клиенты отсосут. Ну неужели непонятно?
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено Shapirlic 10-08-2012 в 17:08:
pev->gravity не ноль и единичка а дробное число типа 0.2 или 0.3.
Только что проверил на двух машинах - гравитация работает как и у сервера так и у клиента.Но для предосторожности возьму её так как ты говоришь.
Отправлено CrazyRussian 10-08-2012 в 17:34:
Цитата:
Дядя Миша писал:
Но это не мешает ему переодически вылетать. Так что, не панацея.
На девелоперской машине он сверхстабилен, чего не скажешь явно о моде Shapirlic.
Цитата:
Дядя Миша писал:
Т.е. первую и главную проверку на валидность она уже благополучно забыла. И какими дешевыми трюками она проверяет валидность кода, спрашивается?
В чем трабл то? Вон у тебя первая строчка
C++ Source Code:
Если код в тот блок попал, то смысла внутри блока проверять pController на не нулл нету, вот тебе и тулза ругается - говорит что тут
C++ Source Code:
if( pController && pController->IsPlayer() ) |
лишняя проверка__________________
Трагическая новость: Пятеро инженеров Casio умерли от смеха, узнав что Samsung анонсировали часы с заявленным временем работы в 25 часов
Отправлено Дядя Миша 10-08-2012 в 17:38:
а, ну ладно. Впрочем не я это писал, так шта переделывать не буду. Возможно это какая-то уличная магия или дзен.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено fire64 10-08-2012 в 22:12:
Как устроено смешивание лайтмап с основной текстурой в Half-Life?
Добавлено 11-08-2012 в 02:12:
У меня в шейдер передаются следующие данные:
C++ Source Code:
1 | uniform sampler2D baseMap; |
2 | uniform sampler2D lightMap; |
4 | uniform vec2 Lighmapcoord; |
Как их смешать, чтобы получить приемлемое изображение.
Если пишу:
C++ Source Code:
gl_FragColor = texture2D(baseMap, Texcoord); |
То все цвета нормальные, но без освещения.__________________
Вся сила лысого кощея,
Сокрыта в башне из костей
Воздвигнутой, под небесами
На месте похорон людей
Отправлено Government-Man 10-08-2012 в 22:34:
fire64
gl_FragColor = texture2D(baseMap, Texcoord) * texture2D(lightMap, Lightmapcoord);
Добавлено 10-08-2012 в 18:34:
А в ХЛ2:
gl_FragColor = texture2D(baseMap, Texcoord) * texture2D(lightMap, Lightmapcoord) * 16;
Отправлено Дядя Миша 11-08-2012 в 05:29:
А текстуры-решетки освещаются еще хитрее.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено Lev 11-08-2012 в 06:04:
Кто-нибудь знает, где проигрывается звук, когда игрок под водой(конкретно фанк ватер)?
Добавлено 11-08-2012 в 12:04:
Да и ещё - каким образом на стеклянных фанк брекаблях остаются декали, а на остальных нет
Отправлено fire64 11-08-2012 в 09:09:
Гм, что-то у меня не то получается:
C++ Source Code:
1 | tex = cursurface->texinfo->texture; |
3 | GLint lightmapImageLoc = glGetUniformLocation(pShaderProgram->GetShaderProgram(), "lightMap"); |
4 | GLint baseImageLoc = glGetUniformLocation(pShaderProgram->GetShaderProgram(), "baseMap"); |
5 | GLint Lighmapcoord = glGetUniformLocation(pShaderProgram->GetShaderProgram(), "Lighmapcoord"); |
7 | glUniform2f(Lighmapcoord, cursurface->light_s, cursurface->light_t ); |
9 | pShaderProgram->SetState( true ); |
11 | glActiveTexture(GL_TEXTURE0+1); |
12 | glBindTexture(GL_TEXTURE_2D, tex->gl_texturenum); |
14 | glActiveTexture(GL_TEXTURE0+2); |
15 | glBindTexture(GL_TEXTURE_2D,cursurface->lightmaptexturenum ); |
17 | glUniform1i(baseImageLoc, 1); |
18 | glUniform1i(lightmapImageLoc, 2); |
В шейдере:
C++ Source Code:
1 | uniform sampler2D baseMap; |
2 | uniform sampler2D lightMap; |
4 | uniform vec2 Lighmapcoord; |
9 | vec4 col1 = texture2D(baseMap, Texcoord); |
10 | vec4 col2 = texture2D(lightMap, Lighmapcoord); |
12 | vec4 color = col2 * col1; |
Результат в аттаче.
Добавлено 11-08-2012 в 13:09:
хм, думал что где-то в коде задания sampler2D ошибся, отрубил шейдеры и отрисовал мир с заменой tex->gl_texturenum на cursurface->lightmaptexturenum и соответственно с текстурными координатами лайтмап.
Результат тот же, что и от использования texture2D(lightMap, Lighmapcoord);
Значит данные передаются верно.__________________
Вся сила лысого кощея,
Сокрыта в башне из костей
Воздвигнутой, под небесами
На месте похорон людей
Отправлено Shapirlic 11-08-2012 в 13:27:
Я помню,вопрос поднимался,на него есть ответ,но я не нашёл на форуме.Ответьте пожалуйста - какими средствами организовать зацикливание звука? Я помню,там какой-то прогой нужно расставить точки зацикливания или как их там.Как прога называется?
Отправлено qpAHToMAS 11-08-2012 в 14:19:
Shapirlic, http://csmapper.ru/tutorials/t14loopsound.shtml
Отправлено Дядя Миша 11-08-2012 в 14:41:
Цитата:
Lev писал:
Кто-нибудь знает, где проигрывается звук, когда игрок под водой(конкретно фанк ватер)?
без разницы под какой водой. В функции WaterMove, player.cpp
Цитата:
Lev писал:
Да и ещё - каким образом на стеклянных фанк брекаблях остаются декали, а на остальных нет
Баг потомушта, читай мой тутор:
http://www.hlfx.ru/forum/showthread...=&threadid=2534
Добавлено 11-08-2012 в 18:41:
Цитата:
fire64 писал:
отрисовал мир с заменой tex->gl_texturenum на cursurface->lightmaptexturenum и соответственно с текстурными координатами лайтмап.
lightmaptexturenum это не индекс гл-текстуры. Это номер лайтмапы в массиве лайтмап.__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено Lev 12-08-2012 в 06:39:
C++ Source Code:
3 | if (pev->waterlevel == 3 ) |
Мне две мессаги нужно на клиент передать - но с каким параметром они должны быть? MSG_ALL?
C++ Source Code:
3 | MESSAGE_BEGIN( MSG_ALL, gmsgScreenInWater ); |
4 | WRITE_BYTE( screeninwater ); |