|
3D-программирование Вопросы, касающиеся программирования 3D мира |
27.02.2011, 23:08
|
#16
|
ПроЭктировщик
Регистрация: 01.02.2011
Сообщений: 148
Написано 7 полезных сообщений (для 8 пользователей)
|
Ответ: Как взаимодействовать с миром?
Ну да кажись лучше создать уровень отдельно......двери отдельно с анимацией и это всё с компоновать
__________________
Ученье свет, а не ученье тень!
|
(Offline)
|
|
28.02.2011, 00:18
|
#17
|
Разработчик
Регистрация: 02.04.2007
Сообщений: 353
Написано 54 полезных сообщений (для 289 пользователей)
|
Ответ: Как взаимодействовать с миром?
ПРОВЕРЬ КОЛИЗИИИ НА ТВОИХ ДВЕРЯХ ВО ВРЕМЯ ОТКРЫВАНИЯ И ЗАКАРЫВАНИЯ!!!!!
Последний раз редактировалось Alex_Noc, 28.02.2011 в 20:17.
|
(Offline)
|
|
28.02.2011, 17:20
|
#18
|
Бывалый
Регистрация: 26.04.2009
Адрес: Россия, Уфа
Сообщений: 680
Написано 182 полезных сообщений (для 406 пользователей)
|
Ответ: Как взаимодействовать с миром?
Лучше найди платные уроки с http://www.blitz-school.info/ ,по Blitz3d.Там все эти вопросы подробно описываются.
|
(Offline)
|
|
12.03.2011, 21:35
|
#19
|
Нуждающийся
Регистрация: 14.02.2011
Адрес: Украина, Луганск
Сообщений: 67
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Как взаимодействовать с миром?
Сообщение от Program23
|
Да уроки эти у меня есть. Но там открытие двери - на основе программного вращения объекта происходит, а не на основе анимации.
А вот как это сделать именно на основе анимации, так и не понял.
Вот например, если в максе делать... нужно использовать именно костную анимацию? т.е. привязывать саму дверь к кости или как?
Допустим я так делаю для ол=дной двери, остальные двери просто копирую... Но ведь при проигрывании анимации потом в игре - будет проигрываться анимация для всех дверей на уровне или как?
Так и не понял как это реализовать? может будет у кого-то время - покажете как это делается на конкретной сценке....
Вот например на этой во вложении (там стена в которой есть двери), может подстроете сцену так как нужно и напишите работающей код, например - подходишь к конкретной двери и она открывается.
Заранее огромное спасибо! т.к. сам я не могу понять как и что там делается с это анимацией. Сейчас проблема именно в этих дверях и хотелось бы открывание сделать именно на основе анимации, а не программного вращения двери....
|
(Offline)
|
|
12.03.2011, 22:35
|
#20
|
Разработчик
Регистрация: 19.05.2009
Адрес: Россия Иркутская область
Сообщений: 350
Написано 51 полезных сообщений (для 66 пользователей)
|
Ответ: Как взаимодействовать с миром?
Сообщение от Drayfer
Да уроки эти у меня есть. Но там открытие двери - на основе программного вращения объекта происходит, а не на основе анимации.
А вот как это сделать именно на основе анимации, так и не понял.
Вот например, если в максе делать... нужно использовать именно костную анимацию? т.е. привязывать саму дверь к кости или как?
Допустим я так делаю для ол=дной двери, остальные двери просто копирую... Но ведь при проигрывании анимации потом в игре - будет проигрываться анимация для всех дверей на уровне или как?
Так и не понял как это реализовать? может будет у кого-то время - покажете как это делается на конкретной сценке....
Вот например на этой во вложении (там стена в которой есть двери), может подстроете сцену так как нужно и напишите работающей код, например - подходишь к конкретной двери и она открывается.
Заранее огромное спасибо! т.к. сам я не могу понять как и что там делается с это анимацией. Сейчас проблема именно в этих дверях и хотелось бы открывание сделать именно на основе анимации, а не программного вращения двери....
|
В помощь тебе справка Blitz3D и функции такие как FindChild, LoadAnimMesh...
Вот тебе урок как надо экспортировать с 3D Max'a
А вот тебе Все хорошие уроки и примеры на Blitz3D
Заливал я их давно, но уроков там достаточно+примеры имеются...
Дерзай
__________________
|
(Offline)
|
|
12.03.2011, 22:56
|
#21
|
Разработчик
Регистрация: 19.05.2009
Адрес: Россия Иркутская область
Сообщений: 350
Написано 51 полезных сообщений (для 66 пользователей)
|
Ответ: Как взаимодействовать с миром?
Сообщение от Drayfer
Вот например на этой во вложении (там стена в которой есть двери), может подстроете сцену так как нужно и напишите работающей код, например - подходишь к конкретной двери и она открывается.
|
Чего там понимать то особо??
Blitz3D работает можно сказать весь на условиях, подошел взорвался, подошел открылась. Больше фантазии надо иметь
С примером и с дверью, напишу как можно меньше и попытаюсь втолковать
Обойтись можно и без анимации если это двери....
Когда в 3D Max создаешь комнату, а по середине стены будет проем и дверь, то пивота двери смещаешь к краю двери. Блин как объяснить даже не знаю...Короче почитаешь про макс поймешь о чем я, если ты это сделал то получается когда ты в максе будешь ее вращать то видно будет уже что она открывается как дверь, далее експортируешь модель, получаем два дочерных объекта у модели это дверь пусть будет (door) и комната (komnata)
Далее загружаем это все в Blitz3D
И пишем
Graphics3D 640,480,32,2
SetBuffer BackBuffer()
camera=CreateCamera()
PositionEntity camera,0,0,0
model=LoadAnimMesh("model.b3d")
door_=FindChild (madel,"door")
While Not KeyDown(1)
;Дальше тут пишешь условия на то чтоб когда объект близко то открыть дверь
;Как ее открыть думаю догадаешься, просто ее надо будет поворачивать
UpdateWorld
RenderWorld
Flip
Wend
End
Времени нет, так бы накатал пример, да и Blitz3D уже не пользуюсь
__________________
|
(Offline)
|
|
13.03.2011, 00:30
|
#22
|
Нуждающийся
Регистрация: 14.02.2011
Адрес: Украина, Луганск
Сообщений: 67
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Как взаимодействовать с миром?
народ, спасибо конечно за примеры, но как открывать дверь с помощью поворота ее вокруг пивота - это я знаю. Мне бы хотелось с помощью анимации это осуществить.
Я просто не пойму как проиграть анимацию именно одной конкретной двери на уровне. Ведь если я ночную проигрывать анимацию, то будут открываться все двери...
И насколько я понял, то анимацию нужно делать используя кости? так? а не просто поворот мешает по оси... потому как в последнем случае у меня ничего не получилось - пишет ошибку, что в сцене нет анимации.
почему я не хочу с помощью поворота кодом это ркализовать - потому что двери у меня открываются и наружу,и внутрь, а также петли как слева, так и справа могут стоять. или кто подскажет как в этом случае реализовать то,что мне нужно...
|
(Offline)
|
|
13.03.2011, 01:25
|
#23
|
|
Ответ: Как взаимодействовать с миром?
Ты хочешь чтобы твои двери открывались на основе анимации??? O_o это полный бред. Хотя конечно есть исключения - но они редки. Похоже вы вообще не понимаете игровую механику, да-да в 98% случаях двери вертятся\поднимаются\опускаются\раздвигаются програмно, и даже ролики на движке выполняются в большинстве случаев програмно (ракурсы камер, управление анимацией персов, звуки). А как вы хотели? другое дело что этим занимается не движок, а скрипт, отсюда и терминология "скриптовые сценки". Открой любую игру на базе Quake 3 (в этом двиге очень наглядная скриптовая система) и погляди на тамошние скрипты, ты удивишся, даже в Star trek : Elite Force 2 все сделано на скриптах. Вот так вот. =)
|
|
|
13.03.2011, 03:04
|
#24
|
Мастер
Регистрация: 27.01.2008
Адрес: Россия, СКФО, ЧР, Грозный
Сообщений: 1,144
Написано 578 полезных сообщений (для 2,207 пользователей)
|
Ответ: Как взаимодействовать с миром?
на, держи, может поможет тыкай. алсо, не воспринимай как саморекламу.
|
(Offline)
|
|
13.03.2011, 09:50
|
#25
|
Элита
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,158
Написано 502 полезных сообщений (для 1,012 пользователей)
|
Ответ: Как взаимодействовать с миром?
народ, спасибо конечно за примеры, но как открывать дверь с помощью поворота ее вокруг пивота - это я знаю. Мне бы хотелось с помощью анимации это осуществить.
Я просто не пойму как проиграть анимацию именно одной конкретной двери на уровне. Ведь если я ночную проигрывать анимацию, то будут открываться все двери...
И насколько я понял, то анимацию нужно делать используя кости? так? а не просто поворот мешает по оси... потому как в последнем случае у меня ничего не получилось - пишет ошибку, что в сцене нет анимации.
почему я не хочу с помощью поворота кодом это ркализовать - потому что двери у меня открываются и наружу,и внутрь, а также петли как слева, так и справа могут стоять. или кто подскажет как в этом случае реализовать то,что мне нужно...
|
ну раз так,то:
в максе анимируем Дверь...
ищем её Блитцом
Animate Дверь,Скорость...
|
(Offline)
|
|
13.03.2011, 12:56
|
#26
|
Blitz's Shame !!
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений (для 2,013 пользователей)
|
Ответ: Как взаимодействовать с миром?
програмное открытие/закрытие двери реализовать намного проще, а ты пытаешся через )!(0пу зуб вырвать !!
Напиши одну функу в которую будешь подавать хендл меша двери, скорость поворота и т.д. И эта функа будет поварачивать нужную дверь !!
|
(Offline)
|
|
18.03.2011, 16:06
|
#27
|
Разработчик
Регистрация: 02.04.2007
Сообщений: 353
Написано 54 полезных сообщений (для 289 пользователей)
|
Ответ: Как взаимодействовать с миром?
Сообщение от IGR
програмное открытие/закрытие двери реализовать намного проще, а ты пытаешся через )!(0пу зуб вырвать !!
Напиши одну функу в которую будешь подавать хендл меша двери, скорость поворота и т.д. И эта функа будет поварачивать нужную дверь !!
|
Ну тут спорный вопрос что проще реализовать . я реализовывал и через анимацию - в коде намного меньше строк чем программно , но программно гибче будет
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
18.03.2011, 16:10
|
#28
|
Зануда с интернетом
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений (для 20,935 пользователей)
|
Ответ: Как взаимодействовать с миром?
вот именно: зависит от конкретики
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
|
(Offline)
|
|
24.03.2011, 20:35
|
#29
|
Нуждающийся
Регистрация: 14.02.2011
Адрес: Украина, Луганск
Сообщений: 67
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Как взаимодействовать с миром?
Появился еще один вопрос, относительно поведения персонажа...
В игре вид от первого лица. Создаю персонаж так и привязываю камеру:
Global player=CreateSphere()
PositionEntity player,0,80,0
EntityRadius player, 19,30
EntityType player, TypePlayer
camera=CreateCamera(player)
CameraRange camera,0.1,4000
PositionEntity camera,0,100,0
Управление клавиатурой и мышей, как обычно.
PositionEntity camera,0,100,0 - камеру поднял, чтоб сделать определенный рост персонажу. Но теперь, когда я двигаю мышей и смотрю например вниз или вверх - голова тилипается нереально, то приближаясь к полу прям лицм, то затылком.... Потому как вращается то сама сфера....
Как сделать рост персонажа правильно?
|
(Offline)
|
|
24.03.2011, 21:57
|
#30
|
Дэвелопер
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений (для 1,540 пользователей)
|
Ответ: Как взаимодействовать с миром?
по-моему нужно так:
TurnEntity player, 0, MouseXSpeed(), 0
TurnEntity camera, MouseYSpeed(), 0, 0
__________________
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 00:59.
|