Полезные книги для программиста в геймдеве

    Привет, Хабр!
    Ничего не писал со времен своей первой статьи, решил, что пора это исправить.

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

    Ниже я даю рецензии на книжки, которые считаю очень полезными в различных разделах computer science, которые используются в геймдеве. Я намеренно опускаю книги по C++ и алгоритмам: мне кажется, эта тема уже настолько изучена и освещена, что больше про нее не стоит рассказывать.

    Я старался покрыть максимальное количество разных топиков, особенно тех, что спрашивают на собеседованиях. Я старался воздерживаться от domain-specific литературы: профессионалы и так знают. Все картинки содержат ссылки на амазон.

    А какие книжки нравятся вам?
    Также в комментах можете писать, на какие темы вам были бы интересны посты.


    Mathematics for 3D Game Programming and Computer Graphics


    image

    Очень подробное и академичное (со всеми доказательствами) изложение 3D math (по-русски, наверное, это называется «линейная алгебра и аналитическая геометрия») через призму геймдева. При этом ничего лишнего, все очень по существу. Математика нужна не только программистам графики: тулзовиков и гейм-механистов тоже запросто могут спросить (особенно в крутых конторах) на собеседовании про пересечение луча с треугольником.

    Computer Architecture, Fifth Edition: A Quantitative Approach


    image

    Компьютерная архитектура на очень глубоком уровне, с современными примерами. Про то, как работает конвейер, кэши, бранч предикшн, суперскаляры. Написана создателями архитектуры MIPS, на которой работают, например, Nintendo 64, PlayStation 2 и PlayStation Portable. Рекомендуется начинать читать с аппендикса — там есть «вводный курс». Необходимо для всех, кто пишет любой рантайм-код.

    Game Engine Architecture


    image

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

    Real-Time Collision Detection


    image

    Несмотря на название, стоит почитать всем. Очень подробно рассмотрены ускоряющие структуры (hgrid, octree, bsp). Есть большая глава по оптимизации. Количество информации на предложение текста зашкаливает, читать надо очень вдумчиво.

    C++ Concurrency in Action: Practical Multithreading


    image

    Хорошее практическое руководство. Всякие плюшки в виде lock-free и т. д. Очень приятно читается.

    Game Programming Patterns


    image

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

    Похожие публикации

    Средняя зарплата в IT

    113 000 ₽/мес.
    Средняя зарплата по всем IT-специализациям на основании 5 065 анкет, за 2-ое пол. 2020 года Узнать свою зарплату
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама

    Комментарии 12

      +9
      Могу посоветовать парочку книг по гейм дизайну

      image
      «The Art of Game Design: A book of lenses» by Jesse Schell
      Наверное одна из самых популярных книг о гейм дизайне и одна из самых высоко оценённых. И не зря. Эта книга, которая рассказывает абсолютно о всём, что связано с геймдизайном, причём делает это очень подробно и заставляет взглянуть на многие вещи под другим углом. Книга огромная, читал её несколько месяцев, но не пожалел. Наверное, около 80% моих знаний о гейм дизайне из этой книги. :)

      image
      «Level Up!: The Guide to Great Video Game Design» by Scott Rogers
      Замечательная книга, которая рассказывает о многих аспектах гейм дизайна, в том числе про то, что делает уровни, монстров, вещи и сюжет игры интересным. Книга написана очень живым языком, видно, что автор — фанат видеоигр. Must read.

        –20
        Как минимум Mathematics for 3D Game Programming and Computer Graphics уже была на хабре ( habrahabr.ru/post/158607/#comment_5431117 ). За исключением нее — все остальные книжки
        — а) писали второкурсники для девятиклассников (и то, Вильямсовская книжка про многопоточность в частности имеет очень слабое отношение к г-деву).
        — б) они устарели лет на 5-10. Да-да, MIPS прекрасная штука, могу порекомендовать «Алгоритмические трюки для программистов», там как-раз делается оптимизация под powerpc и приводится очень серьезная теория, несомненно это поможет писать код под новый эппловский высокоуровневый API (Metal). =_=.

        Что порекомендовать… вокруг репортажей с SIGGRAPH 2014 было немало рекомендаций книжек, стоит поискать там.

        Также на хабре уже упоминалась www.amazon.com/Physically-Based-Rendering-Second-Edition/dp/0123750792 (Physically Based Rendering, Second Edition: From Theory To Implementation — habrahabr.ru/post/187720/#comment_6579716 — там в комментах еще книжки рекомендуют).
          +16
          >они устарели лет на 5-10.
          Прежде чем огульно критиковать я рекомендую хотя бы пролистать содержание. Core i7 и GTX-480 — вполне свежие архитектуры

          >писали второкурсники для девятиклассников
          Книжку про архитектуру движков писал Jason Gregory, Lead Programmer at Naughty Dog
          Книжку про коллизии писал Christer Ericson, VP of Technology at Activision

          Предлагаю сперва добиться :)
          0
          Есть ещё хорошая книга 3D Math Primer for Graphics and Game Development, 2nd Edition. Пересекается с Mathematics for 3D Game Programming and Computer Graphics.
          • НЛО прилетело и опубликовало эту надпись здесь
              0
              Вот классика ещё: Michael Abrash’s Graphics Programming Black Book, Special Edition.

              Книга от разработчика программного рендерера Quake. Хотя многие приёмы оттуда давным-давно устарели, об истории и о внутренностях там очень интересно.
                +1
                Artificial Intelligence for Games, by Ian Millington and John Funge
                  0
                  Интересно, а есть на русском языке что-то? Особенно интересует что-то вроде «Mathematics for 3D Game Programming and Computer Graphics»
                    +3
                    C++ concurrency in action переведена на русский, насколько я знаю.
                    Про остальные не слышал, русских авторов я бы не стал читать.

                    Ну и боюсь показаться банальным — но английский на уровне чтения таких книжек в любом случае нужен будет.
                    +1
                    А что сообщество может сказать о кнгие Mike McShaffry. Game Coding Complete? Сам пока прочел только её, и как первая книга она показалась мне достаточно интересной и полезной, почерпнул много информации об устройстве и архитектуре игровых движков.
                      0
                      Я сам не читал, но в таких случаях предпочитаю смотреть на послужной список авторов. Он не такой звездный, как у авторов книжек, которые я привел, но тоже весьма недурной. Поэтому думаю, явной фигни там немного.
                        +2
                        Довольно интересна, особенно мне понравились первые главы о том, как в целом устроен геймдев, что в нём хорошего, а что плохого. Это стоит прочесть всем, кто занимается или хочет заниматься геймдевом. В то же время, есть множество вещей, которые специфичны для DirectX и, насколько я помню, WinAPI, что может быть не особо полезно для всех, но как референс — вполне себе. Мне кажется, «Game Engine Architecture» лучше описывает структуру движков, без привязки к конкретным технологиям и более систематизировано, что ли.

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

                      Самое читаемое