HLFX.Ru Forum
Показать все 4 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- Баг рендеринга спрайта (https://hlfx.ru/forum/showthread.php?threadid=5554)


Отправлено Doc.Batcon 31-08-2020 в 16:16:

Question Баг рендеринга спрайта

Временами пробую воссоздать МК на голдсурсе.
И стал замечать артефакты отображения спрайтов.


Обводка видимой части спрайтов на границах арены. (Граница - func_wall_toggle + невидимая текстура)
Если отойти от края на расстояния, то баг пропадает.


Шов на границах задников арены. Подозреваю туже самую обводку.
Задник сделан в разрешение 512х512 и масштабом 1.0.

Прикладываю спрайт задника арены.

Добавлено 31-08-2020 в 19:16:

Что то не осилил, как сюда картинку загружать
https://imgur.com/qDC2Y0A
https://imgur.com/6YDn7ql


Отправлено JPEG 02-09-2020 в 16:39:

тоже с эти сталкивался, это из-за кривого сглаживания (край спрайта налезает на противоположенный), попробуй спрайт рисовать не вплотную к его границе а отступ сделать со всех сторон в 1 пиксель. Это ксаш или голд? Как персонажи сделаны спрайтами?

__________________
МОЙ НОВЫЙ ПАБЛИК ПО ХЛ))

перехожу на другой двиг


Отправлено Doc.Batcon 03-09-2020 в 10:37:

Цитата:
JPEG писал:
Это ксаш или голд? Как персонажи сделаны спрайтами?

Голд.
C++ Source Code:
1
enum _: e_HeroIndexs
2
{
3
  HERO_KITANA,
4
  HERO_SUBZERO,
5
  ...
6
}
7
enum _: e_HeroAnimations
8
{
9
  ANIM_IDLE_A,
10
  ANIM_IDLE_B,
11
  ANIM_IDLE_C,
12
  ANIM_WALK,
13
  ...
14
}
15
 
16
CHero_InitModel(HERO_KITANA, MDL_HERO_KITANA);
17
CHero_InitAnimation(HERO_KITANA, 	ANIM_IDLE_A, 		0, 7, 		1);
18
CHero_InitAnimation(HERO_KITANA, 	ANIM_IDLE_B, 		8, 16, 		1);
19
CHero_InitAnimation(HERO_KITANA, 	ANIM_IDLE_C, 		17, 23, 	1);
20
CHero_InitAnimation(HERO_KITANA, 	ANIM_WALK, 			50, 58, 	1);
21
CHero_InitAnimation(HERO_KITANA, 	ANIM_WALK_BACK, 	58, 50, 	1);

Создаем массив и сохраняем в него данные о персонаже и будущей анимации(стартовый фрейм, конечный фрейм и зациклинная ли будет анимация).
Далее на спрайт заводим свой синк где обновляем фрейм раз в 0.1-0.06с.

Добавлено 03-09-2020 в 13:34:

Вроде бы понял откуда берется обводка на персонаже. Это спрайт игнорирует все предыдущие перед ним и рисует сразу заднюю стену карты
И это как то связанно с самим позиционирование объектов.
https://imgur.com/dmLxgUr
Нужно отойти немного влево или вправо и обводка с объектов пропадает.

Добавлено 03-09-2020 в 13:37:

Цитата:
JPEG писал:
тоже с эти сталкивался, это из-за кривого сглаживания (край спрайта налезает на противоположенный), попробуй спрайт рисовать не вплотную к его границе а отступ сделать со всех сторон в 1 пиксель.

Не подходит. Видимые края спрайта все равно сглаживаются независимо от отступа от края.


Отправлено Doc.Batcon 11-09-2020 в 19:26:

Тема актуальна.


Временная зона GMT. Текущее время 22:21.
Показать все 4 сообщений этой темы на одной странице

На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024