Смена анимации с помощью KeyDown
Прочитал все сообщения на форуме по поводу загрузки анимации, но для себя ничего не нашел...А потому хочу поинтересоваться у профи, как менять анимацию с помощью KeyDown? Я пробовал разные варианты загрузок: и X, и B3D, и MD2. Но так толком ничего и не понял. С помощью KeyHit смена анимации проходит легко и без проблем, не взирая на то есть там ключи или нет. Но стоит поменять на KeyDown и сменнённая анимация замирает на первом кадре, пока не отпустишь клавишу. Так вот я хотел спросить, кто может мне без отговорок и сссылок на туториал, объяснить на пальцах как сделать простой цикл проверки нажатия и смены анимации? Чтоб нажал вверх - пошел вперёд, отпустил клавишу - стоит, нажал пробел-подпрыгнул, а если две клавиши (вперёд и Shift)- бежит... Вот такой вопрос.
|
Ответ: Смена анимации с помощью KayDown
А что тут не понятного? KeyHit реагирует один раз после нажатия. KeyDown много раз пока не отпустишь клавишу. При KeyDown текущий кадр переносится на 1 кадр пока эта клавиша нажата. Если хочешь приципить анимацию к движению объекта, просто сделай проверку внутри кейдауна на проигрывание анимации объектом если есть уже анимация не вкючать новую.
|
Ответ: Смена анимации с помощью KayDown
Спасибо конечно, но мне это ни о чём не говорит. Если не трудно код пожалуйста напишите для наглядности.
|
Ответ: Смена анимации с помощью KayDown
Если это вам ни о чем не говорит, значит рано браться за программирование игр. едиственное что могу подсказать : команда проверяющая анимированность объекта - Animate(Ent).
|
Ответ: Смена анимации с помощью KayDown
Я боюсь что б не было поздно :) Ведь время не стоит на месте...Про Animate(Ent) я знаю, а вот как его правильно вставить в цикл ? Вот тут у меня соображения не хватает. Наверно я староват уже для понимания :) Ну ничего, если вы мне не можете объяснить попробую обратиться на другой форум... Может там мне не скажут что я недотёпа...
|
Ответ: Смена анимации с помощью KeyDown
Тфу, подрукой блитза нет. Не Animate() а Animating() кажется.
Рановато, и недотепа, разные вещи. Цитата:
|
Ответ: Смена анимации с помощью KeyDown
)))) Да не страшно, ведь я то всё равно ничего не понимаю, ведь так ? Вот куда мне здесь что вставить:
Graphics3D 800,600,16,1 SetBuffer BackBuffer() cam=CreateCamera() lite = CreateLight(1) MoveEntity lite,5,0,0 ;-------------------------------------- m=LoadAnimMesh("officer.b3d") men=ExtractAnimSeq(m,212,232) men2=ExtractAnimSeq(m,236,260) men3=ExtractAnimSeq(m,301,319) ScaleEntity m,0.1,0.1,0.1 PositionEntity m,0,0,0,True PointEntity cam,m PositionEntity cam,0,3,-7 While Not KeyHit(1) Animate m,1,0.5,1 If KeyDown(200) Animate m,1,0.5,men2 If KeyDown(205) Animate m,1,0.5,men3 UpdateWorld RenderWorld Flip Wend End |
Ответ: Смена анимации с помощью KeyDown
If KeyDown(200)
if not Animating(men2) Animate m,1,0.5,men2 endif endif тоже самое с другой кнопкой. Тебе в предыдущей теме тоже хороший код привели. http://forum.boolean.name/showthread.php?t=7338 |
Ответ: Смена анимации с помощью KeyDown
Сейчас попробую...
Попробовал... В строке if not Animating(men2) выбивает ошибку: Entity does not exist Хотя я не могу утверждать что вы не правы, не знаю, может дело в самой анимации? |
Ответ: Смена анимации с помощью KeyDown
"Entity does not exist" дык интити нету, проверь правильность пути к файлу, названия переменных, скорее всего в этом косяк, сам сколько раз мучился с подобным, а потом оказывалась впопыхах переменную не так назвал.
|
Ответ: Смена анимации с помощью KeyDown
Может не надо использовать с B3D ExtractAnimSeq ? Ведь в начале он загружает модель, а потом при проверке ошибка...
|
Ответ: Смена анимации с помощью KeyDown
Синь файлик модели я посмотрю.
И какой версии блица ты пользующийся? |
Ответ: Смена анимации с помощью KeyDown
Вложений: 1
Версия 1.98 А модель я позаимствовал из FPS Креатора (да простят меня они). В архиве X (оригинал), B3D я его просто конвертнул в Fragmotion и MD2, тут я пытался сделать по науке, не знаю вышло ли...
Ой.. забыл скинуть текстуру...ну да и так будет понятно... |
Ответ: Смена анимации с помощью KeyDown
Цитата:
Версия 1.99, у меня всё работает, ошибок нет. Блиц глючит, попробуй запустить в оконном режиме. |
Ответ: Смена анимации с помощью KeyDown
Цитата:
А так ходит, но мне нужно чтоб он шёл только при нажатой клавише... Цитата:
|
Часовой пояс GMT +4, время: 06:01. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot