Анимированные спрайты.
Подскажите пожалуйста как в Блице сделать анимированные спрайты? К примеру пламя свечи, или монстров как в М&M7?
|
Re: Анимированные спрайты.
CreateSprite
LoadAnimTexture EntityTexture тебе помогут. подробнее: грузим анимированную тексу. в цикле текстурим срайт текстурой с определенным кадром EntityTexture spr,tex,frame этот кадр, ясень пень, надо увеличивать в цикле |
Re: Анимированные спрайты.
Нечто подобное я пробовал. Получалось, что на спрайте рамка ползла по стрипу и ничего не получалось.
|
Re: Анимированные спрайты.
для спрайта Blend-инг моде поставь 3 (для огня). если по краю рамка, то это скорее всего текстура некачественная
|
Re: Анимированные спрайты.
Как некачественная?
Жаль что напрямую GIFы юзать нельзя! |
Re: Анимированные спрайты.
Tasadar
некачественая всмысле или сильно зжата или криво зделана |
Ответ: Анимированные спрайты.
Сделал всё как выше описано но такая проблема возникла: скорость смены кадров текстуры оочень огромна. Хотя в скрипте вроде всё как надо:
Function ubdate_pedobear() If MilliSecs() > timer + 1000 d=d*(-1) timer=MilliSecs() EndIf If d>0 Then k=1 Else k=0 EntityTexture spr_ped, anim_ped, k End Function |
Ответ: Анимированные спрайты.
Код:
If MilliSecs() > timer + 1000 если мсек больше чем таймер+1000 то д=-д--ЗАЧЕМ?? таймер=мсек... Фсё так?? .. по твоему коду видно что "д" будет менятся всегда(каждый такт)..так? и зачем нужна вообще Д если можно было менять К(k=not k) Код:
Function ubdate_pedobear() |
Ответ: Анимированные спрайты.
Да d я ввёл просто потому что так в голову взбрело. Чтобы посмотреть как работает. И функция у меня работала, но когда я применил её к спрайту то получилась херня( которую я уже описывал). А то что вы мне написали, во-первых, не работает. Во-вторых я даже не понял как оно должно работать:( При чём тут Mod? Это же остаток от деления. Что это вообще? объясните пожалуйста!
|
Ответ: Анимированные спрайты.
а...сори..работать не будет так как каждый раз функция очищает свои значения(для моего примера k должна быть глобальной)...
зачем mod?? пример:k=будет больше чем количество фреймов(оно может быть любым если не обнулять(что наверное проще))..то mod 50 будет постоянно интегрироватся от 0 до 49 Код:
global frame%=0 |
Ответ: Анимированные спрайты.
Это я понял и уже исправил. Но вопрос вот в чём: Мне нужно чтобы смена кадра была 1 раз в секунду. Но даже с таймером у меня получается скорость over9000 кадров/сек.
|
Ответ: Анимированные спрайты.
ну потому что прибавлять надо по таймеру
global frame%=0,timer% Function ubdate_pedobear() if millisecs()>timer then timer=millisecs() frame=frame+1 endif if frame>30 frame=0 ; тут интеграция будет мах до 30 EntityTexture spr_ped, anim_ped,frame End Function |
Ответ: Анимированные спрайты.
Уррааа! заработало
|
Часовой пояс GMT +4, время: 12:01. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot