Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D > 3D-программирование

3D-программирование Вопросы, касающиеся программирования 3D мира

Ответ
 
Опции темы
Старый 05.08.2007, 11:16   #1
DMX
Оператор ЭВМ
 
Регистрация: 13.11.2006
Сообщений: 39
Написано 0 полезных сообщений
(для 0 пользователей)
Скорость анимации +

Подскажите как в процессе игры менять скорость анимации модели.
И ещё когда загру жаю модель командой
model = LoadMesh()
то :
texture = LoadTexture()
EntityTexture model, texture
работает, а если model = LoadAnimMesh() то нет, в чём проблема?
(Offline)
 
Ответить с цитированием
Старый 05.08.2007, 13:14   #2
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Re: Скорость анимации +

DMX, нуно каждому чайлду текстуру назначать отдельно, если ты грузишь Аниммешем, т.к. при этом каждый чайлд считается как отдельный объект и назначать текстуры тоже придёцо по отделности, например, если в Максе у тебя были кубик и шар и эти объекты назывались Box01 и Sphere01 то код будит примерно таким:

model = LoadAnimMesh()
texture = LoadTexture()

EntityTexture FindChild(model, "Box01"), texture
EntityTexture FindChild(model, "Sphere01"), texture

Так же хочу добавить что если ты положишь в папку с 3ds-кой или b3d-шкой модели (советую юзать b3d, 3ds не поддерживает ГС, костную анимацию и много других полезностей) все текстуры, заюзанные в Максе при её создании то при загрузке этой модели командой loadanimmeah или loadmesh все текстуры загрузятся автоматически, ничего отельно текстурить не надо

Что касается смены скорости анимации = то юзай UpdateWorld(число - чем больше тем быстрее всё анимируется)

Так же хотел добасить что называй тему на форуме чтобы она ясно отражала её суть. Например, "Как затекстурить AnimMesh и как поменять скорость анимации" ,а то "Скорость анимации +" не совсем понятно хотя тоже норманна, это я уже придираюсь

А вот как поменять скорость анимации для каждого отдельного объекта - мну тоже интересно.
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Старый 05.08.2007, 13:26   #3
Maestro
ПроЭктировщик
 
Регистрация: 25.07.2007
Сообщений: 151
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Скорость анимации +

DMX, а не проще затекстурить модель в редакторе, а потом ее экспортировать... тогда не надо отдельно текстуру грузить, она будет затекстуриной (главное координацию самой текстуры с экспортированой моделью сохранить)

На счет скорости.. Animate entity[,mode][,speed#][,sequence][,transition#]
кури [,speed#]. Можно задать переменную.. и менять ее значение в зависимости от условий...
(Offline)
 
Ответить с цитированием
Старый 05.08.2007, 15:21   #4
Leito
Танчики Developer
 
Регистрация: 29.01.2007
Сообщений: 539
Написано 16 полезных сообщений
(для 23 пользователей)
Re: Скорость анимации +

ы, а вот на этот вопрос кто ответит?
как поменять скорость анимации только одной модели в момент прохождения анимации?
(Offline)
 
Ответить с цитированием
Старый 05.08.2007, 15:28   #5
Raiter
Гигант индустрии
 
Регистрация: 04.08.2006
Сообщений: 2,642
Написано 53 полезных сообщений
(для 92 пользователей)
Re: Скорость анимации +

шмотря в каком формаде... мине больше вшего нравитшо мд2
(Offline)
 
Ответить с цитированием
Старый 05.08.2007, 15:47   #6
Leito
Танчики Developer
 
Регистрация: 29.01.2007
Сообщений: 539
Написано 16 полезных сообщений
(для 23 пользователей)
Re: Скорость анимации +

b3d
(Offline)
 
Ответить с цитированием
Старый 05.08.2007, 16:47   #7
Maestro
ПроЭктировщик
 
Регистрация: 25.07.2007
Сообщений: 151
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Скорость анимации +

Leito, как понять только одной модели? у тебя же для каждой модели отдельная анимация... да даже если одна (например надо чтобы у войска была одна анимация но проигрывалась с разной скоростью)...
Например войско - список
Type muzik
 Field telo
End Type
потом создаешь их
Function CreateVoisko(tn)
For i=1 To tn
 m.muzik=New telo
 m\telo=loadAnimMesh("chel.b3d")
 PositionEntity m\telo,Rnd(-50,50),0,Rnd(-50,50)
Next
End Function
Потом при создании левела (не в главном цыкле)
 For m.muzik=Each telo
  animete m\telo,rnd(.8,1.2)
 Next
(Offline)
 
Ответить с цитированием
Старый 05.08.2007, 17:36   #8
Leito
Танчики Developer
 
Регистрация: 29.01.2007
Сообщений: 539
Написано 16 полезных сообщений
(для 23 пользователей)
Re: Скорость анимации +

Maestro,
ты вот это не прочитал

в момент прохождения анимации
(Offline)
 
Ответить с цитированием
Старый 05.08.2007, 17:51   #9
Maestro
ПроЭктировщик
 
Регистрация: 25.07.2007
Сообщений: 151
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Скорость анимации +

Global m=1,n=1

В главном цыкле:
  if m=1 then
 animate m\telo,n
 m=0
endif

If kakoeto_sobitie then
   n=1.5
   m=1
endif
Но тут надо проверить, анимация просто ускорится, или начнется заного... если начнется заного, тогда надо как-то выщитывать кадр анимаци... как - хз.
ЗЫ: покапайся в хелпе, может что-то типа AnimTime - то, что нужно.
(Offline)
 
Ответить с цитированием
Старый 05.08.2007, 19:19   #10
Leito
Танчики Developer
 
Регистрация: 29.01.2007
Сообщений: 539
Написано 16 полезных сообщений
(для 23 пользователей)
Re: Скорость анимации +

Maestro, не гадай, она начнется заново. )
мне это не столь важно чтобы в хелп лазить.


так что никто не знает? очень интересная штука ведь...
(Offline)
 
Ответить с цитированием
Старый 06.08.2007, 10:16   #11
DMX
Оператор ЭВМ
 
Регистрация: 13.11.2006
Сообщений: 39
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Скорость анимации +

Так я всё равно не вкурил, мне надо чтобы при нажатии кнопок + или - в процессе игры менялась скорость анимации модели. Кто не понял вот код того что я имел в виду. (я только показал что я имел в виду.)
Graphics3D 800,600,32,2
SetBuffer BackBuffer()
SeedRndMilliSecs()
anim_speed# = 0.1
dt# = 0.01
camera = CreateCamera()
CameraClsColor camera,0,64,128
cube = CreateCube()
PositionEntity cube,0,-1,5
light = CreateLight()
While Not KeyHit(1)

time = MilliSecs()

TurnEntity cube,1,0,-0.1
IfKeyDown(74)
anim_speed# = anim_speed# - dt# * .01
Ifanim_speed# < 0.1Thenanim_speed# = 0.1
ElseIfKeyDown(78)
anim_speed# = anim_speed# + dt# * .01
Ifanim_speed# > 0.9 Thenanim_speed# = 0.9
EndIf
UpdateWorld
RenderWorld
Text 5, 5, "Anim speed : " + Int(anim_speed# * 100.0) / 100.0 + " ('+' or '-')"

Flip
to_dt# = (MilliSecs() - time) / 60.0
dt# = dt# + (to_dt# - dt#) * .1
Wend
End

(Offline)
 
Ответить с цитированием
Старый 06.08.2007, 11:15   #12
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Re: Скорость анимации +

Во время, можно, сделать функцию, которая будет создавать временный Sequence и запускать его, Sequence же, будет начинать с текущего кадра и кончаться на максимальный кадр корневой Sequence. Если играет временная, тогда по навому прохождению анимации уже удалять её и запускать корневую.
(Offline)
 
Ответить с цитированием
Старый 06.08.2007, 14:19   #13
DMX
Оператор ЭВМ
 
Регистрация: 13.11.2006
Сообщений: 39
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Скорость анимации +

А можна кодик этой функции?
(Offline)
 
Ответить с цитированием
Старый 06.08.2007, 14:28   #14
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Re: Скорость анимации +

Писать нужно.
Вобщем теория:
Есть класс:
Type TTmpSeq
Field Sequence
End Type

Далее есть функция, меняющая скорость анимации, и в её содержании будет Extract анимации из текущего играющей последовательности с текущего по последний кадр, и запускаем его с новой скоростью, делее, если играеться или закончилась игра этой очереди, тогда удалять, только вот функции удаления очереди я чтото не нашёл , если не прокатит FreeEntity, тогда плоха будет . Странно, а чего Марк не сделал функцию удаляющую последовательность?
В общем и всё
(Offline)
 
Ответить с цитированием
Старый 06.08.2007, 18:57   #15
DMX
Оператор ЭВМ
 
Регистрация: 13.11.2006
Сообщений: 39
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Скорость анимации +

OK. А нет функции для изменения размеров модели в реальном времени.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скорость Flip impersonalis Blitz3D 15 17.01.2009 20:29
Скорость Fant 3D-программирование 36 24.06.2007 01:21
Анимации. Как загрузить много анимаций? Nunan 3D-программирование 23 18.01.2007 02:20
Скорость smaller 3D-программирование 5 21.08.2006 16:02


Часовой пояс GMT +4, время: 12:31.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com