![]() |
Страницы (41): « Первая ... « 10 11 12 13 [14] 15 16 17 18 » ... Последняя » Показать все 608 сообщений этой темы на одной странице |
HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Наши проекты (https://hlfx.ru/forum/forumdisplay.php?forumid=1)
-- PrimeXT - логическое продолжение XashXT (https://hlfx.ru/forum/showthread.php?threadid=5371)
Теперь в планах реализовать батчинг брашевых энтитей. Что там вообще можно батчить у них? По идее у каждой энтити может быть какой-то свой рендермод, будет ли это препятствием?
__________________
Мой сайт
Xash3D Modding Discord
Естественно. Стейт же меняется.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
Мой сайт
Xash3D Modding Discord
какого?
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
1 | /* |
2 | ================= |
3 | R_BmodelSurfaceCompare |
4 |
5 | compare translucent surfaces |
6 | ================= |
7 | */ |
8 | static int R_BmodelSurfaceCompare( const gl_bmodelface_t *a, const gl_bmodelface_t *b ) |
9 | { |
10 | msurface_t *surf1, *surf2; |
11 |
12 | surf1 = (msurface_t *)a->surface; |
13 | surf2 = (msurface_t *)b->surface; |
14 |
15 | Vector org1 = RI->currententity->origin + surf1->info->origin; |
16 | Vector org2 = RI->currententity->origin + surf2->info->origin; |
17 |
18 | // compare by plane dists |
19 | float len1 = DotProduct( org1, RI->vforward ) - RI->viewplanedist; |
20 | float len2 = DotProduct( org2, RI->vforward ) - RI->viewplanedist; |
21 |
22 | if( len1 > len2 ) |
23 | return -1; |
24 | if( len1 < len2 ) |
25 | return 1; |
26 |
27 | return 0; |
28 | } |
__________________
Мой сайт
Xash3D Modding Discord
Так и делается вроде, back to front.
__________________
Мой сайт
Xash3D Modding Discord
__________________
Мой сайт
Xash3D Modding Discord
SNMetamorph бэкфейсы не рендерятся же
__________________
Мой сайт
Xash3D Modding Discord
Стёкла нельзя рисовать со включённым depth-write, иначе мы не увидим за ближним стеклом ничего - там всё будет затёрто.
Точнее говоря - можно и даже нужно, я в параное именно так и делаю, предварительно сохранив содержимое экрана в отдельную текстуру, но это гораздо сложнее чем аппаратный блендинг. Но и возможностей больше.
Но без полноценного OIT это нормально работает только на плоскостях.
Добавлено 27-02-2021 в 11:41:
В ксаш-моде тоже всё готово к такому стилю отрисовки стёкол, но я его не заюзал.
Добавлено 27-02-2021 в 12:35:
SNMetamorph ты вообще представляешь как осуществляется рендеринг со включенной записью в буффер глубины?
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
Мой сайт
Xash3D Modding Discord
В общем, реализовал как-то батчинг непрозрачных брашевых энтитей, все вроде рисуется, но есть проблема в том, что теперь начал неправильно работать куллинг: модели пропадают до того, как исчезнут из поля видимости, то есть когда я стою на огромной браш-модельной скале, и смотрю себе под ноги, то она просто исчезает. Еще в коде видел заметку про TODO store cull type. Не понял что к чему. Что такое может быть с куллингом тут?
__________________
Мой сайт
Xash3D Modding Discord
Тебе виднее, значит так реализовал.
Добавлено 28-02-2021 в 17:07:
А на TODO не смотри, оно ни на что не влияет.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Временная зона GMT. Текущее время 08:36. | Страницы (41): « Первая ... « 10 11 12 13 [14] 15 16 17 18 » ... Последняя » Показать все 608 сообщений этой темы на одной странице |
На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024