Тренсфер у меня тут к тебе несколько вопросов по тутору:
Цитата:
Начну с клиента. В cbase.h в самый конец вставим объявление класса тумана:
Это как понимать
Пойдем далее - ты объявляешь параметры тумана как float, однако парсишь значения с карты как int (atoi).
И наконец передаешь первый байт каждого float
Оно вообще работает? тут по идее надо roundup сделать + умножение на 255 перед отправкой и деление на клиенте.
Это если учесть, что диапазон значений не выходит за рамки 0-1.0, как того требует OpenGL.
Далее если бы ты использовал стандартные переменные, тебе бы не пришлось юзать кастомную мессагу из 7 байт, а достаточно было бы записать энтиндекс и по нему отловить нужную энтить. Это гораздо проще и удобнее.
Место для вызова тумана - крайне неудачное к сожалению.
вот как сделано в xash
Тип тумана можешь выбросить, GL_EXP и GL_EXP2 дают отвратительные результаты.
Вызывать нужно перед V_CalcRefDef, но после завершения всех проходов (камер, мониторов итд).
Я возможно тряхну стариной и таки напишу тутор по табличному туману из Lazarus (был такой аналог спирита под Q2, тоже с мовевитчем, зеркалами и прочей бедой).
Там кстати говоря учтена видимость монстров в тумане - для этого мы просто в функции CanSee находим энтить env_fog, берем текущую плотность тумана и делим её на дистанцию по хитрой формуле. И туман начинает оказывать на монстров воздействие.
лоакльный туман немного сложнее, но в принципе реализуется подобным образом.
Да, кстати, как пофиксить скай с туманом?
А то приходится его отключать.. Я пару вариантов пробовал, у меня либо просто не рисуется туман(на скае), либо небо начинает косячить(glclear мутил по всякому, ничего не вышло)
Может есть какие зарисовочки по этой теме?
Дядя Миша это меня вчера заглючило Я даже тутор не проверил Исправлю, всё исправлю и переменные и прочее. Вызов для тумана я взял из того французкого тутора.
А вот тип GL_EXP хоть убейте- мне понравился.
Этот тутор живёт только один день и в нём полно глюков.
__________________
Хотелось бы, чтобы не только хотелось...
Дядя Миша вот мне как-то больше нравится наоборот. А вот чтобы и там и там работало, как я понял нельзя, либо придётся извращаться, мутить кучу разных функций...