• Пишем игровую логику на C#. Часть 2/2

    • Tutorial
    Это продолжение предыдущей статьи. Мы шаг за шагом создаем движок, на котором будет работать игровая логика нашей экономической стратегии. Если вы видите это впервые — настоятельно рекомендую начать с Части 1, так как это зависимое продолжение и требует ее контекста.

    Как и раньше — внизу статьи вы можете найти полный код на ГитХаб и ссылку на бесплатное скачивание.



    Читать дальше →
  • Пишем игровую логику на C#. Часть 1/2

    • Tutorial
    Всем привет. В связи с выходом моей игры SpaceLab на GreenLight я решил начать серию статей о разработке игры на C#/Unity. Она будет основываться на реальном опыте её разработки и немного отличаться от стандартных гайдов для новичков:

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




    К сожалению, эта статья не сможет вам помочь, если вы хотите создать свою казуальную игру используя лишь мышь.

    Зато я шаг за шагом расскажу о создании движка, на котором будет работать игровая логика нашей экономической стратегии.

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

    Кого заинтересовало узнать, что за игра — внизу есть видео и ссылка на бесплатное скачивание.
    Читать дальше →
  • Пользовательские плагины в JavaScript играх

      Wargaming сейчас разрабатывает тактическую карточную игру WoT: Generals. Веб-версия написана на JS, используются LibCanvas и AtomJS. Я принимал непосредственное участие в разработке и хочу рассказать про функционал, который мне кажется интересным и может быть полезным во всех веб-играх. А именно — о системе плагинов игры, которая вдохновлялась пакетными менеджерами в Linux и имеет следующие возможности:

      — История изменений плагинов
      — Автоматическое обновление плагина при обновлении версии игры
      — Разработка плагинов на localhost
      — Неограниченное количество веток, например, для нестабильных версий
      — Зависимости (плагин А автоматически подключает плагин Б)
      — Встроенная возможность делать паки (следствие предыдущего пункта)
      — Легкое изменение любой части клиента игры
      — Полный административный контроль авторов игры над всеми плагинами
      — Поиск по базе плагинов
      — При этом простая установка юзером и удобная работа для плагинописцев.
      Читать дальше →
    • [Опрос] Пользуетесь ли вы нелицензионным контентом?

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


        — Книги (и их сканы)
        — Фильмы
        — ПО/Игры
        — Музыка

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

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

        Читать дальше →
      • Изометрический сапёр на LibCanvas (html5)

        • Tutorial

        Этот топик будет отличаться от предыдущего топика Классический сапёр на html5 и LibCanvas. Его даже, скорее, можно назвать продолжением. И первая часть содержала пошаговую и детальную инструкцию, как заставить работать игрушку, то в этой части будет пару интересных приёмов, как её «оказуалить».

        Играть в изометрический «Сапёр»






        Если вы новичок в этом деле, то стоит начинать с первой части. Для тех, кто хочет углубляться я рассмотрю следующие темы на примере изометрического сапёра, построеного на базе LibCanvas:

        • Изометрическая проекция
        • Оптимизация скорости отрисовки через грязный хак
        • Спрайтовые анимации
        • Draggable слои
        • Оптимизация обработчика мыши согласно особенностей приложения

        Читать дальше →
      • Классический сапёр на html5 и LibCanvas

        • Tutorial


        В этой статье я пошагово расскажу, как писать самый обычный, классический сапёр при помощи Html5 Canvas, AtomJS, и тайлового движка LibCanvas.

        А также смотрите продолжение — "Изометрический сапёр на LibCanvas (html5)"

        Читать дальше →
      • Солнечная система на LibCanvas



          Вчера был отличный топик, "История одного хабраспора", о создании «галактики» на HTML5 Canvas, который сам по себе да своими комментариями вдохновил меня на ответный код. Думал, до окончания документации, не писать новых вещей на Хабру, но, как видите, сорвался) Спасибо kibizoidus за это.

          В топике вы увидите описание процесс создания звёздной системы на последней версии LibCanvas. Быстро, оптимизированно, кратко.
          Читать дальше →
        • ЗdMax: создаём клип с космическими сценами

            ЗdMax: создаём клип с космическими сценами
            Привет всем! С наступающим днём космонавтики!

            Мы написали песню на космическую тему и сняли клип (не коммерческий, с нулевым бюджетом). Всё было сделано не выходя из дома, на домашнем оборудовании и это доступно каждому, кто владеет ЗdMax'ом.

            Далее мы расскажем о кое-каких приёмах компьютерной графики. В этой статье вы сможете прочесть, как создавалась туманность для клипа:



            Если будет интерес – мы опишем и другие подходы, которые мы использовали во время его создания.

            Под хабракатом – много текста, картинок и несколько видео.
            Читать дальше →
          • mozilla is much slower then IE6

              Просматривал список закрытых багов в Firefox 9.0.1 и меня очень порадовала одна строка.

              685315 Remove JSOP_GETGLOBAL
              126212 mozilla is much slower then IE6! and uses 90MB
              678785 resource leak (not closed directory) in gfx/thebes/gfxFT2FontList.cpp


              Чтож, можно всех поздравить. Отныне, с версии 9.0.1 Firefox не только не медленнее, чем Internet Explorer 6, но и использует не 90MB. А ведь об этом баге было сообщено ещё 18 февраля 2002 года, почти 10 лет назад.
            • Flash vs JavaScript, V8 Benchmark Suite

                iq12 (что примечательно, это студия, которая профессионально занимается разработкой при помощи Flash) портировали на Flash V8 Benchmark Suite — набор тестов предназначенный для определения скорости исполнения JavaScript в разных средах. Основной целью этого было сравнить скорость исполнения Flash vs JavaScript (вычислений, но не отрисовки). И, в итоге, они получили очень интересные результаты — за последние два года все популярные JavaScript-движки обогнали Flash по скорости вычислений:


                Читать дальше →