об играх, разработке и личном опыте

Избранное Все заметки GitHub icon Мой Github Обо мне
Позднее Ctrl + ↑

Участь игр с «честным» рандомом

Все игры с честным, настоящим рандомом, в большинстве случаев будут получать негативные отзывы и оценки игроков.

Это относится к карточным играм, где рандомно карты выдаются, игры с кубиками, игры где случайно выпадают предметы, сундуки и т. п. Игроки всегда будут недовольны настоящим рандомом, будут говорить и писать, что нечестно и подстроено, хотя на самом деле, всё наоборот.

И варианта тут два:

  1. Оставить всё как есть — ведь это честно! и правильно, со стороны разработчика
  2. Сделать «нечестный» рандом и настроить баланс

Хотя нет, один вариант — №2. Потому что в итоге, главная цель любой игры — дать удовольствие от игры играющему; выигрывает он, проигрывает — неважно.

Почитать на эту тему: https://gdcuffs.com/post/unfr-rndm/

Визуальное программирование в Unity

Для Unity уже давно существует ассет Playmaker, который позволяет создавать сценарии игры без написания кода. У него есть свои пользователи и их достаточно много. Я никогда не пользовался такими инструментами и думаю, что какой-либо более-менее серьезный проект невозможно сделать без написания кода.

Однако, для каких-то отдельных элементов и частей игры, такой подход вполне может сократить время разработки. Так недавно появился ещё один инструмент для визуального программирования, похожий на Blueprints из движка Unreal — Bolt.

Выглядит красиво, требует одну из последних версий Unity 2017.1.0 и говорят, работает быстро. Плагин функциональный и может:

  • два типа графов: как в Unreal Blueprints и конечные автоматы как в Playmaker
  • группировка, слои и зум
  • события, макросы, плагины
  • live-редактирование
  • поддержка всех типов
  • встроенная документация

Кроме того, судя по плану разработки — у этого инструмента будет много полезных и удобных функций. Ещё есть сравнительная таблица с другими визуальными редакторами.


А вот что касается использования визуальных средств для создания сложных шейдеров, то тут я «за» :) Таких инструментов много, цены на них приемлемые и результат достойный.

  1. Amplify Shader Editor
  2. Shader Forge
  3. Shader Weaver

Если хочется начать с чего-нибудь попроще и получить красивый результат, есть ассет Minimalist. Привет, Monument Valley!

Можно применять разные цвета на разные стороны объекта с одним материалом, использовать градиенты, есть встроенный редактор материалов, стоит недорого и есть версия Free.

Думаю что для мини-игр визуальное программирование отлично подойдет, комбинированный вариант тоже. А редакторы шейдеров определенно стоит попробовать!

Видео по вторникам #3

Да, ещё одно видео про ARKit.

Игра AMON — 3D пазл в дополненной реальности.

Каждый уровень — новая скульптура разбитая на несколько частей и расположенная в пространстве. Нужно найти такую точку обзора, чтобы все части соединились воедино, тогда появится кнопка подтверждения и уровень считается пройденным. Звучит вроде просто...

Игра платная, но сделана качественно. Любителям головоломок понравится.

31 октября   ar   видео   игры   ссылки

Стивен Возняк про Apple, игры и изобретения

Отличное интервью у Познера.
Оказывается игру Breakout придумал Возняк и Джобс отдал её Atari! На видео видно, как Стиву нравится про то что он рассказывает, как он всё придумывал и что в итоге получилось.

26 октября   видео   игры   личности

5 полезных ассетов и библиотек для Unity #2

1. Unity Loop Component [Ссылка]

Небольшая библиотека которая позволяет повесить хук на события Update, LateUpdate, FixedUpdate, OnRenderObject и другие.

2. UIEffect [Ссылка]

Коллекция эффектов для uGUI. Позволяет быстро добавить около десятка различных эффектов для интерфейса своей игры или приложения: размытие, пикселизация, сепия и т. д.

3. Расширение для MemoryProfiler [Ссылка]

Такое расширение для расширения, про которое я уже писал как-то :) Позволяет искать, фильтровать и выводить информацию в более удобном виде.

4. NaughtyAttributes [Ссылка]

Хорошее расширение для инспектора Unity. Позволяет добавить много удобных контролов: слайдеры, кнопки, выпадающие списки, валидаторы и ещё много чего. Рекомендую.

5. The Stack [Ссылка]

В завершении не ассет, а демка популярной игры Stack. Полезно для новичков, можно подглядеть как делаются такие простые, но в тоже время залипательные игры :)

25 октября   plugin   ассеты   ссылки

Автоподстановка полей в UI

Нашёл интересное решение, которое сохранит дорогое время разработки, взяв на себя рутинные операции по присвоению объектов со сцены полям класса. Как-то так.

Например: вы сделали новый объект интерфейса, создали для него класс, добавили соответствующие поля и потом ручками в инспекторе Unity присвоили текстовое поле к Text и кнопку к Button.

А если таких полей 10-15? И окошек столько же... Я думаю мысль понятна.

Вот как раз для таких дел этот скрипт и есть. Только делает он всё сам. Работает это так:

using UnityEngine;
using UnityEngine.UI;

public class DialogWindow : AutoReferencer<DialogWindow> {
   public Text DialogLabel;
   public Button ConfirmButton;
}
Главное, чтобы названия полей и имена объектов совпадали. И типы соответственно.

Ну и сам скрипт. Конечно, вряд ли есть возможность использовать его везде — всё-таки архитектура приложения у всех отличается, однако, полезность какая-то в нём есть.

using System.Linq;
using UnityEngine;

public class AutoReferencer<T> : MonoBehaviour where T : AutoReferencer<T> {

   #if UNITY_EDITOR
   // Этот метод вызывается один раз, когда мы добавляем компонент на объект
   protected new virtual void Reset()
   {
       // Магия рефлексии
       // Для каждого поля в классе/компоненте, мы ищем только пустые или null
       foreach (var field in typeof(T).GetFields().Where(field => field.GetValue(this) == null))
       {
           // Теперь ищем объект с таким же именем
           Transform obj;
           if (transform.name == field.Name)
           {
               obj = transform;
           }
           else
           {
               obj = transform.Find(field.Name); // Или нужно сделать рекурсию, чтобы пойти глубже по иерархии
           }

           // Если находим объект с таким же именем как и поле - пытаемся присвоить его к этому полю
           if (obj!=null)
           {
               field.SetValue(this, obj.GetComponent(field.FieldType));
           }
       }
   }
   #endif
}

Подглядел на The Knights of Unity ;)

Видео по вторникам #2

Если вы ещё не видели — вторая часть видео полностью сделанного на Unity. Это реалтайм рендеринг!

2017   unity   видео

ARKit и Unity

ARKit от Apple сделал то, что не смог Google в своё время. Хотя все эти технологии уже несколько лет как известны и работают, Apple смогли всё это упаковать, выдать за инновацию (их!) и красиво продать — как обычно.

И я думаю, что будущее как раз за дополненной реальностью (AR), а не за виртуальной (VR). Потому что AR позволяет взаимодействовать с реальным миром: обучаться рисованию/медицине, управлять каким-нибудь девайсом, делать путешествия и экскурсии более интерактивными, и т. д.


Чтобы проверить ARKit на Unity, потестить демки и сделать что-то своё, вам потребуется:

  • iPhone 6S+ с iOS 11
  • Unity 5.6+
  • плагин ARKit
  • скорее всего обновить XCode, потому что старый не даст запустить приложение на iOS 11

Плагин кстати опенсорсный, можно посмотреть внутренности и поразбираться как всё устроено. В ветке на форуме можно спросить совета или узнать про последний апдейты.

Ну и несколько видео, что можно сделать с помощью ARKit.

2017   ar   ios   unity   ссылки

SublimeText vs VSCode for Unity

Судя по статистике, ко мне часто заходят по запросам связанным с настройкой SublimeText для Unity. Хочется вам сказать:

— Друзья! Переходите на VSCode — он удобнее. Для него также есть куча плагинов и расширений, подсветка, форматирование, автодополнение, дебаг... Всё работает очень быстро и ничего настраивать не надо. И он бесплатный.

https://code.visualstudio.com

Курс по игровой аналитике

Бесплатный онлайн-курс по игровой аналитике от devtodev. Для тех, кто всегда хотел разобраться как правильно анализировать показатели своей игры или приложения, но не знал как.
Сама система devtodev тоже очень неплоха, ещё и бесплатная, до определенного количество пользователей. Впрочем и цены адекватные. Тем кто пройдет полностью курс — ещё и скидки. Рекомендую.

https://edu.devtodev.com

Ранее Ctrl + ↓