|
Опубликовано 21.09.2012 05:19 (12 лет назад) # |
Добрый день!
Хочу использовать Delphi, OpenGL для создания игр. В общем то рисовать примитивы в 3D я уже умею. Хотелось бы рисовать теперь и модельки и миры. Вроде как отрисовать все это там ничего сложного(вершины, нормали, текстурные координаты). Понимаю, что модельки надо будет переделывать в свой формат. Собственно вопрос:
1) какой инструмент использовать для создания моделек/локаций, с анимацией. Чтобы можно было без проблем перевести в свой формат. Инструмент желательно бесплатный.
2) какие решения используете вы? |
|
|
Инженер‑космогоник
|
Опубликовано 21.09.2012 06:25 (12 лет назад) # |
Я использовал свой экспортер к 3д максу(на макс скрипте) и свой загрузчик.
Вот хороший(хоть и старый) пример Xprogera http://mirgames.ru/articles/opengl/anim3d.html
Я по нему сделал похожий экспортер(на самом деле их было несколько чуть разных, в посдледний раз это был экспортировало в чтото похожее на json) и загрузчик на делфи, можешь посмотреть в моих 3д работах, сам экспортер, если хочешь тоже можно, только его надо искать.
Поддерживает покадровую анимацию.
Если не хочешь парится со своим лоадером(а это при всех плюсах и интересе огромный геморрой) можно сделать загрузчик распространенного формата.
На просторах интернета я видел загрузчики на делфи для msh и obj (http://www.sulaco.co.za/opengl_project_3DS_file_loading.htm) msh точно работал с достаточно большими модельками, однако ничего насчет стабильности не скажу.
Ну и наконец есть движки, как минимум движок DAN'a, XProger'a и GLScene умеют грузить разные форматы + их исходники можно найти и заюзать(ну или посмотреть). Я хотел поковырятся в движке Dan'а по тому же вопросу, но как то лень было, хотя dan не против и двиг опен сурсный:)
Если нароешь еще что интересного, сообщай, тема актуальная.
редакция от Mefistofel, 21.09.2012 06:29 |
|
|
|
Опубликовано 21.09.2012 07:05 (12 лет назад) # |
Отличная статья, читал ее еще давно, но в то время меня как то отпугнул 3дмакс. Да и сейчас как то неохота его юзать ввиду его платности. Но если других вариантов не найду, придется его юзать :D |
|
|
|
Опубликовано 21.09.2012 11:00 (12 лет назад) # |
Предлагаю сделать шаг в сторону и использовать Unity. Это C# / javascritpt, дельфи все же в при разработке продаваемых игр используется реже. Что хорошо: куча примеров, интегрированный экспорт/импорт моделек, редакторы уровней, и WYSIWYG в большинстве случаев.
На всякий случай добавлю, что вменяемых нативных(на паскале) библиотек для delphi значительно меньше чем для С++/C#, это значительно осложняет разработку возней со сборкой и линковкой dll или прочими шаманствами. |
|
|
Инженер‑космогоник
|
Опубликовано 21.09.2012 11:48 (12 лет назад) # |
согласен, unity гораздо круче. |
|
|
|
Опубликовано 21.09.2012 13:36 (12 лет назад) # |
Mefistofel написал:
согласен, unity гораздо круче. Платная? |
|
|
|
Опубликовано 21.09.2012 14:07 (12 лет назад) # |
Unity не дает программисту насладиться программированием имхо )) Т.е. если ты делаешь с учетом на скорость разработки и коммерческий выход то да, а если для развития и удовольствия то удовольствие от С++ и OpenGl будет больше. |
|
|
|
Опубликовано 21.09.2012 14:22 (12 лет назад) # |
RichDad написал:
Платная?
Для домашнего использования - нет.
Коммерческая лицензия (роялити-фрии) стоит $2К
Подерживает кучку платформ, проста как валенок. FPS можно написать, просто проходя обучение :)
Проходить обучение нужно в обязательном порядке. Это даже не обсуждается. Несколько первых уроков дают понимание используемых терминов и логики самой системы. Без них можно втыкать в среду часами, ничего не понимая. Зато с обучением, всё раскладывается по полочкам за полчаса - час.
http://unity3d.com/
редакция от Shirson, 21.09.2012 14:24 |
|
|
|
Опубликовано 21.09.2012 14:58 (12 лет назад) # |
DRON написал:
Unity не дает программисту насладиться программированием имхо )) Т.е. если ты делаешь с учетом на скорость разработки и коммерческий выход то да, а если для развития и удовольствия то удовольствие от С++ и OpenGl будет больше.
О, это да, святое! Совсем недавно получал удовольствие от эпической ветки на RSDN http://www.rsdn.ru/forum/cpp/4892160.all про умные указатели.
Так как по роду работы мне приходится работать с кастомной stl реализацией с аллокаторами и пулами памяти, то радости моей временами нет предела :) Нет, сами по себе аллокаторы и пулы штука полезная, но вот на c++ к сожалению для каждого класса содержащего аллоцируемые объекты нужно прописывать помимо обязательного поля(самого аллокатора) еще и конструкторы копирования (далеко не всегда очевидно какой из аллокаторов, существующий или присваеваемый должен использоваться) и конструкторы по умолчанию (бывает же например вектор объектов).
Вроде и игровой код пишешь, причем достаточно тривиальный, а выглядит как rocket science. |
|
|
|
Опубликовано 29.09.2012 15:00 (12 лет назад) # |
А под линукс что нибудь есть |
|
|
|
Опубликовано 29.09.2012 17:36 (12 лет назад) # |
Unity3D 4.0 будет и для Linux |
|
|
|
Опубликовано 30.09.2012 00:51 (12 лет назад) # |
Я тут на Unity покодил 2 дня смешанные чувства скорее разочаровние я делал не типичную задачу Augmented Reallity под iOS но по результатам только убедился что бенифиты от собственного движка очевидны...
Как пример под iOS нет теней, а стенсильные тени как я понял мне тоже никто реализовать не даст... И еще куча забавностей вроде как чтобы отключить back culling надо перепсывать все в шейдерах юнити это все кажется мне странным...
Вообще целый список подбился того что мне кажется стремным если думать не про типичные стрелялки а про что-то иное ) |
|
|
Инженер‑космогоник
|
Опубликовано 30.09.2012 17:06 (12 лет назад) # |
DRON, ну чего же ты хотел, это просто инструмент.
Профиты от движка очевидня, минус только один - его писать надо:(.
Юнити лишь дает мультиплатформенность, готовые инструменты, структуру и удобный редактор.
Если писать чтото серьезное, все равно надо заморачиваться и искать свои решения, использовать опенгл и т.д.
Оно конечно обидно, что нету просто так теней на мобилках, под предлогом "Жирно сильно", но для справедливости стоит отметить, что их в большинстве игр и так не юзают/делают фейк не от хорошей жизни.
CoderInTank
Под линукс еще должно работать MonoGame, форк от XNA GS на mono. |
|
|
|
Опубликовано 30.09.2012 22:50 (12 лет назад) # |
Ну я бы мог сделать у себя тени и ничего бы не загнулось :)
А ну еще 2D там нормального нет это тоже высад.
Он простой как валенок и близок к моемуу идеальному видению движка за что его и любят но я разочарован )
Короче мне думается если я свой смогу довести хотя бы до 20% возможностей что есть в юнити а ничего там эдакого я не увидел :) То безбедня жизнь мне обеспечена )))) По этому и буду этим заниматься так как это весело :) |
|
|