HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- [Кодинг] Рисование спрайтов поверх полигонов с помощью TriAPI (https://hlfx.ru/forum/showthread.php?threadid=4822)
Отправлено XaeroX 29-07-2016 в 05:40:
Цитата:
Ku2zoff писал:
Вопрос на засыпку
Чёрт, я засыпался.
Ну RTFXSC, ёлки-палки.
Цитата:
Ku2zoff писал:
Что за хак такой?
glTexImage2D по специальным индексам, то ли 5100-5105, то ли около того. И снова RTFXSC.__________________
Отправлено Ku2zoff 29-07-2016 в 06:02:
Цитата:
XaeroX писал:
glTexImage2D
Ну это надо opengl32.lib подключать, а я хочу обойтись встроенными механизмами движка. Хотелось бы тени тоже встроенные, но тут уже никак по-другому.
Добавлено 29-07-2016 в 13:02:
Цитата:
XaeroX писал:
RTFXSC
Что за аббревиатура такая? Гугл по ней выдаёт всякие биржевые индексы, потому что Real Time ForeX.
Отправлено XaeroX 29-07-2016 в 06:31:
Ku2zoff
Ну ты RTFM знаешь, что такое?
Тут то же самое, только XSC - это Xash Source Code. 
Цитата:
Ku2zoff писал:
а я хочу обойтись встроенными механизмами движка
Да ты пойми, движок уже не просто устарел, он... ну я не знаю. Вальва уже давным-давно отрезала D3D-рендер, а под линуксом - и софтварный. По сути в халфе только OpenGL-рендер и остался.__________________
Отправлено Ku2zoff 29-07-2016 в 07:06:
Цитата:
XaeroX писал:
Тут то же самое, только XSC - это Xash Source Code.
Новый локальный мем родился?
Это как в старые времена. Только раньше было "Юзай спирит". А сейчас "Учи матан сорцы ксаша".
Добавлено 29-07-2016 в 14:06:
Цитата:
XaeroX писал:
Да ты пойми, движок уже не просто устарел, он... ну я не знаю.
Конечно устарел. Но я даже на сорс не могу нормально перейти, потому что инструментарий у него пипец просто. Чтобы текстурку сделать, надо её мало того, что конвертировать, а ещё и какой-то файл с описанием написать. И физику для модели сделать. И эмоции в фейспозере сделать для персонажа. И шейдеры написать. Ужос! Половину из этих операций инструменты должны автоматически делать. А дальше уже тюнинг ручками.
Так что я лучше буду юзать устаревший движок. Я ж не ради денег и славы. А ради собственного удовольствия моддингом занимаюсь.
Отправлено ILZM 29-07-2016 в 16:47:
Цитата:
Ku2zoff писал:
Но я даже на сорс не могу нормально перейти, потому что инструментарий у него пипец просто.
1. конвертировать в 2 клика. Текст написать надо, чтобы выбрать шейдер и его опции, там все легко
2. физику наверное можно сгенирировать
3. эмоции всегда создавались вручную, потому-что у каждой модели они разные. Есть один сервис mixamo fuse, но там все персонажи сгенирированные. Если хочешь создать качественного персонажа и вдохнуть в него жизнь, то все руками.
4. шейдеров вроде бы пока писать не надо. Там везде один на все материалы.
Я сам недавно шарахался от этого, но теперь пони-маю, что все эти тулзы и движения есть обязательное требование для такого уровня движка
Отправлено Дядя Миша 29-07-2016 в 20:17:
Цитата:
Ku2zoff писал:
Рисование спрайтов поверх полигонов с помощью TriAPI
А зачем рисовать спрайты поверх полигонов с помощью TriAPI 
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено Ku2zoff 30-07-2016 в 13:33:
Цитата:
Дядя Миша писал:
А зачем рисовать спрайты поверх полигонов с помощью TriAPI
Ну, например, чтобы сделать какой-нибудь текстурный эффект, не прикручивая OpenGL.
Отправлено Дядя Миша 30-07-2016 в 14:58:
Ku2zoff сделай каустики штоле. А мы посмотрим.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено Crystallize 30-07-2016 в 16:48:
Цитата:
Ku2zoff писал:
Вопрос на засыпку: что за функции WorldToScreen и ScreenToWorld в TriAPI? Что они делают? Какие-то операции с координатами?
http://half-life.ru/forum/showthrea...31870#post31870
Отправлено Ku2zoff 30-07-2016 в 17:11:
Цитата:
Дядя Миша писал:
сделай каустики штоле. А мы посмотрим.
Я и хочу их сделать. Проблема в том, что спрайт масштабируется под масштаб текстуры. То есть, если покрывать все подводные поверхности каустиками, надо будет на всех брашах использовать одинаковый скейл текстур. А это будет некрасиво, если помимо мира покрывать каустиками ещё и энтити, где скейл может отличаться.
Отправлено Дядя Миша 30-07-2016 в 17:30:
А ты делай проективные каустики, как фонарик в параное 
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено Ku2zoff 30-07-2016 в 19:56:
Цитата:
Дядя Миша писал:
А ты делай проективные каустики, как фонарик в параное
А средствами TriAPI это возможно? Знаю, что можно рисовать квадраты и треугольники определённого размера. А вот насчёт полигонов не уверен. Хотя ХЗ, наверное можно масштабировать.
Добавлено 31-07-2016 в 02:56:
Цитата:
Crystallize писал:
http://half-life.ru/forum/showthread.php?s=&postid=31870#post31870
Это что, вот это можно сделать с помощью этих функций? Ну не прям это, но выделение объекта на экране.
Отправлено Crystallize 30-07-2016 в 20:28:
Цитата:
Ku2zoff писал:
Это что, вот это можно сделать с помощью этих функций? Ну не прям это, но выделение объекта на экране.
Оно-то тут при чём? К тому же тебе нужен не объект, а его полигоны, а то и вообще полигоны мира если каустики, так?
Я всё же надеюсь, что ты после каустиков вернёшься к шайну.
Отправлено PLut 30-07-2016 в 20:53:
Ku2zoff WorldToScreen превращает мировые координаты в х, у на экране. Цифры урона в бдефе так нарисованы.
__________________
Base Defense on Steam, ModDB
Отправлено Дядя Миша 30-07-2016 в 20:59:
Цитата:
Ku2zoff писал:
А средствами TriAPI это возможно?
Неа. Там даже TexCoord4f нет.
Цитата:
Ku2zoff писал:
Знаю, что можно рисовать квадраты и треугольники определённого размера. А вот насчёт полигонов не уверен.
Ну во первых при помощи треугольников можно вывести многогранник любой сложности, а во вторых есть TRI_POLYGON.
Цитата:
Ku2zoff писал:
Это что, вот это можно сделать с помощью этих функций? Ну не прям это, но выделение объекта на экране.
То что на картинке - это пост-процесс с использованием буффера глубины и эдж-детекта. WorldToScreen, можно использовать, ну например для вторичной аттаки редемира, когда желаемые цели подсвечиваются спрайтами с красным прицелом. Сами цели (монстры, игроки) имеют трехмерные координаты, а после этой функции уже имеют двухмерные, в рамках экрана. И можно выводить ортогональные спрайты. Обратная функция может пригодится, ну например для выделения вышенькой брашей в 3д виде. Ну примерно как в демках физики можно подцеплять всякие коробки-бочки и бросать их.
Добавлено 30-07-2016 в 23:59:
Цитата:
PLut писал:
Цифры урона в бдефе так нарисованы
строго говоря разница между парралельным и ортогональным спрайтом только в перспективной проекции, которую можно эмулировать, регулируя скейл спрайта в зависимости от дистанции до камеры. Ну вообщем когда разберетесь, вам всё это покажется очень просто и прейатно.__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'