[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]


  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Модератор форума: Spidy, turBO, blitz3d  
Форум мира Blitz3D » Язык Blitz3D » 3D программирование » Правила анимации (действия с объектом)
Правила анимации
VirusssДата: Суббота, 19.09.2009, 11:48 | Сообщение # 1
Подполковник
Группа: Пользователи
Сообщений: 412
Награды: 2
Репутация: 5
Статус: Offline
Доброго всем времени суток!У меня возник вопрос:
если мне нужно загрузить несколко анимаций одного предмета,например бег героя вправо влево итд...,
мне что нужно загружать её из разных файло(на одну анимацию один файл???)или как?Постоянно загружать один и тот же объект?Я не как не могу понять принцеп?Объясните кто нибудь плиз cry
 
DzirtДата: Суббота, 19.09.2009, 13:33 | Сообщение # 2
форумовец
Группа: Модераторы
Сообщений: 260
Награды: 2
Репутация: 9
Статус: Offline
Используй команду LoadAnimSeq для загрузки анимацыи из разных файлов,или храни всю анимацию сразу в меше и потом анимирую только нужный участок.
Но я лично предпочитаю хранить все в отдельных файлах:
Code
hero=LoadAnimMesh(".\models\hero.b3d")
LoadAnimSeq hero,".\models\anime_beg.b3d"
LoadAnimSeq hero,".\models\anim_stoy.b3d"

.......
Animate hero,1,0.5,1 ;beg
Animate hero,1,0.5,2 ;stoy


Головне в грі не графіка,а сюжет......хоча без першого його й розуміти не хочеться.)
 
VirusssДата: Суббота, 19.09.2009, 13:49 | Сообщение # 3
Подполковник
Группа: Пользователи
Сообщений: 412
Награды: 2
Репутация: 5
Статус: Offline
А как взять нужный участок?И ещё,понимает ли МилкШейп анимацию из Макса?
 
DzirtДата: Суббота, 19.09.2009, 14:33 | Сообщение # 4
форумовец
Группа: Модераторы
Сообщений: 260
Награды: 2
Репутация: 9
Статус: Offline
Quote
А как взять нужный участок?

Ну извлечь ее можно при помощи команды ExtractAnimSeq
Code
hero=LoadAnimMesh(".\models\hero.b3d")  

ExtractAnimSeq( hero,1,10 )
ExtractAnimSeq( hero,2,20 )

.......  
Animate hero,1,0.5,1 ;beg  
Animate hero,1,0.5,2 ;stoy

Quote
И ещё,понимает ли МилкШейп анимацию из Макса?

А зачем тебе такие манипуляции? Если уже модель занимирована в максе то сразу и експортируй из макса в б3д.


Головне в грі не графіка,а сюжет......хоча без першого його й розуміти не хочеться.)
 
VirusssДата: Суббота, 19.09.2009, 18:47 | Сообщение # 5
Подполковник
Группа: Пользователи
Сообщений: 412
Награды: 2
Репутация: 5
Статус: Offline
б3д понимает только X.,3ds.,md2,а в максе нет импорта не в один из них.А мах. он не принемает:'(

Добавлено (19.09.2009, 18:47)
---------------------------------------------
Graphics3D 840,620 ;
SetBuffer BackBuffer() ;
сam=CreateCamera() ;
men= LoadAnimMesh("D:\вперд.3ds")
PositionEntity men,100,0,0
sun=CreateLight()

Repeat
If KeyDown(17) Then
Animate men,2,1,1,0
RenderWorld
Flip
EndIf
Until KeyHit(1)
End
Подскажи пожалуйста что не так?А то нечего не происходит.

 
DzirtДата: Суббота, 19.09.2009, 19:36 | Сообщение # 6
форумовец
Группа: Модераторы
Сообщений: 260
Награды: 2
Репутация: 9
Статус: Offline
Такссс.Для начала Блитз понимает формат b3d.Так как он ему родимый.Впредь советую пользоватся только им.Для того чтобы Max научился експортировать в этот формат заходишь и качаешь нужный плагин сюда http://www.onigirl.com/pipeline/

Что не так?
Для начала ты забыл команду updateworld,которая и отвечает за анимацию.Попробуй сначала так:

Graphics3D 840,620 ;
SetBuffer BackBuffer() ;
сam=CreateCamera() ;
men= LoadAnimMesh("D:\вперд.3ds")
PositionEntity men,100,0,0
sun=CreateLight()
Animate men,2,1,1,0

Repeat
updateworld()
RenderWorld
Flip
Until KeyHit(1)
End


Головне в грі не графіка,а сюжет......хоча без першого його й розуміти не хочеться.)
 
VirusssДата: Суббота, 19.09.2009, 20:12 | Сообщение # 7
Подполковник
Группа: Пользователи
Сообщений: 412
Награды: 2
Репутация: 5
Статус: Offline
Я его скачал, куда из него что копировать?
 
DzirtДата: Суббота, 19.09.2009, 20:40 | Сообщение # 8
форумовец
Группа: Модераторы
Сообщений: 260
Награды: 2
Репутация: 9
Статус: Offline
Там должна быть инструкция....скорее всего файлы перенсти в папку Plugins,что находится в директории Maxa

Головне в грі не графіка,а сюжет......хоча без першого його й розуміти не хочеться.)
 
VirusssДата: Воскресенье, 20.09.2009, 07:33 | Сообщение # 9
Подполковник
Группа: Пользователи
Сообщений: 412
Награды: 2
Репутация: 5
Статус: Offline
Попоробовал,выдало несколько ошыбок,но появилось две панельки при входе!Меня удивляет то, что для такого
количества файликов нет програмы установки!Всеравно в экспорте б3д не появился,ладно буду искать,что делать neutral

Добавлено (20.09.2009, 07:23)
---------------------------------------------
Ах,да человечек при анимации появился,но при нежатии клавиши стоит на месте cry

Добавлено (20.09.2009, 07:33)
---------------------------------------------
вот код:
Graphics3D 840,620 ;3D графический режим
SetBuffer BackBuffer() ;задний буфер
cam=CreateCamera() ;создание камеры
men= LoadAnimMesh("D:\вперд.3ds")
PositionEntity men,0,0,800
sun=CreateLight()
Repeat

If KeyDown(17) Then
Animate men,2,1,1,1
UpdateWorld(30)
RenderWorld
Flip
EndIf
Until KeyDown(1)
End

 
DzirtДата: Воскресенье, 20.09.2009, 11:22 | Сообщение # 10
форумовец
Группа: Модераторы
Сообщений: 260
Награды: 2
Репутация: 9
Статус: Offline
Вот внизу я прикрепил файлик который добавляет експорт в б3д 9 максу.

Насчет анимации.
Смотри сам.Ты нажимаешь и держиш клавишу так.Естественно обект будет анимироватся,но каждый цыкл.Тоисть анимация какбы настолько часто включается что создается впечатление что он стоит на месте.Для того чтобы избежать этого нужно включать проверки.Щас кодом все поясню.

Graphics3D 840,620 ;3D графический режим
SetBuffer BackBuffer() ;задний буфер
global anim=0
cam=CreateCamera() ;создание камеры
men= LoadAnimMesh("D:\вперд.3ds")
PositionEntity men,0,0,800
sun=CreateLight()

Repeat
;Смотрим,если герой не анимируется анимируем....и при следуюшем проходе
;цыкла анимация збиватся не будет
If KeyDown(17) and anim=0
anim=1
animate men,2,1,1,1
else
anim=0
animate men,0,0,0,0
EndIf

UpdateWorld(30)
RenderWorld
Flip
Until KeyDown(1)
End

Прикрепления: b3dexp.dle (156.0 Kb)


Головне в грі не графіка,а сюжет......хоча без першого його й розуміти не хочеться.)

Сообщение отредактировал Dzirt - Воскресенье, 20.09.2009, 11:24
 
Форум мира Blitz3D » Язык Blitz3D » 3D программирование » Правила анимации (действия с объектом)
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Поиск: