Показаны сообщения с ярлыком game engine. Показать все сообщения
Показаны сообщения с ярлыком game engine. Показать все сообщения

вторник, мая 17, 2011

Отчет о поездке на КРИ 2011

13-14 мая был на КРИ 2011.
Список лекций, на которых я успел сходить:
  1. Интерфейсы "Аллодов Онлайн" изнутри.
    Это было в 10 утра, проектор в этом зале еще не работал, так что слайдов не было. Лекция была довольно странная, про языки программирования, взаимодействие клиента и сервера, систему аддонов, виджетов и скриптов, репликацию данных, внутреннее устройство классов - и все за 20 минут. Я кстати, видео на фотоаппарат снимал и выложил то, что вышло на youtube - 1/2, 2/2.
  2. Игровая механика, управляемая данными.
    Проектор все еще не работал, лекция без слайдов, так что тоже не слишком понятная вышла. Посвящена была data-driven подходу в грядущей игре Prime World от Nival. Цель - передать как можно больше работы от программистов гейм-дизайнерам. А именно - передать настройку взаимодействия различных игровых объектов, таких как игроки, NPC и прочее, между собой. Грубо говоря, кто кого и с какой силой имеет право бить файрболом по башке. Все это реализовано через систему аппликаторов и функций. Функции кодируются в строки, передаются на клиент в виде закодированных в base64 данных и на клиенте распаковываются и компилируются, если я правильно уловил идею.
  3. Мир танков: проблемы роста
    Лекция про проблемы масштабирования, с которыми столкнулись в wargaming.net при увеличении популярности World of Tanks. Как устроена раздача патчей (CDN/torrents), проблемы, связанные с ростом команды на 100% за год, немного про отдел тестирования и про необходимость отдельного отдела для deployment'а.
  4. Портируем с iPhone на Windows Phone 7 за 24 часа.
    Лекция была посвящена переносу одной игры с iOS на Win Phone 7, вели ее двое - Михаил Черномордиков из Microsoft и парень из проекта этой игры. Я фотографировал слайды, так что пока не найдется нормальная презентация, можно посмотреть на них. В том числе там был любопытный слайд про доли рынка мобильных ОС. Я вытащил данные с него в google docs:


    Диаграмма, которая говорит о планируемых продажах мобильников с конкретными ОС с 2010 по 2015. Мораль: в 2015 половина новых смартфонов будет под андроидом. Также актуальными будут iOS и Windows Phone 7.

    А на этой диаграмме показаны доли уже существующих на руках у людей смартфонов в 2010 и 2014 году. Хоть Nokia и перестала поддерживать Symbian, но в 2014 эта ОС все еще будет установлена на трети мобильников. Значительно (до четверти рынка) вырастет доля андроидов, прибавит Windows Mobile. BlackBerry с iOS стагнируют.
  5. CPU спешит на помощь.
    Лекция Intel'а про обратный перенос вычислений с GPU на CPU с целью оптимизации FPS в графических приложениях.
  6. Постмортем King's Bounty: Legions
    Странный пост-мортем про не вышедшую игру от KranX. Игра планируется к выходу в виде беты (альфы?) летом. Первой платформой для выхода назначен facebook, то есть это будет социальная игра. Клиент будет сделан на Unity engine. Поскольку это довольно новая технология, разработчики столкнулись с некоторыми подводными камнями, из которых я запомнил сложности для дизайнеров и то, что владельцы Unity внезапно для KranX'а захотели процент от прибыли за включение кэширования. Язык программирования клиента - C# Mono, сервера тоже на С# с использованием Photon Socket Server.
  7. Архитектура и процессы разработки серверной части Prime World.
    Судя по зоопарку языков программирования, упомянутых докладчиком, поддерживать это будет очень сложно. Это сложно сделанная социальная игра, в которой имеются разные части - мирная (для девочек) и dota подобная (для мальчиков и пацанок). Еще есть замок, в котором строятся разные здания. Клиент сделан тоже на Unity, язык программирования C#, сервер замка написан на python, сервер боевой части на C++, в клиенте для этой части используются C++ и Lua. Еще кое-где используется PHP. Для разных целей используются разные базы данных - упоминали MongoDB и связку Python+Jungo SQL DB для обработки отчетов об ошибках.
    Рассказали также про сбор игровых метрик (весьма ценная вещь для поддержки и оптимизации нагрузки на сервера). Для отчетов по метрикам используют Pentaho.
  8. Unity pipeline в Nival Network
    Рассказывали про организацию workflow между гейм дизайнерами, разрабатывающими 3D модели в Maya и программистами, использующими их в Unity. Докладчик ужасно торопился рассказать все что можно, так что если кто-то в дальнейшем не выложит видео, разобраться довольно сложно. Я фотографировал слайды, но из них одних понять этот pipeline будет трудно.
  9. Prime World
    Высокоуровневая лекция в философском ключе про игру Prime World. Сергей Орловский рассказывал про то, как Nival несет счастье людям :) А также показывал трейлеры игры. Слайды здесь. Самый интересный слайд:
    Распределение рынка игр по различным платформам. Видно, что рынок PC игр хоть и остается самым крупным сегментом, в общей массе занимает уже совсем небольшую часть.


  10. Игры для массовой аудитории: мультиплатформенная гонка.
    Александр Лысковский из Alawar'а рассказывал об игровом бизнесе. Мораль лекции - платформы меняются, а игровая индустрия будет стоять вечно :) Слайды здесь.

понедельник, июля 28, 2008

Тестирую google knol

Попробовал создать knol на русском языке, просто чтобы пощупать живьём, что это за зверь...

Взял свою статью про бесплатные игровые движки, немного отредактировал стиль, добавил логотипы для всех движков (заодно загрузку туда картинок посмотрел). Несмотря на то, что Adsense аккаунт у меня есть, легко и просто добавить туда контекстную рекламу не вышло, сайт говорит, что в Google должны сначала проверить содержимое и это занимает до 2-х недель. Подождём... Всё одно тема не популярная в широких кругах, огромной посещаемости ждать не приходится, так уж, для того, чтобы весь процесс самому пройти.

Вышло что-то такое: Бесплатные игровые движки
knolexample

Сразу чувствуется, что это всё ещё глубокая бета, кое-где еще совсем сырая. Морфологический поиск по сайту на русском не работает, если в форме поиска на сайте набрать "движки", то статья находится, если "движок" - то нет. В обычном поиске google это работает уже года 3. Ну, в принципе, официальной поддержки других языков кроме английского там и нет пока.

Через обычный поиск google статья не находится вообще (надеюсь, что из-за того, что бета, хотя не факт). Может ещё не проиндексировалась. Featured articles, вынесенные на первую страницу, находятся, я проверил, хотя тоже не на первом месте, где то на 5-м. Возможно, что поиск гуглем будет нормально работать только для тех авторов, кто подтвердил информацию о себе (там есть пара способов как это сделать, по телефону и по кредитке, кажется, но очевидно, что это для Америки только). В общем, для нормальной работы надо ждать релиза, хотя можно уже сейчас пробовать наработать себе багаж, если есть желание.

P.S. Сейчас сбоку от knol'а показывается следующий блок:
Similar Content on the Web
blogspot.com 76%
livejournal.com 76%
liverss.ru 76%

Так что google ещё и проверяет уникальность контента. Тоже хорошая вещь, автопроверка на нарушение копирайта. Не знаю только, как это влияет на видимость, как google будет поступать в подобных случаях, я ж сам у себя копировал...

среда, июля 02, 2008

Обзор бесплатных игровых движков (game engines)

Поскольку моя сегодняшняя работа связана с графикой, в том числе с разработкой инструментов для разработчиков игр, всё, что связано с game development'ом стало мне сильно интересно.

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

В общем на сегодняшний день самые продвинутые free game engines:

  1. OGRE (Object-Oriented Graphics Rendering Engine). Объектно-ориентированный графический движок рендеринга. Написан на C++, 3D графика, внутри используются Direct3D and OpenGL. По этому движку у буржуев даже книги выпускают. Есть русский сайт. Для работы с последней версией движка нужен один из следующих компиляторов gcc, Visual C++ 7.1 (2003), Visual C++ 8.0 (2005).
    На самом деле это не совсем игровой движок, как написано в документации:
    "Ogre - графический, и только графический движок. Это значит что ничего другого кроме вывода и обработки графики он не делает. Но это значит еще и то, что к нему можно прикрутить сторонние библиотеки для создания полноценной игры, а именно:
    • Звук
    • Организация сети
    • Ввод(манипуляторы, джойстики)
    • Расчет столкновений
    Ogre не содержит эти библиотеки, но предоставляет интерфейс, который позволяет легко подключать внешние модули."
    На этом движке делают в том числе и коммерческие игры, в частности игру "Стальные монстры" (Pacific Storm) написали на нём.

  2. Crystal Space Open source кросс-платформенный SDK для 3D графики в реальном времени, в особенности для разработки игр. Написан на C++, но использовать его можно не только в C++ проектах, но и из Python, Perl, Java проектов.

  3. Nebula engine 2. Open source 3D game and visualisation engine. Использовался в нескольких коммерческих играх. Написан также на C++, работает только под Windows, использует DirectX 9.0. Есть классы для реализации шейдеров (HLSL и FX-файлы DirectX), скелетной анимации, системы частиц, теней. Поддерживает несколько широко распространённых скриптовых языков TCL, Python и Lua.

  4. Irrlicht. Всё почти аналогично, open source, кроссплатформенный, написан на C++, можно использовать из-под .NET (языки типа C#, VisualBasic, and Delphi.NET)

  5. OpenSceneGraph. Open source, кроссплатформенный, написан на стандартном C++, использует OpenGL. Работает с трехмерными моделями форматов .lwo, .obj, .geo, .3ds, .x, .wrl, то есть с объектами, созданными в любом современном редакторе трехмерной графики (3DS Max, Maya и Lightwave 3D).

Есть еще ряд бесплатных движков (в частности GLScene, Blitz3D, Dark Basik, Panda3D), но эти самые раскрученные.


Что ещё почитать на тему движков: