![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Выделение спрайта
VasyaPupkin © (2004-10-04 16:28:00)Я создаю спрайт таким способом:
var
i:integer;
List : Tlist;
begin
List:=Tlist.create;
for i:=1 to 100 do
begin
list.add(TPlayerSprite.create(spriteengine.engine));
with TplayerSprite(list.items[0]) do
begin
...
end;
скажите мне как его выделить.
пытался в Collison'e - не получается
П7 (2004-10-06 12:01:00) [1]Вот прямая ссылка на страницу надстройки: http://tzlab.amillo.net/content.php?dir=delphi&subdir=directx
VasyaPupkin (2004-10-05 18:48:00) [2]в поисковиках я нашел только:
http://www.gamedev.ru/forum/?action=showtopic&group=5&topic=264
-
P7Gfx Engine - наброски 2D движка / Изометрия / Форум / GameDev.ru
а от туда на сайт
м.б.скажешь ссылку? а то посылаешь меня в поисковики
П7 (2004-10-05 18:07:00) [3]Ты посмотри мой класс спрайта, а?
У МЕНЯ ВСЁ РАБОТАЕТ!!! При это я не знаю, что такое PixelCheck. Следовательно можно обойтись без него - я же обошёлся... У меня вообще классу пополам - идёт анимация или нет. Колижен с учётом прохрачного цвета будет совершаться на текушем кадре анимации.
Не тормози - скачай и посмотри!!!
> VasyaPupkin (05.10.04 14:36) [11]
Да, это мой сайт, только если ты зайдёшь по этой ссылке, то дальше не пройдёшь!!! (: Топай через ссылки в поисковиках... (:
VasyaPupkin (2004-10-05 17:14:00) [4]а если бы я знал как я бы не пришел к вам и не спрашивал.
а без PixelCheck можно какой нибудь регион выделить?
например из 1'ого фрагмента анимации?
П7 (2004-10-05 15:41:00) [5]Я вообще не знаю, что такое PixelCheck... (:
cyborg (2004-10-05 15:09:00) [6]
> [9] VasyaPupkin (05.10.04 13:09)
Да. Чего подробнее? Открываешь сию функцию и ковыряешь чтобы работало.
VasyaPupkin (2004-10-05 14:36:00) [7]я нашел
http://tzlab.amillo.net/
это твой сайт?
тогда скажи где хелпу взять
и че там нет какой проблемы?([7])
П7 (2004-10-05 13:32:00) [8]А не проще ли взять и своять свой класс спрайта, где учесть всё, что тебе нужно?
Я вот писал свою надстройку над DelphiX со своим классом спрайтов и у меня подобных вопросов не возникало... (:
Поищи в Сети P7Gfx (:
VasyaPupkin (2004-10-05 13:09:00) [9]2 [8]
а по подробнее...
переписывать саму функцию PixelCheck?
cyborg (2004-10-05 12:21:00) [10]
> [7] VasyaPupkin (05.10.04 12:16)
Получится, переписывай PixelСheck с учётом анимации.
VasyaPupkin (2004-10-05 12:16:00) [11]=(((
нашел:
1. PixelСheck не работает вообще когда сталкивающиеся спрайты анимируются.
2. PixelСheck работает плохо, когда один из двух сталкивающихся спрайтов анимируется.
3. Pixelcheck работает хорошо, только когда ни один из обоих спрайтов не анимируется.
4. Столкновения без PixelCheck всегда работают хорошо (даже когда оба спрайта анимируются). В этом случае, важны
только рамки спрайтов (высота и ширина).
т.е. из 2 следует что ни как не получится???
VasyaPupkin (2004-10-05 12:01:00) [12]и еще
если я создаю не Листом а отдельно каждую тоже все работает
м.б. знаете в чем дело?
и еще вопрос-как работает PixelCheck?
он считывает каждый пиксель??
VasyaPupkin (2004-10-05 11:56:00) [13]=)) шутники
да ошибочка вышла не [0] a [i]
при наведении курсора на спрайт определяется какой ето спрайт в list'е
но работает это только при PixelCheck:=False;
т.е. мне падо стобы не по области прямоугольника определялось, а по картинке
т.е. при наведении на TransparentColor ни че небыло
П7 (2004-10-05 10:22:00) [14]
> Servelat © (04.10.04 20:39) [3]
Ты его имя видишь? (: Чё тогда спрашиваешь? (:
Servelat (2004-10-04 20:39:00) [15]
> скажите мне как его выделить.
Что понимается под словом "выделить"? Найти его в списке, либо выделить как мужичков в RTS стратегиях, либо еще что-то. Каждый ведь поймет по-своему и даст свой ответ.
> я сделал выделение спрайта, но он работает только с PixelChek:=False;
то есть ты сделал что-то (так как неизвестно что у тебя называется выделением), и у тебя это работает только с PixelChek:=False;
Как ты думаешь, кто-нибудь сможет отгадать в чем причина?
> with TplayerSprite(list.items[0]) do
А почему [0]???
VasyaPupkin (2004-10-04 20:09:00) [16]я сделал выделение спрайта, но он работает только с PixelChek:=False;
Почему??
Мне надо не по прямоугольнику выделять, а по картинке
Ландграф Павел (2004-10-04 19:46:00) [17]блин, ну есть point спрайта, есть Rect выделения... есть стандартная ф-ции проверки попадания точки в прямоугольник, вот и усе... храни помимо координат, их порядковый номер, и по нему ищи те спрайты которые ты выделил