Pull to refresh
  • by relevance
  • by date
  • by rating

Как написать ПингПонг при помощи LibCanvas

Canvas *

День добрый. В этом топике я расскажу, как сделать ping-pong при помощи LibCanvas. Я значительно упростил её, оставив только самую важную часть, так как цель топика не создать игру ping-pong, а объяснить основы LibCanvas.

Итак, в топике пошаговая инструкция, как создать ping-pong при помощи LibCanvas (без оптимизаций).
Читать дальше →
Total votes 49: ↑44 and ↓5 +39
Views 7.3K
Comments 24

Разработка игрового приложения под iPhone. Часть 2

Game development *

Часть вторая


Первую часть можно прочитать тут.

Программная часть


iPad приложение

Доработка приложения для iPad заняло всего неделю. Основное время было затрачено на переработку пользовательского интерфейса. Аспект разрешения экрана iPad и iPhone разный, следовательно если вы не учли это при проектировании интерфейса — у вас проблема (особенно если количество экранов у вас велико).
Если 1024, не меняя аспект, привести к 480, то результирующая картинка будет 480x360 — получаем 40 лишних пикселей по вертикали. Одно из простых решение, это оставить пустое место снизу и сверху. Мне этот подход не нравится. Так как у меня всего три экрана (и почти все в векторе) я переделал исходные материалы под расширение 1024x768 и написал утилиту перегоняющую в 480x320, урезая(сдвигая) конкретные не нужные мне части сверху, снизу или с обоих сторон.
Читать дальше →
Rating 0
Views 3.1K
Comments 0

Ещё одна игра для Android

Development for Android *
Sandbox
image

Здравствуйте, уважаемые хабровчане! В этой небольшой статье вы сможете найти информацию о создании игры для платформы Android, некоторых деталях её разработки, а также проследить путь развития идеи игры.
Читать дальше →
Total votes 18: ↑11 and ↓7 +4
Views 4.5K
Comments 1

Пишем на iPad'е под iPad

Development for iOS *Game development *Lua *
Недавно в App Store появились первые игры написанные прямо на iPad, что лично меня очень радует. Можно сказать, что планшет становится не только средством потребления контента, но и его производства.

image
Под катом я расскажу, как и где это сделано, покажу простенький Hello World.

Читать дальше →
Total votes 73: ↑63 and ↓10 +53
Views 15K
Comments 39

Хабрасорсинг

Website development *Open source *Game development *
На хабре давно появилась традиция “Хабрафуршетов”, на которых все желающие могли помочь “советом” всем страждущим в том в чем они Спецы. Хочу предложить в подобном же ключе провести “Хабрасорц” (название обсуждается, конечно).
У многих из нас, постоянных и “не очень” хабравчан есть идеи, которые хочется воплотить в жизнь или некий отрезок времени, который они не хотят потрать “в пустую”, например, пару недель отпуска, как у меня… Если у вас есть идеи, но нет единомышленников “на быстрый старт” пишите на первом уровне свои навыки или идею, а в ответах единомышленники вам смогут отписаться и таким образом будет сделан “первый шаг”.
Total votes 41: ↑33 and ↓8 +25
Views 6.7K
Comments 42

Коротко о новом: Samsung и Chillingo запускают программу для гейм-девелоперов — 100% Indie

Samsung corporate blog Game development *Development for Android *
Доброй пятницы, Хабр!

В рамках завершившегося вчера Всемирного мобильного конгресса (Mobile World Congress 2013) Samsung совместно с издателем игр Chillingo (не так давно была приобретена гигантом EA) представила оригинальную программу развития мобильной игро-индустрии — 100% Indie. Официально новый проект запустится 4 марта этого года. Он представляет из себя площадку для приложений, целью которой является помощь молодым разработчикам в их стремлении максимально охватно заявить о себе геймерскому миру, ну и, само собой, отправить свои игры в большое плавание через Samsung Apps.


Читать дальше →
Total votes 18: ↑16 and ↓2 +14
Views 10K
Comments 7

Как графика убивает геймплей

Game development *
Translation
Article translated from games making noob blog gamesmakingnoob.blogspot.com
Перевод статьи gamesmakingnoob.blogspot.com/2013/03/how-graphics-are-killing-gameplay.html

В гейм деве есть тенденция к преувеличению важности красивой графики по сравнению с играбельностью. В Ваш прототип с «квадратиками» вместо графики вряд ли кто то будет играть. Привлечь внимание пользователей может только добавление значительного количества контента: персонажей, окружения, анимаций. Можно даже провести аналогию с тем, как мужчины обычно оценивают незнакомых им женщин – по визуальной привлекательности.

image

Но вскоре зачастую приходит и разочарование – почему такое красивое создание
Читать дальше →
Total votes 114: ↑64 and ↓50 +14
Views 45K
Comments 108

Техники проработки персонажей в играх: Часть 2 — Беседа, Критическая ситуация

Game development *
Translation
Привет Хабр,
Я продолжаю переводить статью Рафаэля Чендлера о приемах, которые помогут проработать персонажей в ваших играх более детально.
Первая часть статьи поведала нам о методе использования карт Таро для составления прошлого и будущего персонажей, что во многом определит их судьбу.

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

Продолжение под катом:
Читать дальше →
Total votes 7: ↑6 and ↓1 +5
Views 8.7K
Comments 0

Конкурс WGDC: первые выводы и список самых популярных вопросов

Wargaming corporate blog Game development *
image

Wargaming Developer Contest продолжает набирать обороты. Регистрация идей и проектов заканчивается через 10 дней, 15 августа. На данный момент в конкурсе участвуют без малого 500 человек в 54 командах, которые заявили 107 проектов и 358 идей. Зная о склонности многих откладывать регистрацию на последние дни или даже часы, мы ожидаем, что 14 и 15 августа эти цифры увеличатся если не в разы, то на десятки процентов.

Понятное дело, что раскрывать список проектов и их детали до 15 октября — финишной черты этапа разработки — мы не можем. Однако с удовольствием поделимся информацией о промежуточных статистических итогах, расскажем о подмеченных тенденциях и дадим ответы на самые популярные вопросы, которые задавали потенциальные участники WGDC нашей службе поддержки.

Читать дальше →
Total votes 17: ↑15 and ↓2 +13
Views 5.9K
Comments 8

Игры для Windows Phone Store — 5% конверсии без маркетинга

Microsoft corporate blog Game development *


Игры и развлекательные приложения для мобильных устройств являются одним из самым популярных типов приложений. Вполне понятен тот интерес который проявляют разработчики в этом контексте к Windows Phone. В сети есть немало материалов которые раскрывают секреты разработки игр для этой платформы и, как показывает практика, порог вхождения для программистов достаточно низок чтобы за три, четыре недели освоить весь необходимый инструментарий. Важным моментом при этом является вопрос возврата инвестиций. Сможет ли ваша игра заработать те деньги на которые вы рассчитываете, насколько высока конкуренция на этой платформе, каков процент конверсии, какие требуются маркетинговые усилия для продвижения игры? Не многие компании решаются раскрыть такие секреты и рассказать о своем опыте, но сегодня у вас есть возможность узнать об этом из первых рук от компании Playtox.
Читать дальше →
Total votes 37: ↑25 and ↓12 +13
Views 9.7K
Comments 4

Cocos2d-x: Используем собственный C++ класс в Lua

Programming *Game development *Lua *
Sandbox
Всем доброго времени суток.

Так уж сложилось, что про использование cocos2d-x Lua в природе существует довольно мало информационных материалов, даже с учётом англоязычных источников. Поэтому во многом приходится разбираться самому, копаясь в чужом коде и читая (часто не особо содержательную) документацию.

В этой статье я хочу хотя бы частично исправить эту несправедливость и рассказать о расширении стандартного функционала доступного в cocos2d-x Lua с помощью нативных классов.

С этой задачей я столкнулся, можно сказать, лицом к лицу после осознания собственных скудных знаний Lua. Тогда же и созрело решение часть игровой логики написать на старом добром C++.

Итак, кому интересен данный процесс прошу под кат.
Читать дальше →
Total votes 16: ↑15 and ↓1 +14
Views 6.9K
Comments 14

Wargaming Developers Contest: объявление победителей

Wargaming corporate blog Game development *
image

Спустя почти четыре месяца, которые вместили в себя генерацию идей и разработку проектов участниками и отбор лучших из лучших членами жюри, конкурс Wargaming Developers Contest подошел к концу. Именно сегодня мы объявим имена победителей и призеров в каждой из номинаций. Но это еще не все. Ниже мы также отметим работы, которым не хватило до победы совсем немного, расскажем, почему их авторам стоит продолжать начатое, и сообщим первые подробности о церемонии закрытия конкурса.
Читать дальше →
Total votes 40: ↑26 and ↓14 +12
Views 45K
Comments 25

Создание World of Tanks Blitz на базе собственного движка DAVA

Wargaming corporate blog Development of mobile applications *Game development *
image

Пролог


Эта история началась более трех лет назад. Наша небольшая компания DAVA стала частью Wargaming, и мы начали обдумывать, какие проекты делать дальше. Чтобы напомнить, каким был мобайл три года назад, скажу, что тогда не было ни Clash Of Clans, ни Puzzle & Dragons, ни многих очень известных сегодня проектов. Mid-core тогда только-только начинался. Рынок был в разы меньше сегодняшнего.

Изначально всем казалось, что очень хорошей идеей будет сделать несколько мелких игр, которые бы привлекали новых пользователей в большие «танки». После ряда экспериментов оказалось, что это не работает. Несмотря на отличные конверсии в мобильных приложениях, переход от мобильного телефона к PC оказывался пропастью для пользователей.

Тогда в разработке у нас находилось несколько игр. Одна из них носила рабочее название «Sniper». Основной геймплей-идеей была стрельба в снайперском режиме из стоящего в обороне танка, по другим танкам, которыми управлял AI и которые могли атаковать в ответ.

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

С этого все и началось!

Когда мы начинали разработку “Снайпера”, то рассматривали технологии, которые тогда были доступны для мобильных платформ. На тот момент Unity был еще на достаточно ранней стадии своего развития: по сути, необходимых нам технологий еще не было.

Основной вещью, которой нам не хватало, был рендеринг ландшафта c динамической детализацией, что является жизненно необходимым для создания игры с открытыми пространствами. Было несколько сторонних библиотек для Unity, однако их качество оставляло желать лучшего.

Также мы понимали, что на C# мы не сможем выжать максимум из устройств, под которые мы разрабатываем, и всегда будем ограничены.
Unreal Engine 3 тоже не подходил по ряду похожих причин.

В итоге, мы решили дорабатывать свой движок!
Читать дальше →
Total votes 55: ↑51 and ↓4 +47
Views 56K
Comments 27

Почему производительность в играх — это не просто средний FPS

Wargaming corporate blog Game development *Game testing *

Я работаю в игровой индустрии уже более 8 лет. В Wargaming решаю весьма широкий круг вопросов: от анализа патчей до решения различных внутренних проблем. Так вышло, что проблема комфорта и производительности попала в поле моего зрения. После общения с разработчиками World of Tanks, тестировщиками и исследователями поведения игроков у меня сложилось видение вопроса, которое я оформил в виде этой статьи. Я не специалист в области компьютерной графики или разработчик графического движка, не провожу UX-тесты на людях. Но надеюсь, собранная информация и мой непредвзятый взгляд на вопрос натолкнут вас на прогрессивные мысли и стимулируют к творческому поиску решения проблемы производительности в игре.

Читать дальше →
Total votes 40: ↑24 and ↓16 +8
Views 71K
Comments 72

Как происходит рендеринг кадра в GTA V

ua-hosting.company corporate blog Website development *Game development *Image processing *
Translation
Серия игр Grand Theft Auto прошла долгий путь с момента своего первого релиза в 1997 году. Примерно 2 года назад Rockstar выпустила GTA V. Просто невероятный успех: за 24 часа игру купило 11 миллионов пользователей, побито 7 мировых рекордов подряд. Опробовав новинку на PS3, я был весьма впечатлен как общей картинкой, так и, собственно, техническими характеристиками игры.

Ничто так не портит впечатление от процесса, как экран загрузки, но в GTA V вы можете играть часами, преодолевая бескрайние сотни километров без перебоев. Учитывая передачу солидного потока информации и свойства PS3 (256 Mb оперативной памяти и видеокарта на 256 Mb), я и вовсе удивился, как меня не выбросило из игры на 20-ой минуте. Вот где чудеса техники.

В этой статье я расскажу о проведенном анализе кадра в версии для ПК в среде DirectX 11, которая съедает пару гигов как оперативки, так и графического процессора. Несмотря на то, что мой обзор идет со ссылкой на ПК, я уверен, что большинство пунктов применимо к PS4 и в определенной степени к PS3.

Анализ кадра


Итак, рассмотрим следующий кадр: Майкл на фоне любимого Rapid GT, на заднем плане прекрасный Лос-Сантос.

image

Осторожно! Трафик!
Читать дальше →
Total votes 164: ↑158 and ↓6 +152
Views 112K
Comments 65

Детализация, отражения и пост-эффекты в GTA V

ua-hosting.company corporate blog Website development *Game development *Image processing *
Translation
От переводчика:

Данная публикация является продолжением материала
«Как происходит рендеринг кадра в GTA V». Теперь автор рассматривает вопросы детализации, освещения и пост-обработки кадра. Приятного чтения.

Уровень детализации


Если мы говорим об абсолютных преимуществах Rockstar над конкурентами, то показатели уровня детализации продуктов компании, определенно, выше всяких похвал. Лос-Сантос – это целая плеяда всевозможных сцен разной степени детализации/полигональности, причем все данные транслируются в режиме реального времени и это ни на минуту не блокирует экран загрузки. Просто дух захватывает!

Огни ночного города


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

Именно с таким заявлением Аарон Гарбут, один из основателей и арт-директоров Rockstar North, выступил незадолго до релиза игры на PS3.

Так ли это? Давайте рассмотрим вот такую ночную сцену:

image
Огоньки «До»
Осторожно! Трафик!
Читать дальше →
Total votes 51: ↑47 and ↓4 +43
Views 38K
Comments 8

Статический анализ как часть процесса разработки Unreal Engine

PVS-Studio corporate blog Open source *C++ *Game development *Game testing *
PVS-Studio & Unreal Engine

Проект Unreal Engine развивается — добавляется новый код и изменятся уже написанный. Неизбежное следствие развития проекта — появление в коде новых ошибок, которые желательно выявлять как можно раньше. Одним из способов сокращения количества ошибок является использование статического анализатора кода PVS-Studio. Причем анализатор также быстро развивается и учится находить новые паттерны ошибок, некоторые из которых будут рассмотрены в этой статье. Если вас заботит качество кода ваших проектов, то эта статья для вас.
Читать дальше →
Total votes 27: ↑22 and ↓5 +17
Views 9.1K
Comments 1

Геймджем для Lua-разработчиков на движках Corona и Defold

Appodeal corporate blog Development for iOS *Game development *Development for Android *Lua *

Партнеры и друзья Appodeal, Corona Labs совместно с Defold и DevGAMM Минск, объявляют о старте геймджема #CoronaDefoldJam на базе Lua. Джем пройдет с 28 июля по 30 сентября 2017 на платформе itch.io. Требование к участникам только одно — игры в рамках джема должны быть созданы на Corona или Defold. Если вы никогда не использовали эти движки, не страшно: обе платформы просты для изучения и обладают очень дружелюбными сообществами, которые всегда помогут разобраться. В общем, #CoronaDefoldJam — идеальный повод освоить новые инструменты для создания игр; тем более, что джем поддерживает легендарный Джон Ромеро.

Читать дальше →
Total votes 15: ↑14 and ↓1 +13
Views 5.3K
Comments 2

Основы формата GLTF и GLB, часть 1

Working with 3D-graphics *Game development *Development for AR and VR *AR and VR

Что такое GLTF и GLB?


GLTF (GL Transmission Format) — это формат файла для хранения 3Д сцен и моделей, который является крайне простым в понимании (структура записана в стандарте JSON), расширяемым и легко взаимодействующим с современными веб-технологиями. Данный формат хорошо сжимает трёхмерные сцены и минимизирует обработку во время выполнения приложений, использующих WebGL и другие API. GLTF сейчас активно продвигается Khronos Group как JPEG от мира 3D. На сегодняшний день используется GLTF версии 2.0. Существует и бинарная версия данного формата, которая называется GLB, единственное различие которого в том, что все хранится в одном файле с расширением GLB.


Эта статья — 1 часть из 2х. В ней мы с вами рассмотрим такие артефакты формата и их атрибуты, как Scene, Node, Buffer, BufferView, Accessor и Mesh. А во второй статье мы рассмотрим оставшиеся: Material, Texture, Animations, Skin и Camera. Больше общей информации о формате можно найти здесь.
Если в процессе просмотра статьи захочется лично поработать с данным форматом, то можете скачать модели GLTF 2.0 с официального репозитория Khronos на GitHub


image


Проблематика и её решение


Изначально GLTF формат был задуман Khronos Group как решение для передачи 3D контента по интернету и был призван минимизировать количество импортеров и конвертеров, разные виды которых создаются при работе с графическими API.


image

На текущий момент GLTF и его бинарный брат GLB используются как унифицированные форматы и в CAD программах (Autodesk Maya, Blender и т. д.), в игровых движках (Unreal Engine, Unity и прочих), AR/VR приложениях, соц. сетях и т.д.

Читать дальше →
Total votes 19: ↑18 and ↓1 +17
Views 23K
Comments 3

Основы формата GLTF и GLB, часть 2

Working with 3D-graphics *Game development *Development for AR and VR *AR and VR

Данная статья является продолжением рассмотра основ GLTF и GLB форматов. Вы можете найти первую часть статьи здесь. В первой части мы рассмотрели с вами зачем изначально планировался формат, а также такие артефакты и их атрибуты GLTF формата как Scene, Node, Buffer, BufferView, Accessor и Mesh. В данной же статье мы рассмотрим Material, Texture, Animations, Skin, Camera, а также закончим формировать минимальный валидный GLTF файл.


image

Material и Texture


С мешем неразрывно связаны материалы и текстуры. При необходимости меш может быть анимирован. Материал хранит информацию о том, как модель будет отрендерена движком. GLTF определяет материалы, используя общий набор параметров, которые основаны на Physical-Based Rendering (PBR). PBR модель позволяет создавать “физически корректное” отображение объекта в разных световых условиях благодаря тому, что шейдинговая модель должна работать с “физическими” свойствами поверхности. Есть несколько способов описания PBR. Самая распространенная модель — это metallic-roughness model, которая и используется по умолчанию в GLTF. Также можно использовать и specular-glosiness модель, но только при помощи отдельного расширения (extenstion). Основные атрибуты материала следующие:


  1. name — имя меша.
  2. baseColorFactor/baseColorTexture — хранит инфомрацию о цвете. В случае атрибута Factor информация хранится в числовом значении для RGBA, в случае Texture — хранится ссылка на текстуру в объекте textures.
  3. metallicFactor — хранит информцию о Metallic
  4. roughnessFactor — хранит информцию об Roughness
  5. doubleSided — имеет значение true либо false (значение по умолчанию) и указывает на то, будет ли меш рендериться с обоих сторон или только с "лицевой" стороны.
Читать дальше →
Total votes 15: ↑14 and ↓1 +13
Views 7.9K
Comments 9
1