Дядя Миша писал: Не нравится мне этот зоопарк. Между версиями либо что-то сломано, либо вообще несовместимо. Они же там выбрасывают иногда некоторые вещи.
Для этого и нужны версии в заголовках и метаданных. Чтобы вывести юзверю заветное окошко - этот файл больше не поддерживается. Ну либо заморочиться и делать встроенный конвертер из старого формата в новый как в юнити. Там с допотопных версий можно апгрейднуть проект в современные. Правда большинство функций и шейдеров окажется уже deprecated. В сорсе нечно подобное и было, правда там это можно было узнать только когда уже скормил движку файл не той версии.
Добавлено 11-02-2023 в 16:13:
Цитата:
Дядя Миша писал: Сделал демку, думаешь всем всё понятно, а на практике никому ничего не понятно. Но все молчат как на уроке в советской школе.
Опять же как и писал ранее зависит от реализации. Если можно будет ткнуть на объект и сразу попасть в скрипт который его обрабатывает. Если можно будет легко отследить порядок выполнения кода, если можно будет отследить сколько какой скрипт потребляет. То это сильно понизит планку вхождения. Я понимаю что ты мыслишь как программист старой школы, которому даже и подсветка синтаксиса не особо нужна, не то что инструменты дебага. Но новичкам нужно чтобы все свистело и пердело, чтобы движок их тыкал напрямую носом в строку в коде где они накосячили. Чем больше пользователь будет чуствовать контроль над ситуацией, тем комфортнее ему будет работать с движком.
Если уж совсем упарываться по интуитивности, рекомендую глянуть Скретч, он очень простой и примитивный, расчитаный совсем на маслят, и копировать конечно я его не предлагаю, однако можно посмотреть и поиграться какие вещи авторы выносят на передний план чтобы новичку было проще разобраться. https://scratch.mit.edu/projects/ed...rial=getStarted
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
FiEctro писал: можно будет отследить сколько какой скрипт потребляет
Потребляет ЧЕГО?
Цитата:
FiEctro писал: простой и примитивный, расчитаный совсем на маслят,
А маслята это кто?
Добавлено 11-02-2023 в 17:07:
Сходил по ссылке. Я резко отрицательно отношусь к визуальному программированию. Оно мозги так переформатирует, что человек не может выбраться из своего мира иллюзий.
Дядя Миша писал: Сходил по ссылке. Я резко отрицательно отношусь к визуальному программированию. Оно мозги так переформатирует, что человек не может выбраться из своего мира иллюзий.
Это да, я к тому как сам интерфейс и первое знакомство с ним организовано.
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Дядя Миша писал: Сходил по ссылке. Я резко отрицательно отношусь к визуальному программированию. Оно мозги так переформатирует, что человек не может выбраться из своего мира иллюзий.
Блюпринты в уе это самое лучшее, что вообще, когда-либо придуманное и тому, кто это придумал нужно сделать отдельный вход в рай...
__________________
Kiss my ass if you don't like my Ford!
------------------------------------------ Game Area51 Update 1
First Person Shooter Released Jul 24, 2017
The game is a 3d shooter with the elements of the quest.
Дядя Миша писал: Приведи пример того, что может потреблять ресурсы выше погрешности.
Поиск, перебор и сортировка всех объектов по сцене, инстансы, обращение к их компонентам, генерация чанков, да много чего. А ты думал откуда фризы берутся ?
Цитата:
Дядя Миша писал: Это пока их немного. А когда счёт этих элементов идёт на сотни - крыша едет.
Ты просто не знаешь что там можно делать группы
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Дядя Миша писал: Это пока их немного. А когда счёт этих элементов идёт на сотни - крыша едет.
Там все сделано для людей и никаких проблем с этим нет
Цитата:
FiEctro писал: Ты просто не знаешь что там можно делать группы
И не только
__________________
Kiss my ass if you don't like my Ford!
------------------------------------------ Game Area51 Update 1
First Person Shooter Released Jul 24, 2017
The game is a 3d shooter with the elements of the quest.
FiEctro писал: Поиск, перебор и сортировка всех объектов по сцене, инстансы, обращение к их компонентам, генерация чанков, да много чего
Поиск не должен быть линейным. Перебор один раз за кадр, возможно в отдельном потоке. Инстанцирование не должно занимать время, равно как и обращение к компонентам, насчёт чанков не понял. Какие-то надуманные проблемы, ИМХО. Да, если на уровне десятки тысяч объектов, то конечно их перебор за кадр занимает время, и с этим ничего не сделаешь. Но это приводит к общему падению фпс, а не к фризам.
Цитата:
FiEctro писал: Ты просто не знаешь что там можно делать группы
Я просто спрашиваю, когда вы упрятали их в группу и потом этих групп становится тоже несколько сотен - легко разобраться? В твоём примере сквозной линейный вызов, а если там будет ещё десять непрямых обращений?
Дядя Миша писал: Поиск не должен быть линейным. Перебор один раз за кадр, возможно в отдельном потоке. Инстанцирование не должно занимать время, равно как и обращение к компонентам, насчёт чанков не понял. Какие-то надуманные проблемы, ИМХО.
Они надуманные если ты о них уже знаешь, а человек незнакомый с движком может запутаться. Чанки как в майнкрафте, когда тебе надо обрабатывать массивы по 100х100х100 объектов , конечно можно это делать более оптимизировано не плодя объекты, но это не сильно спасёт.
Добавлено 12-02-2023 в 13:10:
Цитата:
Дядя Миша писал: Я просто спрашиваю, когда вы упрятали их в группу и потом этих групп становится тоже несколько сотен - легко разобраться? В твоём примере сквозной линейный вызов, а если там будет ещё десять непрямых обращений?
Группа оформляется в отдельную ноду со своими инпутами и отпутами, и ничем не отличается от вызова обычной функции. Вообще была речь не о нодах и визуальном программировании, а о том как авторы организуют первое знакомство с их системой, вот это я хотел показать.
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Дядя Миша писал: Я просто спрашиваю, когда вы упрятали их в группу и потом этих групп становится тоже несколько сотен - легко разобраться?
С этим нет проблем, так как можно коллапсить делать отдельные функции, макросы и прочее. )
На скрине справа отдельно созданные функции и переменные. Еще можно комментировать код, если что ))) То есть ты сам решаешь, как будет выглядеть твой визуальный код - нагроможденным или минималистичным. В материал едиторе тоже принты ) А вообще блюпринты это тот же С++ только оформлен визуально, эпики очень грамотно сделали, хочешь юзаешь принты, хочешь юзаешь С++, а хочешь и то и другое сразу, еще можно подключать\отключать плагины
Добавлено 12-02-2023 в 14:32:
Дядя Миша
А еще можно - писать С++ прям в нодах
__________________
Kiss my ass if you don't like my Ford!
------------------------------------------ Game Area51 Update 1
First Person Shooter Released Jul 24, 2017
The game is a 3d shooter with the elements of the quest.
FiEctro писал: Они надуманные если ты о них уже знаешь, а человек незнакомый с движком может запутаться
Так это должно быть на нижнем уровне, а для пользователя - прозрачно.
Цитата:
FiEctro писал: Группа оформляется в отдельную ноду со своими инпутами и отпутами, и ничем не отличается от вызова обычной функции
А с памятью как работа организована?
Цитата:
(_-=ZhekA=-_) писал: А вообще блюпринты это тот же С++ только оформлен визуально, эпики очень грамотно сделали, хочешь юзаешь принты, хочешь юзаешь С++
Оба решения неоптимальные, скажем так. Принты - это для прототипирования. Но перед выпуском игры их рекомендуется обратить в код на С++, чтобы меньше лагало.
Цитата:
FiEctro писал: Чанки как в майнкрафте, когда тебе надо обрабатывать массивы по 100х100х100 объектов
Почему ты привёл трёхмерный массив? Какие объекты он в себя включает?
Цитата:
FiEctro писал: конечно можно это делать более оптимизировано не плодя объекты, но это не сильно спасёт.
Не плодя объекты - КАКИЕ?
В моём представлении объект, это нечто законченное. Ну скажем ротатабля или монстр.
Дядя Миша писал: А с памятью как работа организована?
Я не настолько силён в анриле, наверное как и в крестах. Лучше Жеку спросить.
Цитата:
Дядя Миша писал: Оба решения неоптимальные, скажем так. Принты - это для прототипирования. Но перед выпуском игры их рекомендуется обратить в код на С++, чтобы меньше лагало.
Да прототипирование, но оно и хороший способ ознакомить пользователя с основными фишками. Но в целом я тоже считаю что в ксаше блюпринты лишние. Лучше пусть будет простой и понятный синтаксис.
Цитата:
Дядя Миша писал: Почему ты привёл трёхмерный массив? Какие объекты он в себя включает?
Потому что в трехмерных массивах количество элементов растёт многократно. И выгрузить или переписать разом более 1 ляма элементов для проца серьёзная задача.
Цитата:
Дядя Миша писал: Не плодя объекты - КАКИЕ?
Ну можно же сразу геометрию построить не создавая 1 лям кубиков и записывая им координаты в мировом пространстве. Но это тоже по меркам ЦП не быстро. Вообще поэкспериментируй с генерацией аля майнкрафт у себя в движке, сразу увидишь реальную производительность.
Цитата:
Дядя Миша писал: В моём представлении объект, это нечто законченное. Ну скажем ротатабля или монстр.
Игровой объект это абстракция которая имеет координаты в мировом или локальном пространстве (ну и имя, индекс, всякие теги, слои и т.д.), по крайней мере по меркам юнити. А к нему ты уже любой скрипт привязать можешь, хоть ротатоблю, хоть монстра, хоть всё вместе, и он будет пытаться отыграть обе роли одновременно
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
FiEctro писал: Да прототипирование, но оно и хороший способ ознакомить пользователя с основными фишками. Но в целом я тоже считаю что в ксаше блюпринты лишние. Лучше пусть будет простой и понятный синтаксис.
А что, например, мешает добавить два варианта и пользователь сам для себя решит, какой ему больше подходит\нравится Дядя Миша
Блюпринты аля анрил сложно добавить?
Цитата:
Дядя Миша писал: А с памятью как работа организована?
Примерно так же, как и на С++ как сделаешь, так и будет работать, если сделал криво, то и работать будет криво вылеты и прочая срань...
Добавлено 12-02-2023 в 17:08:
Цитата:
Дядя Миша писал: Оба решения неоптимальные, скажем так. Принты - это для прототипирования. Но перед выпуском игры их рекомендуется обратить в код на С++, чтобы меньше лагало.
На принтах онли можно без проблем делать игры, если руки прямые и никаких тормозов не будет
__________________
Kiss my ass if you don't like my Ford!
------------------------------------------ Game Area51 Update 1
First Person Shooter Released Jul 24, 2017
The game is a 3d shooter with the elements of the quest.
FiEctro писал: Я не настолько силён в анриле, наверное как и в крестах
Ну я имею в виду - на уровне пользователя. Допустим ты там захотел кое-что сохранить. Ты создаёшь еще один какой-то объект, или может глобальную переменную или выделяешь память?
Цитата:
FiEctro писал: Потому что в трехмерных массивах количество элементов растёт многократно
Я спрашивал про конкретный пример такой необходимости. Что это за игра со стеком объектом из 100х100х100? Ну явно не майнкрафт, там объектов на порядок больше. С другой стороны - маловероятно, чтобы на типичном игровом движке можно было бы сделать майнкрафт, он на такое не рассчитан.
Цитата:
FiEctro писал: Ну можно же сразу геометрию построить не создавая 1 лям кубиков и записывая им координаты в мировом пространстве
Нет, подожди. Мы говорили про объекты. С чего ты вдруг перескочил на геометрию?
Цитата:
FiEctro писал: Вообще поэкспериментируй с генерацией аля майнкрафт у себя в движке, сразу увидишь реальную производительность.
Даже простой перебор массива из миллиарда элементов, это ОЧЕНЬ-ОЧЕНЬ долго. Вот это:
C++ Source Code:
for( int i = 0; i < UINT_MAX; i++ );
Работает четыре секунды на Core i3. Безо всякого движка. Ты я вижу узнал какие-то удивительные для себя вещи и теперь хочешь со мной ими поделиться?
Цитата:
FiEctro писал: Игровой объект это абстракция которая имеет координаты в мировом или локальном пространстве
Ну нет. Игровой объект - это сугубая конкретика, которую мы частично может представить абстракцией. То есть func_button можно выполнять роль двери, а не только кнопки. А Monster_barney - необязательно имеет модельку barney, это в принципе может быть любой дружественный персонаж. Если мы не хотим писать для него отдельный класс, а хотим заменить только его наборы реплик и модельку. Теоретически это вообще может быть monster_generic, у которого настраивается абсолютно всё.
Но практика показала что это дико неудобно дизайнеру. Когда у него громадный лист из monster_generic и вообще непонятно какой из них кто.
Цитата:
FiEctro писал: А к нему ты уже любой скрипт привязать можешь, хоть ротатоблю, хоть монстра, хоть всё вместе, и он будет пытаться отыграть обе роли одновременно
И в итоге нормально не отыграет ни одну. Я конечно не знаю, может быть есть зубры кодинга на юнити, но как правило там очень примитивные и глючные объекты - те, которые делали сами разработчики.
Добавлено 12-02-2023 в 17:14:
Цитата:
(_-=ZhekA=-_) писал: А что, например, мешает добавить два варианта и пользователь сам для себя решит, какой ему больше подходит\нравится
Сама практика использования С++ для игровых объектов - неверная. Так быть не должно. Если бы блюпринты были отдельным языком, я бы сказал что это круто. Но это большей частью визуал в редакторе и надстройка над препроцессором С++. Я изучал их устройство. Не могу сказать что мне это понравилось. Эпики свой UnrealScript к четвертой версии довели до полного непотребства, я как-то разбирал во что он превратился. Поняли, что дальше так нельзя и замуитили вот эти БлуПринты.
Дядя Миша писал: Но у меня не предусмотрена компиляция в С++.
Ну, и не имел ввиду прям копию делать, а чтобы принцип был, как а анриле примерно, но использовался твой язык )
Цитата:
Дядя Миша писал: Блюпринты вылетают в винду?
Да, могут, например, если сделать бесконечный цикл или еще, как-нибудь накосячить тебе в редакторе выскочит ошибка, но если собрать проект, то будет вылет )
Цитата:
Дядя Миша писал: Кстати. Ты же свою игру доделал?
Да, делал, она пока стоит на паузе, но я сделал две разные проги конфигураторов на анриле на принтах
__________________
Kiss my ass if you don't like my Ford!
------------------------------------------ Game Area51 Update 1
First Person Shooter Released Jul 24, 2017
The game is a 3d shooter with the elements of the quest.