Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Перекрытие спрайтов [Delphi, Windows]


Igor1984 ©   (2003-01-12 19:19:00) 

Ну такой вопрос у меня:
Играли в baldurs gate к примеру? Огромная кртинка (карта) в роли пола по которой движутся спрайты (игроки). Просто в реализации, если без дополнительных эффектов. Загвоздка в одном-есть участки фона, которые перекрывают спрайты игрока (типа зашёл под арку), а есть которые не перекрывают (пол). Я пытался решить эту проблему так:
1) есть большой bitmap по которому движутся спрайты.
2) есть в отдельном файле части этой картинки, которые должны перекрывать этого игрока.
3) При подходе спрайта игрока к таким вот "перекрывающим" участкам, поверх игрока рисовался участок карты из п.2

Есть ли более красивый и быстрый метод.
p.s Планирую использовать DelphiX. Кстати только что приступил к изучению этого комопонента. Но в delphi не чайник :) Помимо способа плиз дайти линк на материалы касательно DelphiX. DelphiGfx уже знаю,щикарный старт для меня, спасибо создателям.


igor1984   (2003-01-15 18:53:00) [1]

Да Урб, огромное тебе спасибо! кидай сюда igor@epost.com.ua
Фенкс.


Mihey   (2003-01-14 22:16:00) [2]

И мне кинь!


Урб   (2003-01-14 19:06:00) [3]

Да он не наш. Он общий. :)

Если хелп нужен, могу на мыло скинуть(242Кб) - командуй.


igor1984   (2003-01-14 17:00:00) [4]

Да у вашего daddy все ссылки битые в разделе скачать.


Урб   (2003-01-14 13:40:00) [5]

На сайте дадди есть хелп к дельфи икс! Скачивай быстро! :)


igor1984   (2003-01-13 19:52:00) [6]

Угу, сяду вплотную за изучение, спасибо.


Axis_of_Evil   (2003-01-13 09:04:00) [7]

2 igor1984:
к примеру
type
THero = class(TImageSprite)
...
constructor Create(AParent: TSprite); //override или нет-не помню
end;

constructor THero.Create(AParent: TSprite)
begin
inherited Create(AParent);

Image := , Width := , Height :=
X := 100;
Y := 100;
Z := 1000000;

и в DoMove - изменяй также как и X и Y


Карлсон   (2003-01-12 20:50:00) [8]

http://daddy.h1.ru
http://www.gamedev.ru/coding/


igor1984   (2003-01-12 19:42:00) [9]

Ага, ещё вопросик: ну рисовать на dx_surface я научился. Все эти спрайты могут жить только в dxdib или dximagelist всё? Где у них свойство z координаты?


igor1984   (2003-01-12 19:39:00) [10]

Великолепно! Хотя я пока не знаю ещё где живёт z- буффер у спрайта, но спасибо. Не знал что delphi_x это умеет. А какие-нибудь материалы почитать про это компонент подскажешь?


Карлсон   (2003-01-12 19:34:00) [11]

если под DelphiX, то нужно просто играться с Z координатой спрайта.
Это его "глубина" на экране.
спрайт с Z=10 будет перекрывать спрайт с Z=9.


Наверх

Титульная страница Поиск, карта сайта Написать письмо