![]() |
|
Модераторы: Snowy, Alexeis, MetalFan |
![]()
|
|
| 5naip |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 60 Регистрация: 6.7.2006 Репутация: нет Всего: нет |
Здравствуйте.
Мне хотелось бы сдлеать программу на Delphi, в которой реализована возможность просмотра (кручения/верчения) 3D модельки из Max`a. Я не прошу у вас объяснить мне как это делается и сделать за меня.Я прошу подсказать мне - где рыть на предмет мануалов. Что мне потребуется для этого? Какие технологии реализуются? И,если есть - пример готовой программы. |
|||
|
||||
| Nicholas_S |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 486 Регистрация: 12.10.2006 Где: Санкт-Петербург Репутация: нет Всего: 19 |
Прывет.
Есть 2 подхода к решению задачи. Первый. Разобрать документацию по какому-либо графическому формату. Например, это может быть формат 3ds. В сети есть исходные коды для Delphi по его разбору, так что не поленись, поищи, поисковики никто еще не отменял. Или через альтернативный экспорт, например, в AutoCaD-фомат (DXF). Второй. 3DMAX имеет встроенный скриптовый язык, который ты можешь испоользовать для написание кода для создание собственного формата файла 3D-сцены. Это требует знаний основ 3D-графики, плюс знание самого скрипта MAX'а. Есть также готовые решения, опять же можешь найти в сети (поищи по ключевому слову "mega" - это название файла скрипта, написанный специально для импорта 3D моделей из Макса. Заодно, может быть, наткнешься на соответствующую статью, в которой рассказывается в деталях, как это происходит). Затем тебе потребуется реализовать чтение/построение/отрисовку импортированной 3D сцены в Delphi. Здесь уж, как говорится, на вкус и цвет. Для построения тебе необходимо, опять же, знать основы 3D графики (создание 3D объектов, понятия вершин, граней и проч., как минимум). Отрисовку можешь реализовать используя стандартные библиотеки OpenGL/DirectX. Если есть желание глубже понять, как все это работает, то искренне советую реализовать отрисовку программно. Если заинтересует тема, то пиши, не стесняйся -------------------- ...все в мире относительно |
|||
|
||||
| Bitter |
|
|||
![]() Опытный лентяй ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1209 Регистрация: 15.8.2004 Где: Харьков, Ukraine Репутация: 6 Всего: 27 |
По-моему идеальный вариант - экспортировать объекты в формате .ase . Это текстовый файл, в котором подробно на человеческом языке описан экспортируемый объект, к томуже легко реализовать чтение данного файла. После чего достаточно загнать всю информацию в буффер вершин и вызвать команду DrawPrimitive.
Правда, в данном файле не совсем корректо записываются нормали, по этому расчитывать нормали прийдется самому. Но информации на эту тему в инете полно. В данном формате вершины перечисляются против часовой стрелки. |
|||
|
||||
| Nicholas_S |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 486 Регистрация: 12.10.2006 Где: Санкт-Петербург Репутация: нет Всего: 19 |
Bitter, это приемлемый, но не идеальный вариант. Почему? Потому что практически головой своей думать не надо. Когда же ты делаешь все самостоятельно, приходит незаменимый опыт. Разобравшись в скрипте, можно экспортировать в человеческий, как ты сказал файл, еще человечнее, при этом реализуя разные методы хранения вершин/граней/нормалей. Плюс, можно экспортировать покадрово анимацию, материалы, источники освещения и проч. Согласись, куда приятнее получить результат от себя, чем тупо посмотреть на результат других.
-------------------- ...все в мире относительно |
|||
|
||||
![]()
|
| Правила форума "Delphi: Звук, графика и видео" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делится вскрытыми компонентами
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |