IPB
ЛогинПароль:

 
 Ответить  Открыть новую тему 
> Замкнутое пространство, Большого объема
сообщение
Сообщение #1


Гость






Приветствую всех, заглянувших в эту тему...

Вот, появилась у меня задумка, и одновременно с задумкой - проблема с выбором средства реализации... Дело в следующем... Мне для одного моего проекта (проект, в принципе, не игровой, но поскольку в играх нечто подобное может встречаться часто - спрошу здесь) понадобилась реализация замкнутого пространства с возможностью свободного перемещения по нему... Все бы ничего, если бы пространство включало в себя комнату, скажем, 10*10 метров и 3 метров высоты...

В моем случае все гораздо сложнее - приблизительные размеры помещения оцениваются в 50 (длина) километров и порядка 20 километров высоты, и в этом "помещении" нужно реализовать передвижение человека (ну, пусть будет перемещение камеры на высоте от человеческого роста до, скажем, одного километра) - что будет равноценно перемещению человека на ногах или на вертолете...

Если быть совсем точным, лучше всего объект, который я хочу реализовать, описывается так: полый цилиндр диаметром 20 километров длиной 50 километров, вид изнутри (Олег, ты правильно догадался, именно это я и хочу сделать smile.gif ), с возможностью установки в произвольных местах некоторых объектов (кубов, шаров, более сложных объектов, неважно, главное - реализовать сам объект и перемещение по нему, дальше я разберусь), с возможностью также перемещения "под водой", "в тумане", "в облаках", и т.п. эффекты...

Собственно вопрос: что лучше использовать (для успешной реализации всех перечисленных спецэффектов, и максимально реалистичного отображения объекта)? В принципе, доступными средствами на данный момент являются DirectX или OpenGL, среда разработки - предпочтительно Дельфи (возможно - FPC), но возможен переход на C++ (под OpenGL)... Если у кого был опыт разработки трехмерного мира подобного масштаба - просьба откликнуться, рассказать, с какими сложностями можно столкнуться в процессе разработки, возможно, есть какие-то сторонние (желательно - FreeWare) библиотеки, использование которых облегчит разработку?
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Знаток
****

Группа: Пользователи
Сообщений: 424
Пол: Мужской

Репутация: -  2  +


Впринципе для этого можно использовать DGLE, но если хочеться, чтобы фпс было побольше и порыться глубже, то Opengl ИМХО он проще и удобнее, правда от DirectX, имхо, можно добиться большей производительности. А так, и OpenGL и DirectX есть и под Delphi, все зависит от твоего желания, но OpenGL имхо менно для твоей задумки будет значительно проще!


--------------------
Чего хочет женщина – того хочет Бог
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Я извиняюсь за вторжение - не считаю себя специалистом в этом вопросе. Но один пункт меня заинтересовал..
Почему ты считаешь, что комната - это мало, а 50 км - много? Ведь ясно, что вопрос только в отношении размеров объема к размеру деталей. То есть, если мы захотим в комнате рассматривать микронные неровности, то задача усложнится больше, чем рассматривание метровых деталей в 50 км..
А если так, то на первый план выступает способ отображения объекта с разными уровнями детализации. И тут полагаться на графические библиотеки, имхо, не стоит. Надо иметь специальный движок, наподобие того, что используется во flight-симуляторах. Наверняка такие движки есть - хотя я их не знаю, как неспециалист.. Мне кажется, такую штуку интересно было бы разработать самому - но это вопрос желания и наличия времени.. - последнего как правило нету sad.gif.
Я правильно понял суть вопроса?


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Знаток
****

Группа: Пользователи
Сообщений: 424
Пол: Мужской

Репутация: -  2  +


то что ты говоришь реализуеться достаточно легко, алгоритм бсп деревьев, его легко редактировать набором констант и блаагодаря этому можно редактировать детализация объектов.


--------------------
Чего хочет женщина – того хочет Бог
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гость






Цитата
Почему ты считаешь, что комната - это мало, а 50 км - много?
Объясняю, в чем основная проблема: дело в том, что при таком раскладе, что человек находится на внутренней поверхности цилиндра, для него НЕТ скрытого пространства, это во-первых (изгиб поверхности НЕ скрывает, а открывает все то, что на этой поверхности находится) достаточно поднять камеру вверх, и должно быть видно все, что творится на противоположной стороне цилиндра (при условии хорошего освещения и чистой атмосферы внутри объекта, а освещение будет прекрасным, и прозрачность атмосферы должна колебаться от абсолютно прозрачной до густого тумана, поэтому полагаться на скрытие деталей за туманом нельзя, да и размеры объектов могут быть километровыми...), а во-вторых, я вообще не могу никак сообразить, как реализовать то, что камера находится ВНУТРИ, а не снаружи цилиндра, ну, и с физикой дикие проблемы: цилиндр в принципе вращающийся, следовательно сила тяжести направлена не куда-нибудь, а от продольной оси цилиндра "под ноги человеку", это тоже привносит дополнительные проблемы (в частности - представь, как должна вести себя вода в таком мире)...

Так что, готовые движки скорее всего отпадают, буду пробовать делать на маленьких моделях вручную...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Знаток
****

Группа: Пользователи
Сообщений: 424
Пол: Мужской

Репутация: -  2  +


Volvo , поведай тайну, что это такое?
А по поводу графики, то действительно, это очень похоже на классический пример для бсп деревьев.


--------------------
Чего хочет женщина – того хочет Бог
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Гость






Классический? Ты работал с DirectX ВООБЩЕ когда-нибудь (не на уровне "Hello, World!")? Можно посмотреть твои работы? Аналогично - с OpenGL, ссылку на ТВОИ программы приведи...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Знаток
****

Группа: Пользователи
Сообщений: 424
Пол: Мужской

Репутация: -  2  +


В directX работал только с directdraw, а для dricetX 3d знаю только теорию, на практике ничего на нем не делал, а вот OPENGL использовал и в достаточно большом количестве, и огромные ландшафты делал!


--------------------
Чего хочет женщина – того хочет Бог
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Ищущий истину
******

Группа: Пользователи
Сообщений: 4 825
Пол: Мужской
Реальное имя: Олег

Репутация: -  45  +


Цитата
Volvo , поведай тайну, что это такое?

Можно я? smile.gif
Это будет трехмерное путешествие по миру инопланетного космического корабля!
Прикрепленное изображение
Незабываемое путешествие!


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.03.2024 11:53
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name