99%

Добавлен , опубликован
Что ж, я почти закончил редактор.
Однако с релизом всё-таки немного обождем, ибо жду от заказчика средств за проект, который включает так же и вот этот инструмент.
Последняя новость как я понял не слишком обрадовала наше сообщество - было много замечаний, которые я в той или иной мере услышал и постарался переделать так, чтобы было хоть чуть-чуть удобнее.
В общем контролы на данный момент выглядят вот так:
Сверху вниз:
  • для типа bool
  • для типа int
  • для типа void
Как можете заметить:
  • кнопки сместились вниз и отображаются только при наведении на элемент (многократное замечание)
  • появилась подсказка по наведению на элемент (замечание Кет)
  • cами элементы более не расширяются по высоте тем ужасным способом, как это было вначале, если "вложений" слишком много (многократное замечание)
  • теперь нет лишних скобок внутри простой арифметики, архитектура арифметики "спрятана" (замечание Doc)
  • так же элементы теперь подстраиваются под размер своего содержимого (замечание ScorpioT1000)
Какие планы есть?
  • Добавить переменные - руки пока не дотянулись
  • Добавить генерацию из строки - замечание prog
  • Скорей всего нижнюю полоску и подсказку нужно сделать выпрыгивающими, не занимающими доп место. Однако тут есть свои нюансы у юньки, что нельзя делать окна поверх без фокуса :(
В чем 1%?
Осталось доделать внешний вид под контекстные действия - условия там, циклы и прочую мурню.
Что еще вообще было сделано за последнее время?
  1. целиком было переписано отображение ГУИ. Собственно контролы теперь полностью попиксельно отрисовываются, потому весь "процесс" легко проконтролировать.
  2. были написаны дополнительные "sub-наработки". Некоторые наработки я представил в сыром виде на этом сайте, надо бы обновить (такие как попап и сериализаторы, например).
  3. Добавлено приведение типов двумя способами - implicit и explicit
implicit это спрятанное приведение типов, не порождающее "отдельного контрола"
explicit это явное приведение типов, пример на 2 скрине сверху - надпись "дробь" у основного поля типа int
Приведения типов позволяет по быстрому добавлять функции смежных типов.
  1. Собственно изменен подход к арифметике
  2. Изменен подход к действиям. Теперь действия вообще умная вещь, и остаются компактными несмотря на все невзгоды.
Ладно, что-то я записался. Уже лень даже дальше строчить - хотя рассказать то вроде и есть чего. Однако, достаточно и того, что вы посмотрите скриншотики разработки и дадите очередную порцию дельных советов - как вам оформление теперь, чего бы еще эдакого хотелось увидеть в тулсе.
Дабы избежать снова вопроса зачем этот редактор - он позволяет визуально вычислять любые значения и запускать сценарии из действий в игре.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
27
Лично я нахожу данный инструмент просто сверх полезным, иначе бы не тратил время на реализацию.
Ну если вы брезгуете за скорость - значит не моя целевая аудитория.
Для серьезных вычислений конечно редактор лучше не использовать. Но организовать вызов "серьезный вычислений" - почему бы нет. Один call проблем не сделает все же, разве что для параноика.
Широкие возможности тут опять же не для того делаются, чтобы можно было писать полноценные скрипты, а только потому что "всякие бывают случаи, может пригодиться".
Я просто скажу так, ну сделаем мы скажем массив с отсылкой на кастомный код, да? Ну вот приспичило нам описать новую ситуацию - в итоге нужно под новым индексом добавить запись, в самой игре этот индекс указывать в качестве "ссылки". Когда приспичит снова туда заглянуть, придется бегать по массиву искать что же вы туда положили. Не практично. А самый большой минус в том, что массив однажды подгружается весь. Не всегда это нужно. Ну и массивом расписать можно тоже не любую ситуацию. Скажем чтобы алгоритм во времени расписать придется делать отсылку на запуск каких-то дополнительных скриптов, которые будут нагружать игровую сборку. Пока таких скриптов с десяток это конечно не проблема, но с ростом их количества скажем до 1000 скорость каждого вашего ребилда вырастет настолько, что вы будете успевать поесть за это время. Не знаю, что тут может быть прикольного и сомневаюсь, что это победа.
Опять же есть разные типажи игр. Некоторым играм кастомные сценарии просто не нужны. Аркады какие-нибудь, гонки, арены, мультиплей стратегии - там это нафиг не сдалось, вполне реально все реализовать в коде. А скажем РПГ, квесты - вот там это уже необходимо. Но опять же, у вас может быть на это свое мнение.
ScorpioT1000:
Кламп хочет продать походу
Ну, лично я собираюсь продавать только на ассет сторе, потому если захочет куда-то еще втюхать - не проблема, а если процентом от навара будет делиться так вообще замечательно. Главное только чтобы на шару не оказалось слишком уж быстро, задаром.
Харгард:
чем выбирать мастером 10+ переменных и функций.
Вот я редактор как раз пытаюсь делать так, чтобы и заполнять тоже было хоть чуть-чуть проще. У меня все редактирование находится "на виду", без необходимость лазить по окошкам. Ну и разумеется в свое время добавлю эдакий "String To Expression"
Бтв, немного поработал над тем, чтобы контролы были менее громоздкими вчера.
Теперь подсказка и кнопки не занимают доп места для рисования и появляются только если контрол был выбран, в остальных случаях просто сворачиваются. Так что +50 к компактности.
На этом скрине минимальное расстояние между контролами теперь:
А на этом выбранный контрол, у которого показывается подсказка и кнопка. Если нажать где угодно вне контрола - он свернется обратно.
Загруженные файлы
30
ScorpioT1000, так-то не я делал - не я продавать буду. Просто ткнул в возможность такого.
27
иначе ее не присунешь - окно может быть только прямоугольным и всегда заливается полностью. Если бы там можно было делать окна хотя бы "поверх всех окон, но без фокуса" - я бы влепил в другое место и под другим оформлением. Юнити в рисовании такого - очень ограничен. Сейчас и то "магия" интерфейса вышла, на костылях целиком.
Сделал еще вот такое - если действие контекста пустое, то его можно свернуть. Хотел как то сократить всякие 'else' в случаях, когда они не используются. Аналогично для while/for/foreach и подобных.
Соответственно если действие не пустое, стрелка пропадает. Вот есть сомнения - может ее оставлять стоит всегда, а не только когда пусто?
Загруженные файлы
29
Extravert, а пока жи ка как выглядит if с несколькими действиями, а то у меня какие то смутные сомнения по этому поводу
Extravert:
иначе ее не присунешь
я про сам текст подсказки
27
alexprey, в данный момент вывести не могу, ибо переделываю попап с данными, но в целом это выглядит так:
где сейчас надпись "ничего не делать" написана надпись "Цепочка действий (9)" и справа кнопка, нажатие на которую приведет к показу этих действий.
я про сам текст подсказки
я там немного поправил сейчас, в общем сейчас оно выглядит вот так:
Там была недоделка, что названия параметров и методы в этих параметрах разделялись точками, что не правильно
29
я там немного поправил сейчас, в общем сейчас оно выглядит вот так:
Там была недоделка, что названия параметров и методы в этих параметрах разделялись точками, что не правильно
Ну так лучше, да
Extravert:
в данный момент вывести не могу, ибо переделываю попап с данными, но в целом это выглядит так:
забыл скриншот :(
27
забыл скриншот :(
я ниже текстом написал, говорю ж, не могу пока вывести ) Вечером накину скриншот.
29
Extravert, аааа
где сейчас надпись "ничего не делать" написана надпись "Цепочка действий (9)" и справа кнопка, нажатие на которую приведет к показу этих действий.
так а как они показываться то будут? Меня вот это интересует
27
alexprey:
так а как они показываться то будут? Меня вот это интересует
Приблизительно так. В попапе первую строку только поправлю
Загруженные файлы
38
Как-то все очень неудобно
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.