Четверг, 28 Марта 2024, 23:16

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Конструкторы игр и лёгкие в освоении системы разработки игр » Game Maker » Xtreme3D 3.0 SourceCode (Моя неполная реализация dll библиотеки Xtreme3D)
Xtreme3D 3.0 SourceCode
RutrapleДата: Воскресенье, 13 Ноября 2011, 17:39 | Сообщение # 1
почетный гость
Сейчас нет на сайте
Доброго всем времени суток smile

Хочу выложить исходники по новой (своей) версии движка Xtreme3D.
Кто вдруг не знает, Xtreme3D - это библиотека для расширенной работы с 3D графикой в GM, основанной на OpenGL (если точнее на связке GLScene и Delphi). Так как я не очень хороший программист на object pascal, то разработать полнофункциональный новый аналог старой версии, к сожалению, не могу, в виду некоторых непонятных для меня вещей. Возможно кому-то будет интересно поковыряться в исходниках (хотя как известно, чужие работы - потемки). Просто не хочется вложенный в этот проект труд, отправлять в мусорную корзину, все-таки жалко. Поэтому, надеюсь, что хоть кого-нибудь заинтересует этот проект.

Выкладываю исходник на Delphi 2007 - Скачать Исходник Xtreme3D
И выкладываю пример (на GM7) - Скачать пример Xtreme3D ~ 1.5MB

Собственно, некоторые известные проблемы sad :
- При первом запуске примера, на сцене находятся несколько моделей, затем к ним добавляются еще, но при этом fps держится уверенно, у меня, на 60. А запуская второй раз, fps уменьшается на половину.
Возможная проблема: Что-то с Cadencer'ом и непонятной загрузкой процессора (то она высокая, то низкая и непонятно чем такое вызвано)
- При создании цикла (for), в котором создаются модели.
При достижении ~ 90 - 100 моделей происходит неизвестная ошибка, при этом есть зависимость с вышеописанной ошибкой, если при повторном запуске создать, например 60 моделей, которые при первом запуске создавались, во втором уже могут вызывать ошибку. Причем несколько иная ситуация с циклом while.

Технические проблемы:

- Непонятно с работой шейдеров, все слишком привязано к Delphi, хотя развязать руки можно, но только знающему программисту это под силу. (проблема в передачи параметров в шейдер)
- Тени. Хорошие реализуются через шейдеры, стандартные - слишком ресурсоёмкие.
- Возможно, есть проблемы в реализации некоторых функций GLScene.

Что хотелось бы услышать happy :
- Что получилось у вас при тестировании примера.
- Ваше отношение к проекту, есть ли смыл в нем? (пусть и то, что он заморожен не смущает вас)
- Вопросы, то есть, если кто-то хочет что-то сделать свое или разобраться в исходниках, то с удовольствием отвечу. Хотя, там все предельно просто.

Возможности Xtreme на данный момент:

- Загрузка моделей MD2, 3DS, LWO, OBJ.
- Текстур jpg, dds, tga.
- Почти полностью реализована работа со всеми объектами.
- Частично осуществлена работа с материалами.
- Основные функции DCE (Dynamic collision engine), кроме получения данных о столкновении.

P.S
Если решить проблему с загрузкой процессора и с циклами, то можно запросто реализовать аналог Xtreme 2.1!
Извиняюсь, если тему создал не там, но вроде больше и некуда.
Готов услышать любую критику, лишь бы она была адекватной wink .


Скриншот из примера:



After Time
Last Of Time
Happy Pumpkin
GameMixДата: Воскресенье, 13 Ноября 2011, 17:53 | Сообщение # 2
старожил
Сейчас нет на сайте
Rutraple, классные модельки бегающих.....монстров.

Steel Standoff - 2D аркада.
Мои статьи
FenechДата: Воскресенье, 13 Ноября 2011, 18:03 | Сообщение # 3
частый гость
Сейчас нет на сайте
Rutraple, Прежде всего для чего проделывается вся работа? Для лучшего изучения библиотеки и/или языка? Или же для того, чтобы твой проект нормально работал и чтобы создавались с помощью твоей библиотеки проекты? Возможно ли будет создать что-либо стоящее с помощью твоего проекта? Подумай над этим! Ты не первый кто хотел из ГМ сделать супер 3D движок или хотя-бы что-то отдалённо похожее.

Скачал пример, запустил... Все хорошо, почти не тормозило, ну то есть тормозило но в разумных пределах. Модельки как я вижу не самые высоко полигональные, но тем не менее качество поражает, даже не верится, что это на ГМ.

Если ты продолжишь свой проект, по желаю тебе не останавливаться на пол пути, быть может у тебя выйдет хорошая и полезная вещь. Однозначно заслуживаешь печенек!


Сообщение отредактировал Fenech - Воскресенье, 13 Ноября 2011, 18:03
RutrapleДата: Воскресенье, 13 Ноября 2011, 19:34 | Сообщение # 4
почетный гость
Сейчас нет на сайте
GameMix, емко, однако smile
Fenech, во-первых, спасибо за критику, люблю печенки happy
Во-вторых, изначально проект намечался для собственного пользования, меня не в полной мере устраивали другие похожие библиотеки (Ultimate и Xtreme), отсюда для своего проекта я решил написать то, что могло удовлетворить мои потребности, так и завертелось. Сейчас же ситуация иная, этот проект делался известным "методом тыка", именно поэтому на реализацию всего, что есть ушло почти полгода. Я несколько устал, не хватает знаний. А те, кто работает непосредственно с GLScene и Delphi, считают этот проект бесполезной тратой времени, в какой-то мере они правы, вот я и решил, выложить сюда, может кто-то решится дописать что-то в этом проекте, может поможет чем-то, да и просто не хочу оставлять валяться такой работе на жестком диске.
Quote
Ты не первый кто хотел из ГМ сделать супер 3D движок или хотя-бы что-то отдалённо похожее.

Я не хочу делать из Гм супер-пупер движок, я прекрасно знаю и понимаю, что он мало пригоден для такого рода вещей, но тем не менее, создать что-то несложное, маленькое, но красивое очень даже можно, и главное это не займет много времени, благодаря таким библиотекам.


After Time
Last Of Time
Happy Pumpkin


Сообщение отредактировал Rutraple - Воскресенье, 13 Ноября 2011, 19:36
FenechДата: Воскресенье, 13 Ноября 2011, 19:51 | Сообщение # 5
частый гость
Сейчас нет на сайте
Quote (Rutraple)
Во-вторых, изначально проект намечался для собственного пользования, меня не в полной мере устраивали другие похожие библиотеки (Ultimate и Xtreme), отсюда для своего проекта я решил написать то, что могло удовлетворить мои потребности, так и завертелось. Сейчас же ситуация иная, этот проект делался известным "методом тыка", именно поэтому на реализацию всего, что есть ушло почти полгода. Я несколько устал, не хватает знаний. А те, кто работает непосредственно с GLScene и Delphi, считают этот проект бесполезной тратой времени, в какой-то мере они правы, вот я и решил, выложить сюда, может кто-то решится дописать что-то в этом проекте, может поможет чем-то, да и просто не хочу оставлять валяться такой работе на жестком диске.

Тогда понятно, безусловно вы правы, столько проделать работы и положить на полку просто не правильно! Но, спешу вас огорчить, я хоть и не так давно на этом сайте, но здесь вы не найдете таких опытных людей, которые могли бы продолжить работу над вашим проектом. Был один YemSalat, но он пропал куда-то, да и он наверное не взялся бы за такой рабский труд. Попробуйте поискать таких людей на других сайтах.

Quote (Rutraple)
Я не хочу делать из Гм супер-пупер движок, я прекрасно знаю и понимаю, что он мало пригоден для такого рода вещей, но тем не менее, создать что-то несложное, маленькое, но красивое очень даже можно, и главное это не займет много времени, благодаря таким библиотекам.

Тогда извиняюсь, я, видимо, не так вас понял!
RutrapleДата: Воскресенье, 13 Ноября 2011, 20:53 | Сообщение # 6
почетный гость
Сейчас нет на сайте
Quote (Fenech)
Тогда понятно, безусловно вы правы, столько проделать работы и положить на полку просто не правильно! Но, спешу вас огорчить, я хоть и не так давно на этом сайте, но здесь вы не найдете таких опытных людей, которые могли бы продолжить работу над вашим проектом. Был один YemSalat, но он пропал куда-то, да и он наверное не взялся бы за такой рабский труд. Попробуйте поискать таких людей на других сайтах.

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

Quote (Fenech)
Тогда извиняюсь, я, видимо, не так вас понял!

Не стоит извинятся, пожалуй, это я излагаю не очень ясно. Честно говоря, на форумах про Гм мало кого заинтересовал проект, может рано пока еще судить, но пока тенденция не очень хорошая...


After Time
Last Of Time
Happy Pumpkin
boberДата: Среда, 18 Января 2012, 10:48 | Сообщение # 7
частый гость
Сейчас нет на сайте
1. Тему следовало бы оформить: Описание, возможности, ссылки, а потом проблемы. А так получается, что проблемы превосходят возможности.
2. Возможности нужно было описать на более понятном, простом уровне. Где фраза "даёт возможность делать на ГМ полноценное 3D"? Если бы я не был знаком с Ultimate3D и Xtreme3D, то навряд ли вообще понял бы о чём эта тема.
3. Нужен более серьёзный тест сравнения с Ultimate3D и Xtreme3D. (сравнить фпс при одинаковом количестве моделей)
4. Монстров посмотрел, но реально оценить возможности библиотеки по представленной демке невозможно. Демка должна быть более яркой, хотя бы текстуру на небо кинул. Не говоря о том, чтобы сделать несколько сцен, демонстрирующих управление от первого и третьего лица. (пардон, время, время, понимаю...) Но ради того, чтобы осветить результаты своих трудов за пол года, стоило.
Ну конечно работа проведена большая и она заслуживает уважения! +.
RutrapleДата: Четверг, 19 Января 2012, 21:40 | Сообщение # 8
почетный гость
Сейчас нет на сайте
bober, упор и делался на проблемы, так как я не презентовал саму библиотеку, по сути в ней нет ничего полноценного, то есть даже для создания мало мальски простой игры возможностей не хватит. Но решение проблем раньше вызывало колоссальные трудности, сейчас же, перейдя на Game maker 8, большинство самых серьезных ушли в никуда и разработку можно продолжить (у тебя, кстати, совершенно другая версия на почте лежит, написанная с нуля на последней версии GLScene).
Это тема не зря была с ссылкой на исходный код, я не думал продолжать работать над библиотекой. И к сожалению, я не располагаю той версией исходного кода, что был предоставлен раньше, иными словами перезалить файл не могу, а продлить забыл, так как не имело смысла, никого данная библиотека не интересовала, возможно, и по моей вине.
Сейчас ситуация другая, я легко могу присандалить эту библиотеку, например, к C++ и выиграю в производительности в отличие от GM, но вопрос в другом, а есть ли смысл в этом? Куча продвинутый библиотек представлена уже давно широкому кругу, ко всему прочему, бесплатно. Взять тот же Irrlicht, очень хорош, правда слегка неудобен для меня.
А вообще, я не знаю зачем портирую, возможно, хочу использовать что-то бесплатное и полностью гибкое и понятное для меня.
А для сравнения производительности и для создания презентации нужно еще долго и упорно разбираться и работать...


After Time
Last Of Time
Happy Pumpkin


Сообщение отредактировал Rutraple - Четверг, 19 Января 2012, 21:43
Форум игроделов » Конструкторы игр и лёгкие в освоении системы разработки игр » Game Maker » Xtreme3D 3.0 SourceCode (Моя неполная реализация dll библиотеки Xtreme3D)
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг