Модели то хоть и можно, ну имено генировать или использовать массив, а будет ли это целесообразно? Кроме демки, при таком подходе, ты ничего не сделаешь, хотя тогда игра будет требовать только мощную видюху, а текстуры не обязательно только в вход, 1 двухмерный массив типа Float4, Вот тебе и текстура, а Uv используем так X=U*width y=v*height, А потом в пикельном шейдере color=texture[x][y]
Судя по вашим высказываниям, как раз таки вы не имеете
Объясни это по каким таким высказываниям. Без аргументов бросаться такими фразачками глупо.
Вот я своё мнение обосновать могу легко и просто. Цитирую.
Цитатаbodya_WM
сейчас больше на недоконструктор похоже. На нём ничего кроме этого марио нет.
Ещё из первых сообщений понятно, что это просто готовый "ассет" от автора для примера. Другие нужно делать самому, у тебя же в юнити нет готовых ассетов автомобилей... Ах да, код же там готовый, как я мог забыть)) Ну не суть, к примеру модели деревьев, автомобиля, текстуры и прочее, ты скачал с интернета. А из коробки в юнити этого нет. Так что, юнити тогда тоже недоконструктор, из-за того что там нет коробочых ассетов полностью готовой игры? :D
Отсюда вывод, что ты, не разобравшись в вопросе, лезешь умничать. Вот сначала скачай его конструктор, разбери функционал на 100%, а потом уже бросайся такими высказываниями. Долгожданный анонсик: State of War
Сообщение отредактировал EchoIT - Вторник, 26 Июля 2016, 12:12
Добавлено (26 июля 2016, 12:15) ---------------------------------------------
Цитата
Объясни это по каким таким высказываниям. Без аргументов бросаться такими фразачками глупо.
В таком случае, в порядке очереди объясни
Цитата
По его сообщениям в этой теме создаётся впечатление, что он абсолютно безграмотный или не очень взрослый человек, который только и ищет, к чему прицепиться, при этом сам не имеет каких-либо очень серьёзных познаний.
Цитата
Ещё из первых сообщений понятно, что это просто готовый "ассет" от автора для примера. Другие нужно делать самому, у тебя же в юнити нет готовых ассетов автомобилей... Ах да, код же там готовый, как я мог забыть)) Ну не суть, к примеру модели деревьев, автомобиля, текстуры и прочее, ты скачал с интернета. А из коробки в юнити этого нет. Так что, юнити тогда тоже недоконструктор, из-за того что там нет коробочых ассетов полностью готовой игры?
В первую очередь я осуждал движок ТС за жанровую ограниченность и отсутствие документации. Про ассеты ты уже сам себе придумал. Разработчик игрового движка WaveGameEnvironment2D
Сообщение отредактировал bodya_WM - Вторник, 26 Июля 2016, 12:15
В первую очередь я осуждал движок ТС за жанровую ограниченность
Ну вот я об этом и говорил. С чего ты взял, что он жанрово ограничен? Из-за того, что автор тебе показал только платформер? Забавно. Долгожданный анонсик: State of War
Хотя бы отсутствие документации ограничивает его в жанре.
Как я понял, он ещё продолжает заниматься разработкой движка, и скорее всего документация будет (что, если автор пока просто не успел о ней подумать и занимался более важными вещами?). Критика, это, конечно, хорошо, но только когда отмечаются не только негативные аспекты.
А если ты хорошо знаешь программирование, то отсутствие документации тебя затормозит, и только. Долгожданный анонсик: State of War
Сообщение отредактировал EchoIT - Вторник, 26 Июля 2016, 13:06
То, что ты начал изучать программирование с 11 лет, не значит, что ты в тот же момент стал программистом. Да и к тому же, кто знает, сколько тебе лет. Может, 12. И к чему ты это в данной теме написал сейчас, я если честно не очень понял.
Я кодер с 11 лет. В том смысле что у меня опыт уже 3 года. Сейчас мне 14. В 11 лет я только по сути начал учить Delphi. Потом стал писать на C#. Разработчик игрового движка WaveGameEnvironment2D
Я кодер с 11 лет. В том смысле что у меня опыт уже 3 года. Сейчас мне 14. В 11 лет я только по сути начал учить Delphi. Потом стал писать на C#.
Ну вот смотри. Автору данной темы (и обсуждаемого движка) по профилю 28 лет. В принципе, есть большая вероятность, что возраст реальный (движок вряд ли сможет написать школьник, а взрослым людям про возраст врать незачем). Скорее всего, он занимается программированием уже много лет, и знает, что делает. Ты начинаешь с ним спорить, имея всего лишь опыт обучения (ещё даже не опыт работы) программированию и начинаешь с ним спорить на всевозможные темы насчёт его движка. Умный ли это поступок? Долгожданный анонсик: State of War
Ещё раз повторяю, всё на видеокарте рисуется шейдерами, VBO точно также конвертируется в геом. шейдер.
можно пример где "VBO конвертируется в геом. шейдер"? это докажет вашу адекватность в этом вопросе или же наоборот
Цитатаbodya_WM ()
Я кодер с 11 лет
умерь чсв, ты не один такой
ЦитатаEchoIT ()
Ну вот смотри. Автору данной темы (и обсуждаемого движка) по профилю 28 лет. В принципе, есть большая вероятность, что возраст реальный (движок вряд ли сможет написать школьник, а взрослым людям про возраст врать незачем). Скорее всего, он занимается программированием уже много лет, и знает, что делает. Ты начинаешь с ним спорить, имея всего лишь опыт обучения (ещё даже не опыт работы) программированию и начинаешь с ним спорить на всевозможные темы насчёт его движка. Умный ли это поступок?
nonono, ты вроде адекватный, не надо про возраст) кто знает..
dimakoles, ИМХО последнее время на gcup (возможно раньше не замечал) очень много неконструктивного разливания желчи по сему сюда лучше скидывать что то либо с красивой картинкой (т.к. программистов, которые в чем то разбираются здесь оочень мало) либо чтоб собрать общий шквал негатива и поправить что то, на что он больше всего был направлен
dimakoles, ИМХО последнее время на gcup (возможно раньше не замечал) очень много неконструктивного разливания желчи по сему сюда лучше скидывать что то либо с красивой картинкой (т.к. программистов, которые в чем то разбираются здесь оочень мало) либо чтоб собрать общий шквал негатива и поправить что то, на что он больше всего был направлен
люди разные. я скорее увидеть срез мнений. кто, на что пальцем покажет. и каким пальцем ) свежий взгляд свежий, даже если дурной ведь по факту все-таки можно сказать что один из двух нормальных форумов по геймдеву (второй - gamedev.ru) это срез
Добавлено (26 июля 2016, 16:00) ---------------------------------------------
Цитатаbodya_WM ()
Я кодер с 11 лет. В том смысле что у меня опыт уже 3 года. Сейчас мне 14. В 11 лет я только по сути начал учить Delphi. Потом стал писать на C#.
в два раза меня младше пацан, а как хорошо шел)
Сообщение отредактировал dimakoles - Вторник, 26 Июля 2016, 15:56
Сейчас мне 14. В 11 лет я только по сути начал учить Delphi. Потом стал писать на C#.
Это по сути не так уж и много, у меня допустим 8 лет с 9-10 лет, у моего брата старшего на 4+ года больше опыта и то иногда меня спрашивает по поводу рендера, а я по поводу софта, в программование важно не количество лет, а знание набранные за этот отрезок
Я уже около года(с весны 2015) увлекаюсь граф. апи и рендерингом. Именно тогда как раз и была написана первая версия WGE2D) Разработчик игрового движка WaveGameEnvironment2D
По факту сделать плагин - значит интегрировать существующий джава код с level editor'ом. Это как написать плагин к Unity Editor. У меня level editor называется Featurea (Фиче́рия) Итак, каковы шаги по интеграции существующей рабочей библиотеки на Java, например, Dyn4j http://www.dyn4j.org с фичерией? 1) скачиваем исходный код dynj4 с гитхаба https://github.com/wnbittle/dyn4j 2) кладем скачанное в папочку "engines" внутри движка https://github.com/dmitryk....4j 3) ручками делаем xml схему, которая в концептуальном поле фичерии - это properties файлик xmlSchema.properties https://github.com/dmitryk....perties В это файлике указывается маппинг xml тегов на java классы. Например
Формат таков: 'имя тега'='имя класса тега':'имя суперкласса тега' 'имя тега'.'имя атрибута'='имя класса атрибута':'имя суперкласса атрибута' // 1 вариант 'имя тега'.'имя атрибута'='имя класса атрибута' // 2 вариант - если enum или примитивный тип (int, double, char, ...)
4) файлик project.xml https://github.com/dmitryk....ect.xml используется для того, чтобы указать фичерии, откуда она должна подтянуть xmlSchema.properties
Файлик xmlSchema.properties фичерия ищет по пути ${currentDir}/config/${значение атрибута package - org.dyn4j}, то есть "config/org/dyn4j/xmlSchema.properties"
5) кроме того, в файлике project.properties указываются dependency. То есть если в IDEA модуле (Eclipse проекте) есть ссылка на другой IDEA модуль, то есть (Eclipse проект), в котором есть своя xml схема, то "верхний" модуль подтянет не только свою схему но и схему, которая идет с dependency. В моем случае модуль "dyn4j" подтянет свою схему "engines/dyn4j/config/org/dyn4j/xmlSchema.properties" и схему из платформы "platform/config/platform/xmlSchema.properties"
6) запускаем фичерию - два раза кликаем на executable джарку
7) открываем пустой XML файлик на жестком диске (в текущей версии фичерии есть только редактирование файла, а создания нового нет, загадка почему так)
8) Открыли. Теги я добавляю в этот файлик путем нажатия комбинации CTRL+N - выпадает список доступных тегов. Откуда он берется? Есть для этого свой конфиг areaSuggestion.properties https://github.com/dmitryk....perties
В этом файлике ручками в столбик указываю имя тега и через равно желаемую иконочку для него
/*Заметка на полях*/ вообще в фичерии есть такая концепция новая Config. Это значит что properties файлик "engines/dyn4j/config/org/dyn4j/xmlSchema.properties" имеет парентом такой же файлик из dependency, то есть "platform/config/platform/xmlSchema.properties". Средствами API я могу сделать объект Config Config config = new Config(project, "xmlSchema.properties"); и данный объект будет содержать все проперти из обоих файлов "engines/dyn4j/config/org/dyn4j/xmlSchema.properties" и "platform/config/platform/xmlSchema.properties". Причем пропетя из "дочернего" перетрет пропетю с тем же ключом из "парента" /*Заметка на полях*/
9) Теперь я могу смело нажимать комбинацию CTRL+N - фичерия знает как ей представить SuggestionView.
10) Тег выбираю двойным кликом мышки и ли клавишей ENTER
11) Выбираю в дереве парент, в который хочу добавить children
12) Кликаю мышкой по канвасу - тег добавлен в выбранный парент с атрибутом position равным точке клика (если атрибут position есть в XML схеме)
Теперь как фичерия делает рефлексией новый иснстанс объекта
1) Каждый класс, который хочет, чтобы его инстансы фичерия могла редактировать с помощи мышки, дерева тегов и таблицы атрибутов должен заимплементить интерфейс featurea.xml.XmlNode https://github.com/dmitryk....de.java
2) Пример имплементации интерфейса featurea.xml.XmlNode классом featurea.platformer.Animation
Что я делаю - я заполняю пустой Selection актуальными значениями: rectangle (прямоугольник вокруг объекта), color (желаемый цвет прямоугольника), isSelected = true - объект считается "выбранным" по нажатию мышкой по позиции position (второй параметр метода), position - текущая позиция объекта (значения атрибута position на XML стороне - это тонкий нюанс, который нужен, чтобы магия работала)
/*Самое вкусное - это свои xml primitives*/ Фичерия вводит новое понятие, которое называется xml primitive (xml примитив). По нажатию на строчку в табличек с атрибутами, происходит очень интересная вещь. Внутри движка активируется тот или иной xml примитив. То есть позиция объекта редактируется только если нажать по строчке с ключом position. Как именам атрибутов ставится в соответствие xml притивы? С помощью конфига xmlPrimitives.properties https://github.com/dmitryk....perties
Здесь строчка Animation.position=featurea.util.xmlPrimitives.TransformPrimitive делает магию.
Смотрим, что у нас в featurea.util.xmlPrimitives.TransformPrimitive https://github.com/dmitryk....ve.java Примитив слушает мышку в коллбеках onTouchDown, onTouchDrag, onTouchUp Здесь самое интересное - это что этот самый xml primitive отвечает за редактирование xml файлика на основе того, что он там от мышки услышал
xmlTag.setAttribute(ANGLE, value + ""); // данная строчка кода редактирует файл на жестком диске
То есть по факту, чтобы из джава класса, который вообще ничего не знает про фичерию, сделать джава класс, который для фичерии как родной, надо заимплементить три интерфейса, в которых в сумме содержится пять методов: 1) featurea.app.Area https://github.com/dmitryk....ea.java 3 метода: listAreas, onTick, onDraw 2) featurea.xml.XmlNode https://github.com/dmitryk....de.java 1 метод: getSelection 3) featurea.xml.XmlResource https://github.com/dmitryk....ce.java (это тончайшая магия, так надо, чтобы все работало) 1 метод build
Скачайте сырки ядра 3.х Там обычно должен быть фри блоб. По крайней мере для VESA.
Цитата
ты используешь это "кодер с 11 лет" как аргумент
и в чём проявляется завышенное чсв?
Цитата
Посмотрите, пожалуйста, сами, как класс featurea.platformer.Animation реализует эти пять методов трех интерфейсов, чтобы стать "понятным" для фичерии
Может, сделать привязку гейм обжектов к lua? К примеру, мне удобнее реализовать игровой объект в отдельных скриптах, а не копатся в сырках двига. Можно сделать простое API, как в моём WGE2D. Разработчик игрового движка WaveGameEnvironment2D
Сообщение отредактировал bodya_WM - Вторник, 26 Июля 2016, 16:39
Может, сделать привязку гейм обжектов к lua? К примеру, мне удобнее реализовать игровой объект в отдельных скриптах, а не копатся в сырках двига. Можно сделать простое API, как в моём WGE2D.
он и реализуется в отдельном скрипте (то есть в файле класса). Привязка к движку - это только для того, чтобы визуально был редактируем твой объект в визуальном редакторе. и не более того. никакой функционал касательно геометрии, логики и т.д. на либы движка не опирается. это все описывается с нуля ручками по факту.
хотя есть конечно так называемые стандартные компоненты (физика и платформер), которые именно и дают уже готовую "объектную модель", которую надо расширять.
стандартные компоненты - это языком Юнити - префабы
если со стандартными компонентами нет интереса разбираться - пиши с нуля свой.
движок - это как бы платформа для префабов. сам по себе движок не задает формат данных и алгоритмы твоего кода, а только дает доступ к енвайроменту (аудио, графика) а также синтаксические штучки (общение между properties, xml и java файликами).
Сообщение отредактировал dimakoles - Вторник, 26 Июля 2016, 16:55