Как пройтись по своему собственному 3D миру с использованием 3D Studio Max и Cult3D
Как пройтись по своему собственному 3D миру с использованием 3D Studio Max и Cult3D.
Предисловие
Этот урок я писал около года назад, когда ещё незнал как делать настоящие трёхмерные игры и баловался тем, то создавал в максе сценку и делал браузерную игрушку. Там можно было ходить, открывать/закрывать двери кататься на лифтах..
В этом уроке Вы узнаете как можно пройтись по своему, созданным Вашими руками, 3D миру абсолютно без программирования. В Cult3D конечно же не получиться создать настоящую игру, т.к. эта программа предназначена для презентаций 3D моделей и другой продукции в интернете. Cult3D сохраняет готовый файл в html странице, в коде которой можно создать меню, цвет фона и т.д. Управление в Cult3D такое как и во всех играх типа 3D Action, а это: клавиши на клавиатуре (стрелки), и мышка. Кроме того, Вы сможете передвигать предметы, например: кататься на лифте, открывать двери и т.д. Саму программу можно скачать на этом сайте http://www.cult3d.com, но для экспорта 3D сцены в Cult3D, Вам прийдёться там же скачать експортер для 3DS Max. Начнём...
Подготовка сцены
Для начала Вам прийдёться создать какую-нибудь сцену в которой Вы хотели-бы побродить. На рисунке ниже показана моя сцена которая будет описываться в уроке.
Лучше всего всё делать в реальных размерах т.к. Вам нужно будет установить в сцене камеру на высоте человеческого роста. В Cult3D камера становится автоматически, но, если сцена будет велика (в размерах), то камера будет ездить по полу, к тому же ещё и медленно, или наоборот...
В Cult3D невозможен рендер (насколько я знаю), а всё таки нехватает теней - это можно исправить. Расставьте в сцене освещение так как Вам нужно. Выделите объект "Стены" (всё должно быть одним объектом: пол, стены, потолок...), но не должно быть такого что один объект проходит сквозь другой, ато будет глючить. Примените модификатор "UnwrapUVW", нажмите "Edit", и в свитке "Mapping" нажмите "Flatten Mapping" и сохраните этот UVW.
Зайдите в свиток "Rendering" а затем в "Render to Texture". В "Path" - папка куда будет сохранена текстура. В "Output" нажмите "Add" и выберите "Complete Map". Поставьте размер и в самом низу окна нажмите "Unwrap only". К объекту автоматически добавился новый модификатор и в нём загрузите ранее сохранённый UVW. Отрендерите текстуру и присвойте её к объекту. Источники света можно удалить т.к. тени уже есть.
Просто пройтись
Экспортируйте сцену в формат "c3d", запустите программу Cult3D Designer. В свитке "File", нажмите "Add Cult3D Designer File".
В окне "Event Map" слева на панели, перенесите на пустое поле такие действия:World start, Keyboard's key press. Из "Scene graph" перенесите Camera01, т.е. Вашу камеру.
Из "Actions" (зажмите и реретащите) на "World start_1" "Mouse/keyboard-Navigation", и также само направьте на Camera01 "Reset". Зажмите в "Event map" камеру и направьте её на "Mouse/keyboard-Navigation" так, чтобы между ними образовалась линия связи, а "KeyPress_1" направьте на "Reset".
Должна получиться такая связь:
Теперь можно в "Stage window" нажать , и пройтись по сцене.
Кликните 2 раза на "KeyPress_1" и поставьте там такие настройки:
Движение двери
В моей сцене возле двери расположена такая простенькая кнопка, и при нажатии на неё будет открываться дверь. Из "Scene graph" перетащите в "Event map" объекты: кнопку и дверь. В "Event map" слева, перетащите "Left mouse click on onject" 2 штуки. Свяжите "кнопку" с "ObjectClick_1" и со вторым зажав кнопку и навести на них. Из "Actions" в свитке "Event" перетащите на "ObjectClick_1" и "ObjectClick_2" эти два объекта:
В параметрах "Deactivate event" сделать как на рисунке:
А в параметрах "Active event" - наоборот - перетащить "ObjectClick_2". Такие настройки (у светофорчиков) должны быть у "ObjectClick_1" и "ObjectClick_2".
Из "Action" в свитке "Object motion", на "ObjectClick_1" и "ObjectClick_2", перетащите "TranslationXYZ". В нём можно задать координаты движения двери. У меня получилось так:
А во втором "TranslationXYZ" вместо 2-х надо поставить -2, исвязать их сдверью. Не в коем случае не с кнопкой! Вот и всё движение двери.
С лифтом - тоже самое, но координаты не те. Чтобы сохранить файл, в свитке "File" нажмите "Save internet file as...".
Вставка звука
В ситке "View" нажмите "Sounds", в открывшомся окне нажмите "Add", и выберите звук.
Из "Actions" нужно перетащить на "ObjectClick_1" и "ObjectClick_2" по одному "Play Sound".
В параметрах выберите тот звук который вы экспортировали. Должно быть такое: (ben - название моего звука)
Теперь, при нажатии на кнопку двери будет воспроизводиться звук. Но, для того, чтобы звук был на фоне всего этого, этот звук надо вставить на "World Start_1".
Вот то что получилось у меня (зажми правую клавишу мышки на этом окне чтобы крутить и стрелки мышки для передвижения, правая клавиша мышки - нажать на кнопку):
Если Вы не видите этот 3D объект, то у Вас не установлен Cult3D Player. По вопросам пишите на Samarik69@list.ru. И ещё одно: сохранённый файл в html документе хорошо воспроизводится только в Internet Explorer, в других браузерай вашей сцены не будет видно.