HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Наши проекты (https://hlfx.ru/forum/forumdisplay.php?forumid=1)
-- XashNT: блог разработчика (https://hlfx.ru/forum/showthread.php?threadid=5297)
Отправлено Дядя Миша 26-11-2019 в 09:33:
Цитата:
XaeroX писал:
Есть у тебя аналог dynamicMap?
image u_DynamicMap = "entity->$SubviewTexture";
Добавлено 26-11-2019 в 12:28:
Если интересно, вот полный список того, что можно подать на вход текстурного юнита:
C++ Source Code:
3 | // types below are applied during model loading |
4 | LOC_MATDEF_DETAILMAP = 1, // path to detail texture from materials.def |
5 | LOC_GLOBAL_DEFAULT_IMAGE, |
6 | LOC_GLOBAL_PARTICLE_IMAGE, |
7 | LOC_GLOBAL_WHITE_IMAGE, |
9 | LOC_GLOBAL_BLACK_IMAGE, |
10 | LOC_GLOBAL_FITNORM_IMAGE, |
11 | LOC_GLOBAL_WHITECUBE_IMAGE, |
14 | // types below are applied during rendering |
15 | LOC_GLOBAL_SKYBOX_IMAGE, |
16 | LOC_GLOBAL_SCREEN_COLOR, |
17 | LOC_GLOBAL_SCREEN_DEPTH, |
22 | LOC_ENTITY_CINEMATIC, // cinematic texture |
23 | LOC_ENTITY_SUBVIEW, // reflection, portal, monitor etc |
24 | LOC_ENTITY_LAYERMAP, // terrain layers |
25 | LOC_LIGHT_SPOTLIGHT, // get spotlight texture from dlight |
31 | LOC_CONSOLE_TEXPATH // string or texturenum |
Добавлено 26-11-2019 в 12:29:
Последняя локация для дебага - берёт путь или индекс текстуры из консольной переменной 
Добавлено 26-11-2019 в 12:33:
А вот входные данные для юниформов
C++ Source Code:
3 | LOC_MATDEF_DETAILSCALE = 1, |
7 | LOC_GLOBALS_SCREENSIZE, |
8 | LOC_GLOBALS_SCREENSIZEINV, |
10 | LOC_GLOBALS_LIGHTSTYLES, |
11 | LOC_GLOBALS_FOGPARAMS, |
12 | LOC_GLOBALS_AMBIENTFACTOR, |
13 | LOC_GLOBALS_DIFFUSEFACTOR, |
14 | LOC_GLOBALS_SUNREFRACTION, |
15 | LOC_GLOBALS_GAMMATABLE, |
17 | LOC_ENTITY_BONEMATRIX, |
18 | LOC_ENTITY_BONEQUATERNION, |
19 | LOC_ENTITY_BONEPOSITION, |
20 | LOC_ENTITY_LIGHTSTYLES, |
22 | LOC_ENTITY_RENDERCOLOR, |
23 | LOC_ENTITY_CUBELERPFACTOR, |
24 | LOC_ENTITY_BOUNDSCUBEMAP0, |
25 | LOC_ENTITY_BOUNDSCUBEMAP1, |
26 | LOC_ENTITY_ORIGINCUBEMAP0, |
27 | LOC_ENTITY_ORIGINCUBEMAP1, |
28 | LOC_ENTITY_CUBENUMMIPS0, |
29 | LOC_ENTITY_CUBENUMMIPS1, |
30 | LOC_ENTITY_SUBVIEWMATRIX, |
31 | LOC_ENTITY_VIEWFORWARD, |
34 | LOC_ENTITY_VIEWORIGIN, |
37 | LOC_LIGHT_SHADOWPARAMS, |
38 | LOC_LIGHT_SHADOWMATRIX, |
45 | LOC_LPROBE_SHADEAMBIENT, |
46 | LOC_LPROBE_AMBIENTCUBE, |
47 | LOC_RENDER_VIEWORIGIN, |
49 | LOC_RENDER_CSMSPLITDIST, |
50 | LOC_RENDER_CSMTEXELSIZE, |
52 | LOC_CONSTANT_VARIABLE, |
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено XaeroX 26-11-2019 в 10:23:
Цитата:
Дядя Миша писал:
image u_DynamicMap = "entity->$SubviewTexture";
Так может не быть неко кой энтити, для тех же зеркал.__________________
Отправлено Дядя Миша 26-11-2019 в 10:27:
Ну это просто название такое. Так-то оно хранится персонально для каждого сурфейса.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено XaeroX 26-11-2019 в 10:28:
LOC_LIGHT_OMNILIGHT - это кастомный attenuation image?
А фильтрующая кувемапа где?
Добавлено 26-11-2019 в 17:28:
Ну в принципе да, по функционалу похоже на Волатилу. Поздравляю! 
__________________
Отправлено Дядя Миша 26-11-2019 в 11:13:
Цитата:
XaeroX писал:
это кастомный attenuation image?
не, это диффузная кубемапа для омнилайта. Аттенюатион-имаджей у меня вообще нет, они прекрасно заменяются функциями в шейдере, это быстрее и проще. Я от них отказался еще в 2015-м году.
Цитата:
XaeroX писал:
по функционалу похоже на Волатилу
я вообще-то показал процентов 5 от функционала.__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено XaeroX 26-11-2019 в 11:18:
Цитата:
Дядя Миша писал:
они прекрасно заменяются функциями в шейдере, это быстрее и проще
Ты исходишь из того, что аттенуация всегда простая - квадратичная там или линейная. Но за счёт кастомных текстур аттенуации в волатиле можно проворачивать разные штуки, например, имитировать ареа-лайты. Собсно, я это показывал в 2016 году в той теме, с уровнями из халфы.
Добавлено 26-11-2019 в 18:18:
Цитата:
Дядя Миша писал:
я вообще-то показал процентов 5 от функционала.
Ну я и имел в виду - твои 5% похожи на 5% функционала волатилы.__________________
Отправлено Дядя Миша 26-11-2019 в 11:53:
Цитата:
XaeroX писал:
Но за счёт кастомных текстур аттенуации в волатиле можно проворачивать разные штуки
долго ли добавить? Я до света вообще еще недобрался, это просто такой задел на будующее.
Приступил к написанию убер-шейдера, который должен в себя включить все возможные комбинации кутришных шейдеров. Посмотрим как это у меня получится. Самое неудобное - вот эти грёбаные тексмоды, которые можно навешивать по нескольку штук на юнит.
Кстати говоря, я достаточно долгое время имел дело с кастомными поделками и вариациями на тему кутри, из чего у меня сложилось неверное представление об их возможностях. В оригинальной кутри лимиты гораздо скромнее, чем в этих форках. Там я помню какие-то бандлы наворачивали, чтобы значит сколлапсировать стадию в мульти-текстуринг, какие-то cg-программы можно было подключать (ессно никто этого не делал).
А в кутри всего восемь стадий-юнитов. По лимитам прекрасно укладываемся.
Впрочем я бы мультипроходность при всём желании замутить не смог, мой рендерер её не поддерживает. Да и не нужна она в наше время. Всё в шейдере прекрасно суммируется, без этих ваших depthFunc( GL_EQUAL );
Добавлено 26-11-2019 в 14:53:
Цитата:
XaeroX писал:
Ну я и имел в виду - твои 5% похожи на 5% функционала волатилы.
у меня есть все основания полагать, что новая Волатила мало чем отличается от прежней, на которой был сделан Wolfram. Ну вот навскидку - тот же Quake3 like формат уровней, те же Quake3 like описания материалов.
Тот же Нутон. Ну тени заменили со стенсильных на шадовмапы. А что еще?
Вот ты бы сам описал какие отличия старого движка от нового, такой список.__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено XaeroX 26-11-2019 в 12:32:
Цитата:
Дядя Миша писал:
у меня есть все основания полагать, что новая Волатила мало чем отличается от прежней, на которой был сделан Wolfram.
Сильно отличается, на самом деле.__________________
Отправлено Дядя Миша 26-11-2019 в 13:37:
Первые опыты 
Это уже нарисовано через новую систему. Пока еще не мигает и не ерзает.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено nemyax 26-11-2019 в 14:34:
Дядя Миша
А какие идеи про анимацию шейдеров? Юниформ про аптайм движка или ещё как-нибудь?
Отправлено Дядя Миша 26-11-2019 в 14:53:
та пока никаких идей, этож общая проблема.
Она в основном упирается в синтаксис скрипта, как красиво написать, что мы на этот юнит хотим навесить несколько текстур, которые будут сменяться через время? Ну вот для стандартного описания юнита
C++ Source Code:
image = u_ColorMap = "textures/common/black.tga"; |
как здесь указать что будет много меняющихся текстур?
Добавлено 26-11-2019 в 17:53:
ЗЫ. с мультислоёными текстурами аналогичная проблема, кстати.
Ну ладно, fps или еще какое правило их смены можно задать через отдельную команду и это непроблема.__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено thambs 26-11-2019 в 15:03:
Цитата:
Дядя Миша писал:
упирается в синтаксис скрипта, как красиво написать
Маску/список в квадратных скобочках ala bash?__________________
http://www.moddb.com/mods/monorail-quest
Отправлено Дядя Миша 27-11-2019 в 06:32:
thambs приведи пример.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено AntiPlayer 27-11-2019 в 06:36:
Дядя Миша
C++ Source Code:
image = u_ColorMap = ["textures/common/black.tga", "textures/common/white.tga"]; |
Так не красиво?__________________
I tell you to enjoy life
Отправлено Дядя Миша 27-11-2019 в 07:25:
Ладно, попозже к этой теме вернёмся. Может и норм.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'