Пишем 3D движок - замену Xors3D
Вложений: 1
Для создания 3D движка (альтернатива устаревающему движку Xors3D) собирается команда энтузиастов.
Цели проекта: + Сделать движок не хуже Xors3D + Получить опыт в разработке + НЕ убийца КРИЗИСА и Unity !!! + Реализовать некоторые интересные идеи Фичи проекта: + Платформа только РС + Движок в виде внешней DLL + Поддержка 3D Vision и Oculus Rift + Поддержка терраморфинга + Большие ландшафты + Наличие удобного редактора Что есть на текущий момент: + Исходники на PowerBasic 10 + Репозитрий GIT на bitbucket.org + Несколько демок (очень примитивных, чтобы выкладывать тут) + Материалы, примеры, гайды и. т.п. (как использовать lua.dll и.т.п.) Движок (точнее его зачатки :) ) уже может: + Инициализировать DX9 + Устанавливать видеорежим + Рендерить сцену + Реализованы некоторые примитивы: кубы, плоскости, треугольники. + VBO. Реализована загрузка моделей формата OBJ + Работа с камерой + Есть зачатки редактора мира на Xors3D - можно портировать на чистый DirectX Лог разработки: Скрины и демки: Кто требуется в первую очередь: - Человек, имеющий опыт в работе с шейдерами. - Человек, имеющий опыт работы с физическими движками а также все заинтересованные. UPD: Нужность и целесообразность обсуждаем тут Пара скринов с репозитория: Пример кода (метод загрузки модели формата OBJ, выдранный из класса): Как видите - очень простой пример процедуры загрузки формата OBJ... |
Ответ: Пишем 3D движок - замену Xors3D
Скрины? Прмеры кода? Бенчмарки?
|
Ответ: Пишем 3D движок - замену Xors3D
|
Ответ: Пишем 3D движок - замену Xors3D
Скрины еще посмотрю, может что более привлекательное найдется... Кто что может сказать по поводу задумки?
|
Ответ: Пишем 3D движок - замену Xors3D
А почему бейсик? Ксорс же на С++ под любой язык подключается... Имхо вы хотите написать новый Blitz3d, а не Ксорс...
|
Ответ: Пишем 3D движок - замену Xors3D
DIM z(4) AS WORD, zp(4) AS STRING - я щитаю лишнее, будет проще указывать DIM z#(4), dim zp$(4)
|
Ответ: Пишем 3D движок - замену Xors3D
И чем он новее если опять dx9?
Кстати Knightmare вроде собирался что то делать только не для блица. Есть инфа? |
Ответ: Пишем 3D движок - замену Xors3D
Цитата:
Выбор языка PowerBasic 10 обусловлен следующим: + Простой синтаксис языка + Мощь и возможности Си (+ есть встроенный ассемблер, 17 типов данных!!!) + Чисто нативный код без виртуальных машин + Поддержка классов, COM, и.т.п. + самое главное: есть готовые заголовочные файлы для ВСЕГО WIN32API!!! Включая DX9/10/11!!! Т.е. на выходе будет DLL или несколько, которые можно использовать практически в любом языке. |
Ответ: Пишем 3D движок - замену Xors3D
Цитата:
|
Ответ: Пишем 3D движок - замену Xors3D
Цитата:
|
Ответ: Пишем 3D движок - замену Xors3D
Несерьезно - это лепить виртуальную машину на android и пихать это дело в мобилки с многоядерными процами.
А PowerBasic для данной задачи я думаю вполне подходит... |
Ответ: Пишем 3D движок - замену Xors3D
Запилите мне версию под Mac, Ubuntu\Debian, FreeBSD, iOS, Android, WP8
|
Re: Пишем 3D движок - замену Xors3D
Да, действительно, надо мультитаргетенджин.
Виндовс, Андроед, Айёос, HTML5 или WebGL и опционально, но желательно Линух и Мак |
Ответ: Пишем 3D движок - замену Xors3D
как подключить к пурику библиотеки?
всякие там фритайпы да злибы. плюсы выбирают не из-за языка, а потомучто к ним библиотек немерено. ну а вообще да, я бы бенчмарки бы посмотрел. |
Ответ: Re: Пишем 3D движок - замену Xors3D
Цитата:
Задача сделать движок, в основном, для начинающих игрописателей. Таким движком был Xors3D. Таким будет и мой движок. Только добавятся более современные фичи. Я реально оцениваю свои силы и возможности и говорю сразу - "Убийцы Unity" не будет. Но должен получится (если мы сообща приложим усилия) вполне приемлемый по качеству движок. Что могу гарантировать я - как минимум не пропаду как Сквид. А если вдруг и заброшу проект, то как минимум оставлю исходники всем желающим. (кстати, обсуждаем вопрос изначальной открытости исходников) Для меня же ценен сам опыт работы в команде, изучение чего-то нового , создание чего-то своими руками и т.п. Если есть энтузиасты, готовые полученный код портировать на PureBasic, который поддерживает Linux и Mac - нет проблем! Хотя чем и интересен именно PowerBasic - он позволяет делать все тоже самое, что и на Си - только намного проще и код намного более читабельный и понятный. Не думаю, что кто-то будет иметь желание ковыряться в чужом коде Си. Особенно Си++. Если все-таки не сойдемся в выборе инструмента - можно писать алгоритмы на псевдоязыке и переводить на свой любимый язык или платформу. Но согласитесь, задача не завоевать рынок, не убить Юнити - мы сделаем удобную и нужную обвертку под графическое АПИ в первую очередь для себя, для воплощения своих творческих идей. Мне кажется - что это было стержнем у Xors3D. От сообщества поклонников Xors3D требуется список фич, которых не хватало в Xors3D. Например мне не хватало функций для работы с ландшафтом, были глюки с LODом и дыры в ландшафте. И много чего еще. Так давайте вместе это дело исправим? |
Ответ: Пишем 3D движок - замену Xors3D
Цитата:
PS. A на Purebasic библиотеки цеплять можно! С их сайта: Цитата:
|
Ответ: Пишем 3D движок - замену Xors3D
Вся эта затея имеет смысл только в том, чтобы получить опыт работы с GAPI, например. Но в реалиях этого вашего бейсика опыт будет бесполезен чуть более чем полностью. Ну и если смотреть на вещи реально, то чтобы лепить куличики в песочнице хватит и дряхлого блитза, а все эти ващи типа "ололо, будут шейдеры и вообще все охуенно" не взлетают, я проверил, лол. В конце-концов есть сраный Юнити, и если выбраться из своей зоны комфорта и потыкаться в шарпы, то ВНЕЗАПНО окажется что лабать говно на них не сложнее чем на бейсике (да еба, говно с одинаковой эффективность лабать можно и на плюсах), но зато есть куда расти и хоть какие-то перспективы.
Суть в том, что блитзоюзеры только кричали что вот если им дать шойдеры, то они захватят мир и все дела, когда они их получили, то ВНЕЗАПНО поняли что это нихера не тривиальная штука и нельзя просто сказать - "ДВИЖОГ, ЗОПЕЛИ МНЕ БЛУМ, МОУШЕНБЛЮР И ПАРАЛЛАКСМАППИНГ БЫСТРОБЛЯТЬ" и оно все заработает быстро и идеально на любой сцене с любым контентом и т.д. и т.п. Все это говно требует знаний графического конвеера и каких-либо допилов для частных случаев. Тащем-то можно выдать и универсальное решение, но универсальные орешения всегда сильно медленнее частных, потому что учитывают овер9000 вариантов использования долбанутыми на всю голову юзерами (и блджад всегда найдется еще 100500 вариантов которых не учли, но они прям очень и очень нужны 3.5 пользователям твоего движка). По итогу всей возни реально шейдеры осилило пара десятков человек, остальным даже не хватало сил внести малейшие правки самим. Это не добавляет мотивации при разработке. Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
|
Ответ: Пишем 3D движок - замену Xors3D
Ещё 2 копейки:
Рассмотри логику разраба: Я знаю С++, пойду искать двиг под С++. Я знаю Blitz и только (таких единицы), пойду искать двиг, О Xors3D (мёртв), так бля, чё там ещё, PureBasic? Уф.. Учит значит новый язык, и ещё движок. Ну думаю о качестве излагаемого кода таким самоучкой можно и не говорить.. Есть PureBasic разраб, погодите, только их практически нет. Так что я не совсем вижу на какую аудиторию ты целишься? Вот глянь: http://www.outracks.com/ http://www.godotengine.org/wp/ https://unity3d.com/ https://turbulenz.com/ И ещё десятки, и они умеют на все платформы. Многие из них на очень популярных языках, и с большими комьюнити. Либо вы предлагается что-то новое и что потенциально имеет свой рынок, либо смысла очень мало суваться. Опыт? Думаю Knightmare прав - опыта будет мало. Я с 15 на блице сидел, на Xors3D один из первых шейдеры начал писать на нашем комьюнити, и тогда уже .Net учил, и PureBasic немного, и так вот тыкался до 19. А когда в 20 лет пошёл на работу разрабом на сраном PHP над сраными проектами (без опыта кодинга на PHP), то понял - вот теперь пора начать учиться. С тех пор уже как более 4 лет, в разных компаниях учусь, и думаю только так стоит учиться, при этом если компания в которой работаешь не способствует твоему развитию интересными проектами и коллегами - то стоит менять пока молодой. Сидя дома, да можно что-то замутить, но сегодня таких уже очень много, следственно "шанс" чего-то дельного без реального конкретного плана, анализа риска и людей по интересам изначально - далеко не уйдёшь, и опыта будет не много. У нас на форуме этот паттерн с как минимум 3 людьми повторялся, далеко не ушли. А кто-то и збсь пошёл (HolyDel, Knightmare, jimon). |
Ответ: Пишем 3D движок - замену Xors3D
Ещё одна копейка в сторону выбора С/C++ (да и вообще любого человеческого ЯП):
Когда мне поднадоел блиц я качнул исходники Quake2 (idTech2 engine, да, не самый сложный проект). И, внимание... Абсолютно не зная синтаксиса и принципов языка C (никогда до этого не притрагивался к нему), я относительно спокойно разобрался в коде (большинстве его мест). Потому что он хорошо организован и читаем, хоть и с минимальным количеством комментариев. К чему я это? Да к тому, что читаемый и понятный код можно написать на ЛЮБОМ языке, и если человеку надо разобраться в любом коде - он разберётся в нём. Си как таковой язык не сложный, если пользоваться им на уровне того же бейсика. Но все его плюшки как раз раскрываются именно при изучении сложностей :) Минус бэйсиков как таковых - они не нужны, кроме как для обучения основных принципов программирования в школе/техникуме/колледже (может быть с ОГРОМНОЙ натяжкой Visual Basic и нужен). Ну и да, даже твой код на PowerBasic не так читаем простому смертному, как ты думаешь (для меня код на С++ понятнее был бы в разы, чем это; плюсом постоянный капс лок... фу таким быть). Разумеется, это всё ИМХО и мне интересно посмотреть во что это выльется в дальнейшем, если конечно работа пойдёт дальше. |
Ответ: Пишем 3D движок - замену Xors3D
Да и если вы в приоритет ставите опыт - то С++ - там опыта много, и полезный, т.к. игровой индустрии именно С++ разрабы нужны.
|
Ответ: Пишем 3D движок - замену Xors3D
|
Ответ: Пишем 3D движок - замену Xors3D
|
Ответ: Пишем 3D движок - замену Xors3D
Немного поправил шапку - озвучил цели и задачи
|
Ответ: Пишем 3D движок - замену Xors3D
Цитата:
|
Ответ: Пишем 3D движок - замену Xors3D
Ну делай сам пока:dontknow: будут демки - бенчмарки, народ может и подтянется.
А пока просто, без шейдеров и физики.. сделай поддержку 3D Vision и Oculus Rift, замути терраморфинг что та ещё:dontknow: удобный редактор например:super: |
Ответ: Пишем 3D движок - замену Xors3D
Цитата:
|
Ответ: Пишем 3D движок - замену Xors3D
Цитата:
С физикой тож самое, её не надо делать - достаточно просто подключить любой физдвиг и у тебя сразу появится базовая механика и интерактивность, так что тож подключай быстрей. К тому же чем быстрей подключишь всё что запланировал тем проще будет исправить или адаптировать архитектуру ядра, которое все эти дела синхронизирует. Потом когда будет понаписано много всякого кода, перекопать базовую архитектуру будет проблематично. И делать сразу три гапи (дх9,10,11) это странно. дх10 тут вообще лишний, зачем он? К тому же не рассчитывай что ты напишешь рендер и всё, его нужно будет постоянно сопровождать, и тебе придется сопровождать сразу все гапи, а еще тот код который их обобщает, чтобы для юзания было прозрачно какое гапи используется. К тому же каму понадобиться дх9 если будет 11 (у него есть режимы совместимости если что)? Лучше сразу определись с минимальным необходимым набором (и целевыми платформами) и разрабатывай только его. И да - используй лучше с/с++ (поновее желательно и без всяких мелкомягких расширений - так будет проще потом портировать). А вообще имхо ничего хорошего в этой затее нет. Лучше определиться с конкретным проектом игры/игр и делать специализированный движок, делая упор на те фичи которые нужны в игре и экономя на несущественных и ненужных - только так можно относительно небольшими силами сделать лучше универсальных движков. |
Ответ: Пишем 3D движок - замену Xors3D
В пользу С++ хочу сказать что проще найти помощников по разработке движка. Бэйсик это редкость.
|
Ответ: Пишем 3D движок - замену Xors3D
Отлично - один человек присоединился!
|
Ответ: Пишем 3D движок - замену Xors3D
Цитата:
|
Ответ: Пишем 3D движок - замену Xors3D
Цитата:
Работа с DLL (динамическая загрузка). http://purebasic.com/documentation/library/index.html Статическая линковка DLL используя LIB файл, а так же импорт статических библиотек и объектных файлов.http://purebasic.com/documentation/r...endimport.html Создание DLL. http://purebasic.com/documentation/reference/dll.html По теме. По моему, использование PowerBasic не совсем логично. Почему? Потому что этот ЯП перестал развиваться и текущая версия вышла несколько лет назад. Компиляторы есть только для DOS и Win32. Сейчас происходит переход на Win64 и под эту платформу нельзя компилировать на PowerBasic, а значит ваш движок уже устарел даже еще не появившись. |
Ответ: Пишем 3D движок - замену Xors3D
Цитата:
|
Ответ: Пишем 3D движок - замену Xors3D
Уф... Столько ненависти..
Всё имеет свои причины быть, и понимание этих причин избавит тебя от "не люблю" и удивления тому как можно сделать так или сяк. В тот же exe можно запихать файлы с картинками (лого например) или дллки, да и кучу других вещей, почему нет? Думаю пока мы тут рассуждаем, кто-то уже написал мало-мальский набросок на Сях, с вращяющимся кубиком.. А мы тут холиварим.. |
Ответ: Пишем 3D движок - замену Xors3D
bugway Ты затеваешь многолетнее бесперспективное занятие. Между тем жизнь у тебя не бесконечная :)
|
Ответ: Пишем 3D движок - замену Xors3D
Цитата:
Цитата:
|
Ответ: Пишем 3D движок - замену Xors3D
Цитата:
|
Ответ: Пишем 3D движок - замену Xors3D
Цитата:
|
Ответ: Пишем 3D движок - замену Xors3D
|
Ответ: Пишем 3D движок - замену Xors3D
Цитата:
А как обычно водиться - делать деньги требует кучу времени. Но если ты умудрился делать деньги занимаясь своим хобби - то вот это круто, и на самом деле доставляет. Хобби на энтузиазме не бесконечно, это "драгоценное" время когда тупо "потому что хобби" мог сидеть ночами по 8-12 часов, кодить всякую хрень, и нравилось! Но потом перестанет, нужно искать другие способы мотивации, и со временем это всё сложнее и сложнее. И если не будет работы на которой ты будешь кодить, в итоге как это водиться - ты забросишь кодинг, и будешь лишь вспоминать о былых клёвых временах.. Позаботься чтобы твоё хобби, стало твоей работой, чтобы ты мог этим делом кормить себя, иначе потратишь драгоценное время "попусту" лишь "покормив" свои эмоции. Самое отстойное видеть людей с интересами по молодости, не вложившиеся в хобби как положено, вырастают и работают продавцами в магазинах или грузчиками.. Мне повезло, с 14 лет хобби, а сейчас не могу представить если бы не добился работы разработчиком.. Я бы подыхал от тупизма и осознания что пр**бал время когда мог вложить.. |
Ответ: Пишем 3D движок - замену Xors3D
Цитата:
Цитата:
|
Ответ: Пишем 3D движок - замену Xors3D
Сейчас рулят вэб инсталеры, и вообще DX9 в комплект Win7 не входит, тебе его тоже с собой таскать надо ;)
|
Ответ: Пишем 3D движок - замену Xors3D
|
Ответ: Пишем 3D движок - замену Xors3D
Цитата:
|
Ответ: Пишем 3D движок - замену Xors3D
Спасибо за ссылку - не знал, что еще жизнь теплется... :)
|
Ответ: Пишем 3D движок - замену Xors3D
Цитата:
|
Ответ: Пишем 3D движок - замену Xors3D
сгенеренный арт хуже смотрится и дороже лампового нарисованного арта.
писать движок конечно весело, особенно демки и бенчмарки с другими движками. как будет демка с nvidia vision - выкладывай. ко мне в понедельник 3д монитор подойдет)) |
Ответ: Пишем 3D движок - замену Xors3D
bugway, ЧОООО??? БЭЙСИК? СТЫДПОЗОРГОРИвОДУ!!! Тут же серьезые люди, ТУТ БЭЙСИКАМИ не пользуются, ТОЛЬКО СИПИПИ!!! И ВООБЩЕ давно пора ЗДЕСЬ ПОСТАВИТЬ ФИЛЬТР на такое слова КАК БЭЙСИК(марально устаревшее слово), ЧТОБЫ не нервировать нервных ЛЮДЕЙ.
И зачем делать ДВИЖОК ЕСЛИ ЕСТЬ юнити? ВЕДЬ ничего ЛУЧШЕ юнити НА ЗЕМЛЕ еще не придумали. ВСЕ СЕРЬЕЗНЫЕ люди [s]всех школ[/s] УЖЕ ПЕРЕШЛИ НА НЕЕ. Булка ОЛОЛО! (прокричать 3 раза) ПС. обилие КАПСА спецом, ЧТОБЫ У ОДНОГО невьебенно ОПЫТНОГО товарисча ГЛАЗА НЕ ПЕРЕСТАВАЛИ КРОВОТОЧИТЬ БЛЕАТЬ! |
Ответ: Пишем 3D движок - замену Xors3D
2Kohol Предупреждение. Еще одно подобное сообщение и бан.
|
Ответ: Пишем 3D движок - замену Xors3D
Kohol, привет дядь Дим. У тебя стокгольмский БАМБИТ :-D
|
Ответ: Пишем 3D движок - замену Xors3D
И ведь не лень было тролю из 47 поста зарегистрировать аккаунт, чтоб оставить сообщение... :)
Лучше бы показал свои суперские исходники на "СИПИПИ" ...:) |
Ответ: Пишем 3D движок - замену Xors3D
bugway, кстати зачем распинаешься про бесик если всё равно тебе кодить то? Пиши на чём тебе удобней - ты же сам сказал какая разница какой язык - на выходе всё равно бинарники0101010100.
Ты главное демку давай, нам же надо поюзать чтобы адекватно оценивать сабж. Окулус то крут только у меня его нет, добавь еще какую нибудь концептуальную фичу чтобы все могли заценить. |
Ответ: Пишем 3D движок - замену Xors3D
Есть прогресс - разобрался с nvapi.dll и hid.dll. Надеюсь скоро смогу выложить демку.
|
Ответ: Пишем 3D движок - замену Xors3D
Интересно будет поглядеть, что же из этого выйдет. Буду следить:)
|
Ответ: Пишем 3D движок - замену Xors3D
Цитата:
|
Ответ: Пишем 3D движок - замену Xors3D
Цитата:
Или планируется USB 3D, класса HID?:-D :) |
Ответ: Пишем 3D движок - замену Xors3D
Цитата:
|
Ответ: Пишем 3D движок - замену Xors3D
|
Ответ: Пишем 3D движок - замену Xors3D
|
Ответ: Пишем 3D движок - замену Xors3D
Народ, есть ли у кого 3D vision или Oculus Rift вообще?
|
Ответ: Пишем 3D движок - замену Xors3D
|
Ответ: Пишем 3D движок - замену Xors3D
Еще вопрос: есть ли смысл выкладывать сырые, примитивные демки? Камнями не закидают? :)
|
Ответ: Пишем 3D движок - замену Xors3D
Выкладывай конечно, а тот кто без греха пусть первым кинет камень :)
|
Ответ: Пишем 3D движок - замену Xors3D
Смысл выкладывать любые демки есть, на то он и движок. Начинать надо с простого в любом случае. А мы тут подскажем что, где и как работает/неРаботает :) для этого форум программистов и есть,
|
Ответ: Пишем 3D движок - замену Xors3D
Выложил скрин и демку (одна из первых). Шапку постоянно буду править. Там же лог разработки.
|
Часовой пояс GMT +4, время: 07:56. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot