Я попадаю в проект Unity с командой сторонних разработчиков. В нашей мобильной игре есть несколько мини-игр, и они построены полностью из элементов пользовательского интерфейса или необработанных изображений только на одном или двух элементах холста. Теперь я знаю, что термин «неправильно» открыт для интерпретации, поскольку игры довольно просты, и они отлично работают на современных устройствах, на которых мы их тестировали.
Однако мое несколько перфекционистское отношение часто вызывает у меня озабоченность по поводу «правильной / лучшей практики», и я с трудом расстаюсь с мыслью, что это не лучший способ разработки игр. Я смотрю на лучшие практики Unity, когда не хватает слишком большого количества элементов на холсте из-за его перерисовки каждый раз, когда что-то меняется, оптимизаторы рендеринга спрайтов оптимизировали обрезку полигонов в противоположность максимальным ректам, чтобы сохранить перерисовку, и т. Д. И ответ, который я получаю от команды разработчиков то есть, «способность экрана соотносить элементы холста позволяет легко обрабатывать различные пропорции, поэтому мы и создаем игры».
Я не хочу, чтобы это был «личный» вопрос с отрицательным голосом, поэтому есть ли более веская причина не создавать простые мобильные игры таким способом? Или это случай, если он работает на целевых устройствах и не вызывает проблем, почему бы и нет? Спасибо заранее за любые ответы, Jaysin
Ответы:
Решение должно быть адаптировано к вашим потребностям. Если потребности игры (производительность IE, отзывчивость, простота разработки и т. Д.) Удовлетворяются с помощью только элементов пользовательского интерфейса, то проблем нет.
Следует учитывать одну вещь: эта система означает, что ваша команда разработчиков, вероятно, не знает, как использовать все возможности Unity. Если в будущем пользовательский интерфейс будет недостаточным, вероятно, будет трудно ориентировать их на более стандартный поток Unity.
источник
Я согласен с nihohit по этому вопросу. Важно принять во внимание масштаб проекта. Это может быть проще / быстрее сделать проект таким образом. Если это только небольшой тип игры или приложения, то неоптимизированный путь часто экономит много времени, а затем экономит деньги. Если маловероятно, что проект нужно поддерживать годами или его нужно расширять, возможно, имеет смысл придерживаться того, к чему привыкли разработчики, даже если это считается менее эффективной практикой.
Это не означает, что ваше мышление должно быть изменено, потому что, если вы начинаете проект с нуля, вы должны полностью подумать о том, как вы реализуете вещи и как сделать его максимально чистым. Но, если вы работаете, особенно если вы работаете с внешним кодом, может быть лучше использовать хак, который будет нечистым, но для его реализации потребуется час, а не рефакторинг целого раздела кода для его очистки, что может занять неделю и стоит тысячи долларов.
источник
Нет ничего плохого только в использовании элементов canvas
Но здесь могут быть и плохие практики (но это не так).
источник
Я думаю, что единственный вопрос, который вы должны задать в этом случае: «Предоставляет ли пользовательский интерфейс всю необходимую мне функциональность?»
У меня очень похожая проблема, за исключением того, что я работал с UE4. Я хотел не делать игру-головоломку, в которой вы перемещаете отмычку и пытаетесь установить булавки в правильном положении. Сначала я подумал, что будет проще и быстрее использовать пользовательский интерфейс, но быстро выяснилось, что у спрайтов уже есть множество функций, которые мне придется реализовать самостоятельно. В моем случае ответом было «Нет, пользовательский интерфейс НЕ предоставляет все необходимые мне функции».
Похоже, что для вас это не так. Но в будущем, возможно, попробуйте спрайты, чтобы посмотреть, будет ли вам легче в долгосрочной перспективе?
источник