Ku2zoff тут не в векторе дело, в самом gEngfuncs.pTriAPI->LightAtPoint( pDraw->origin, (float *)&lightColor );
Оно возращяет странный результат, который вообще с освещением не связян. Я с помощью этого кода смотрел что оно выводит: gEngfuncs.Con_Printf("Light X %f, Light Y %f, Light z %f\n", lightColor.x, lightColor.y, lightColor.z); Не важно, есть ли lightColor = lightColor * (1.0f / 255.0f); или нет.
Chyvachok писал: Он вместо освещенности в диапазоне 1-255 выдает некое число которое зависит от того куда смотрит игрок.
C++ Source Code:
Color 0.749020 0.749020 0.533333
У меня вот такой вывод в консоль. Диапазон от 0 до 1. В качестве точки, откуда берётся освещённость взят вектор v_origin. Чем ярче место, где стоит игрок, тем больше цифры.
У меня по всем координатам кроме одной 0, если есть lightColor = lightColor * (1.0f / 255.0f); то везде нули, если нет этой строки в lightColor.y чисто которое меняется от того куда смотрит игрок, либо -0.821521 либо 0.812312 либо что-то по средине. Оно меняется если камерой смотреть в разную сторону, освещение никак не влияет на него.
Добавлено 09-12-2021 в 22:34:
Вставлял я его в ту часть когда где эффект рисуется, где gEngfuncs.pTriAPI->Color4f
Добавлено 09-12-2021 в 22:35:
Пробовал в другой метод вставлять, Update Particle там вообще дичь, числа 6423573.23423 и так далее.
Вроде заработало в HUD_DrawTransparentTriangles, дело было в triangleapi.h, у меня изначально не было там LightAtPoint, я скопировал только LightAtPoint, теперь я скопирал вообще все что было из более нового СДК, вроде теперь пишет что надо. Остальные методы, там Color4fRendermode, BoxInPVS и так далее.
Добавлено 09-12-2021 в 23:01:
Что-то вроде в духе такого уже выводит 0.749020 0.749020 0.533333 и в коде партиклей.
Так там порядок важен. Последнее, что есть в SDK 2.3 - ScreenToWorld. В новом SDK после него GetMatrix, BoxInPVS и только потом LightAtPoint. Не зря же при реверс инжиниринге втыкают заглушки вместо отсутствующих экспортов. Вот функция тебе и возвращала чёрт знает что, потому что по факту ты вызывал GetMatrix. Это, кстати, объясняет то, что значения менялись при повороте камеры.
не знаю где его качать, и моды на последней версии, вроде того же Халф Пейна не работают под Ксашем или Пираткой. Сколько искал, не нашел чтобы кто-то новую версию ГолдСорца спиратил, не думаю что мне он актуален будет.
Это шутка? https://github.com/ValveSoftware/ha...eads/master.zip
Только осторожно, в клиентку линкуется SDL. Работать под ванильным ксашем не будет, только под FWGS. Если не хочешь отказываться от ванильного ксаша, обнови все хедеры в папках common и engine, заменив их на одноимённые из последнего билда ксаша (4529).
Добавлено 10-12-2021 в 04:26:
Цитата:
Chyvachok писал: не нашел чтобы кто-то новую версию ГолдСорца спиратил
Есть довольно свежие билды, в основном сборки CS 1.6. Зачем пиратить голдсорс для запуска модов, если есть свенкооп в стиме? Кидаешь папку valve в корень свена, в либлисте мода пишешь fallback_dir "valve" и гамай на здоровье. У свен энджин лимиты будь здоров, там карта со стороной 172 тысячи юнитов и количество моделей/спрайтов/клипнодов и прочего просто запредельное. То есть, можно делать мод, не использующий какие-то фичи ксаша, а только лишь требующий повышенных лимитов на свежем HLSDK. И поиграть в него смогут даже копирасты-буржуи, которые не юзают ксаш принципиально.
Я не помню откуда качал СДК но с задницы какой-то, забыл что он на Гите есть.
Добавлено 09-12-2021 в 23:28:
Цитата:
Chyvachok писал: Есть довольно свежие билды, в основном сборки CS 1.6. Зачем пиратить голдсорс для запуска модов, если есть свенкооп в стиме? Кидаешь папку valve в корень свена, в либлисте мода пишешь fallback_dir "valve" и гамай на здоровье.
Не знал что оно так работать будет, думал что он чисто под Свен заточен, Свен есть, как и Стим для игры в бесплатные моды что Source SDK Base используют, для них не надо ХЛ2 иметь купленный. Кстати а Свен двиг без запуска самого стима пашет?
Чтобы последний сдк был совместим с ксашем, надо вернуть старый инпут из версии 2.3, и ещё прилинковать старую vgui.lib оттуда же. Короче, немного работы с клиенткой. В XDM 3.0.3.8 всё это можно подглядеть, Мастер обернул #ifdef'ами все нужные места.
Добавлено 10-12-2021 в 04:35:
Цитата:
Chyvachok писал: Свен двиг без запуска самого стима пашет
Неа.
Цитата:
Chyvachok писал: думал что он чисто под Свен заточен
Совместимость с халфой есть. Я первую главу Invasion прошёл без проблем. Клиентку, правда, собирал сам, потому что от версии к версии нового голдсорса баг с мышью в клиентках, собранных из сорцев с гитхаба, то появляется, то пропадает. То он есть всегда, то только при m_rawinput 1, то его нет.