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

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

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

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

Ответ
 
Опции темы
Старый 02.03.2009, 21:56   #31
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Ответ: Заметка о пипелайне для 3ds max

Сообщение от ELIAS Посмотреть сообщение

Заранее спасибо. Жду...
Graphics3D 1280, 1024, 32, 1



cam=CreateCamera()
CameraClsColor cam, 0, 100,255
MoveEntity cam,0,0,-50
lit=CreateLight()

robo=LoadAnimMesh("Robot.b3d")
ScaleMesh robo, 100,100,100

For i=1 To CountChildren(robo)
  child=GetChild(robo,i)
  If child<>0
   Animate child
 EndIf
Next



For i=1 To 10
	e=CreateCube()
	ScaleEntity e, 4,4,4
	PositionEntity e, Rand(-100,100),Rand(-100,100),Rand(-100,100)
Next



Repeat
	
	If KeyDown(200)=1 Then MoveEntity cam, 0,0,1
	If KeyDown(208)=1 Then MoveEntity cam, 0,0,-1
	
	RotateEntity cam, EntityPitch(cam)+MouseYSpeed()*0.2, EntityYaw(cam)-MouseXSpeed()*0.2 ,0
	
	
	MoveMouse GraphicsWidth()/2,GraphicsHeight()/2
	
	UpdateWorld
    RenderWorld
	
    Flip
	
Until KeyHit(1)
End
;~IDEal Editor Parameters:
;~C#Blitz3D
__________________
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
ELIAS (03.03.2009)
Старый 02.03.2009, 22:44   #32
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Заметка о пипелайне для 3ds max

АВТОМАТ, если получилось анимировать, почему бы не бросить код???
Шоб ты сам в хелп полез, а то привыкнешь...
Я и так уже весь алгоритм описал в посте
Тормоз, зря...
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

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

(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
NitE (02.03.2009)
Старый 03.03.2009, 17:59   #33
ELIAS
Знающий
 
Аватар для ELIAS
 
Регистрация: 31.08.2008
Адрес: Arrakis
Сообщений: 234
Написано 6 полезных сообщений
(для 6 пользователей)
Ответ: Заметка о пипелайне для 3ds max

ммм....Вы не поняли
...
Или я не понял?
...
А потом мне в цикле надо будет обязательно менять последовательность анимации, ну будет ходьба, бег, прыжок, падение и тп. Мне это всё так и менять циклом??? да?

Я просто в идеале это видел иначе. я думал что можно создать какую-нибудь переменную-указатель, которая и будет содержать в себе пути ко всем чилдам.
Но впринципе! Создаем функцию - туда этот цикл! Из параметров - модель, скорость, секвенция, плавность, зацикленность! И всё будет!

Спасибо, tormoz!!!

Шоб ты сам в хелп полез, а то привыкнешь...
Я и так уже весь алгоритм описал в посте
Тормоз, зря...
Ну АВТОМАТ! Что такое, я итак всё на блюдечке вам поднёс, только код отредактируйте! И модель сделал, и экспортил её, и код весь необходимый уже написал!... Некоторые...Даже многие, на словах туго понимают, я в том числе.

Перебирай каждый чайлд GetChild, CountChildren (нумерация с единицы)
Применяй к нему Animate
For i=1 To CountChildren(robo)
  child=GetChild(robo,i)
  If child<>0
   Animate child
 EndIf
Next
ИМХО, гораздо эффективнее в этом случае объяснить кодом.
Но всё-равно спасибо!
(Offline)
 
Ответить с цитированием
Старый 04.03.2009, 00:11   #34
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Заметка о пипелайне для 3ds max

Чтобы поменять анимацию в твоём случае - да, опять перебирать чилды.
Вообще например если есть модель человека - то Skin там один, так что проблем не возникает. Если Skin один то чаще всего у него индекс 1 так что зная точно индекс можно сразу прописать, без цикла: Animate GetChild(Model,1), или можно FindChild'ом, но если их несколько то тут проще перебором, кроме специальных случаев, когда нужно анимировать например только голову или только торс.

З.Ы. Stop offtop
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

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

(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
ELIAS (04.03.2009)
Старый 04.03.2009, 03:20   #35
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Ответ: Заметка о пипелайне для 3ds max

Сообщение от ELIAS Посмотреть сообщение
И модель сделал, и экспортил её, и код весь необходимый уже написал!... Некоторые...Даже многие, на словах туго понимают, я в том числе.
это сделал только потому, что мне моделько понравилось

Вот бы сделать аркадко типа "Приключения кубо-менчика в кубостране"

В стиле марио, только 3д

кстати, движок уже готофф.
Токо уровни подавай и героев
(делал как прототип одной фирме. в связи с кризисом проект заморозили, движок разрешили использовать куда угодно)
__________________
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
ELIAS (04.03.2009)
Старый 08.03.2009, 00:56   #36
ELIAS
Знающий
 
Аватар для ELIAS
 
Регистрация: 31.08.2008
Адрес: Arrakis
Сообщений: 234
Написано 6 полезных сообщений
(для 6 пользователей)
Ответ: Заметка о пипелайне для 3ds max

хз хз... я ваще всегда делал не как тормоз, просто один мешь для всего, и всё отлично ) попробуй на всякий случай
NitE, поделись секретом, как это ты так модель экспортишь???
Я с тех пор как способом тормоза стал пользоваться, так больше у меня такого не получалось, чтобы анимировалась сама модель, а не её чайлды.
Заскринь пожалуйста настройки пайплайна при твоём экспорте и выложи ту пару строчек, обслуживающих твою анимацию.
(Offline)
 
Ответить с цитированием
Старый 08.03.2009, 01:31   #37
NitE
злобный флудер
 
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений
(для 1,476 пользователей)
Ответ: Заметка о пипелайне для 3ds max

фигасе ты, спросил тоже - я уж забыл всё и о чем разговор...
но вообщем я экспортил отдельно модель, отдельно анимацию(костную)
в первом случае убирал галочку "экспорт бонес" во втором прятал каркас и только кости с анимацией экспортил...
ну а код это ваще ппц, было что-то вроде
model=loadanimmesh("shit.b3d")
anim=loadanimmesh("shitani.b3d")
animate model,0,0,anim,0
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
ELIAS (08.03.2009)
Старый 08.03.2009, 12:36   #38
ELIAS
Знающий
 
Аватар для ELIAS
 
Регистрация: 31.08.2008
Адрес: Arrakis
Сообщений: 234
Написано 6 полезных сообщений
(для 6 пользователей)
Ответ: Заметка о пипелайне для 3ds max

Аа..Найт, дак это получается что у тебя совершенно тоже самое, что и у тормоза, только тормоз анимацию и модель держит в одном файле, и потом растаскивает их уже в блитце, а ты их 3дмаксом уже разделяешь.

Только вот, что. Вопрос уважаемому tormoz`у:
Нельзя ли цикл сканирования чайлдов в твоём способе заупскать лишь один раз, и все чайлды модели как-нибудь тут же связывать...Тогда анимировать придётся только что-то одно... В таком случае гораздо удобнее будет управлять секвенцией!!! А то если делать ту функцию с циклом, тогда секвенцию придётся определять только аргументами начального кадра и конечного А я хочу чтобы в аргумент секвенции попадала переменная секвенции как обычно типа playerrun Или playerjump.
Я то думал, что секвенцию можна взять с любой анимации, ведь если к переменно приравнять секвенцию, то эта перемеенная равна натуральному числу! Никаких ссылок на объект и тп((( Но я ошибся.
(Offline)
 
Ответить с цитированием
Старый 08.03.2009, 15:24   #39
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Заметка о пипелайне для 3ds max

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

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

(Offline)
 
Ответить с цитированием
Старый 08.03.2009, 16:47   #40
ELIAS
Знающий
 
Аватар для ELIAS
 
Регистрация: 31.08.2008
Адрес: Arrakis
Сообщений: 234
Написано 6 полезных сообщений
(для 6 пользователей)
Ответ: Заметка о пипелайне для 3ds max

Не понял, как мне поможет рекуссивная функция... вообще чем она от обычной то отличается..??? мы и обычную можем в цикл под условие поставить...-будет вызываться!
Аха! Я и забыл спросить! А нельзя никак экспотрить модель в один файл, и анимировать также просто как найт. Ведь можно же!!! Но тут какие то особенности чтоли при экспорте...неполучается((((

Ну тоесть получится такой код:
model=loadanimmesh("shit.b3d")
run=ExtractAnimSeq(model,10,70)
animate model,0,0,run,0
Тут всё от экспорта вроде зависит, но я уж много вариантов перепробовал - не смог такого добиться.
Возникает вопрос "А возможно ли это впринципе?"
(Offline)
 
Ответить с цитированием
Старый 08.03.2009, 19:33   #41
NitE
злобный флудер
 
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений
(для 1,476 пользователей)
Ответ: Заметка о пипелайне для 3ds max

насколько я понял рекурсивная функция нужна для поиска всех чайлдов, тоесть вот ищем чайлдов - нашли и ищем уже чайлдов в чайлде всё той-же функцией...
и что мешает так-же как я экспортить ?
(Offline)
 
Ответить с цитированием
Старый 09.03.2009, 03:11   #42
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Ответ: Заметка о пипелайне для 3ds max

Если заскинен один объект - один объект и анимируется
Если заскинено несколько объектов - нужно их все искать и анимировать

По уму делается одним объектом, если не нужно использовать отдельные анимации (например, бежим вперед, стреляем вбок, вперед, и тд)
__________________
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
ELIAS (09.03.2009)
Ответ


Опции темы

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

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


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


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