Главная » 2011 » Март » 18 » Спрайты в GLScene
11:00
Спрайты в GLScene
Сегодня мы поговорим о спрайтах.
В Сцене есть 2 вида спрайтов: TGLHUDSrite и TGLSprite.

TGLHUDSrite (Heads-Up Display)
Это спрайты предназначенные для отображения поверх всех объектов сцены (если такое возможно). Они похожи на простые картинки с той лишь разницей что участвуют в иерархии , а значит могут быть перекрыты другим объектом.
С помощью них в играх чаще всего отображают:
Здоровье/Жизни
Время
Способности
Прицел
Карта, план или радар
Всевозможные меню

Для примера мы сделаем свой прицел.
И так создаем новый проект, размещаем пару объектов и  сам TGLHUDSrite.
Пример моей иерархии

Работать с ними очень просто, вот пример кода по загрузке и расположении по центру экрана
  GLHUDSprite1.Material.Texture.Disabled:=false;
  GLHUDSprite1.Material.Texture.Image.LoadFromFile('target.jpg');
  GLHUDSprite1.Position.X:=GLSceneViewer1.Width/2;
  GLHUDSprite1.Position.y:=GLSceneViewer1.Height/2;
В результате мы получим нечто подобное этому.


Хочу еще сказать что, можно грузить в спрайты и png , если предварительно подключить к проекту модули TPNGImage.

TGLSprite
Это обычные спрайты работать с ними так же как и с HUD спрайтами , но в отличии от HUD они могут располагаться в пространстве как простой объект.
Кстати у обоих видов спрайтов есть возможность сделать прозраные элементы.
Пример:
   Material.Texture.ImageAlpha := tiaSuperBlackTransparent;
   Material.Texture.TextureMode := tmReplace; \\Мод для самой текстуры
   Material.BlendingMode:= bmTransparency;
Черный цвет исчезнет, а взамен него получим прозрачный участок.

Еще интересная особенность это то что, они всегда повёрнуты лицом к наблюдателю (камере), т.е. если вы посмотрите с верху то он так же отобразиться  как и сбоку. Помните Hexen или Duke Nukem 3D , там так сделаны были монстры и многие объекты , сколько не ходи во круг да около сзади не зайдешь )

Как пример покажу свою небольшую игрушку , в ней используются 2 вида спрайта. Как вы видите от того что, камера наклонена спрайты не изменились.
 

Категория: Статьи | Просмотров: 908 | Добавил: De:Light | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Вы вошли как: Гость
11:49
Вы вошли как: Гость
Календарь
«  Март 2011  »
ПнВтСрЧтПтСбВс
 123456
78910111213
14151617181920
21222324252627
28293031
Категории
Новости [11]
Статьи [23]
GLscene,Web Design,IT,etc...
Счетчик

Онлайн всего: 1
Гостей: 1
Пользователей: 0