149 лучших книг по геймдеву и смежным областям
Хотите написать свою игру? Представляем актуальную подборку книг по геймдеву. Книги со ссылками разбиты на 12 веток по темам.
Книги из статьи Разработка игр – это просто: 12 этапов изучения геймдева
Gamedev для детей
Заинтересовать сорванца не только сидеть часами за играми, а еще и самому их писать, легко. Современные "детские" IDE позволят ребенку быстро войти в курс дела.
- The Official ScratchJr Book – Marina Umaschi Bers
- Super Scratch Programming Adventure – The LEAD Project
- Coding Games in Scratch – Jon Woodcock
- Scratch для детей. Самоучитель по программированию – Мажед Маржи
- Программирование для детей – Кэрол Вордерман
- Invent Your Own Computer Games With Python – Al Sweigart
- Learn to Program with Minecraft – Craig Richardson
- Making games with Python and Pygame – Al Sweigart
Информатика
Данное направление в компьютерных науках является ключевым. По этой причине изучение лучше начинать в начале пути.
- Computer Systems – Randal E. Bryant
- Структура и интерпретация компьютерных программ – Абельсон Гарольд
- Algorithms – Robert Sedgewick
- Конкретная математика – Дональд Кнут
- Computer Architecture – John L. Hennessy
- Современные операционные системы – Эндрю Таненбаум
- Алгоритмы. Построение и анализ – Т. Кормен
- Computational Science and Engineering – Gilbert Strang
Языки программирования
Для разработчика игр важно знать ЯП. Сейчас их огромное множество, и выбор за вами. Так уж повелось, что зачастую используются языки семейства С. Ниже список книг по геймдеву с использованием данных языков программирования.
- Язык программирования C – Брайан У. Керниган
- Programming in Lua – Roberto Ierusalimschy
- Microsoft Visual C#. Подробное руководство – Джон Шарп
- Lua Programming Gems – Luiz Henrique
- C# для профессионалов – Джон Скит
- Язык программирования С++ – Бьерн Страуструп
- C++ Primer – Stanley B. Lippman
- CLR via C# – Jeffrey Richter
- The C++ Standard Library – Николаи М. Джосаттис
- Решение сложных задач на С++ – Герб Саттер
- Параллельное программирование на С++ в действии – Энтони Уильямс
- Effective STL – Scott Meyers
- More Exceptional C++ – Herb Sutter
- The Boost C++ Libraries – Boris Schaling
- Effective Modern C++ – Скотт Мейерс
- Новые сложные задачи на C++ – Герб Саттер
- Optimized C++ – Курт Гантерот
- Стандарты программирования на С++ – Герб Саттер
Создание приложений
Как и в любом другом деле, в программировании требуется много практики. Перед тем, как бросаться в разработку игр, следует начать с простых приложений.
- The Mythical Man-Month – Frederick P. Brooks Jr.
- Практика программирования – Брайан Керниган
- Head First Design Patterns – Эрик Фримен
- Основы – Мартин Фаулер
- Refactoring: Improving the Design of Existing Code – Martin Fowler
- Быстрая разработка программ – Роберт К. Мартин
- Язык UML. Руководство пользователя – Грейди Буч, Джеймс Рамбо
- Code complete 2 – Steven C. McConnell
- Object-Oriented Analysis and Design – Бретт Маклафлин
- API Design for C++ – Martin Reddy
Математика для игр
Для игровой разработки математика нужна и важна для просчета моделей, привязки событий, обработки поведения и т. п.
- Foundations of Game Engine Development – Eric Lengyel
- Mathematics for 3D Game Programming and Computer Graphics – Eric Lengyel
- 3D Math Primer for Graphics and Game Development – Dunn Fletcher
- Essential Mathematics for Games and Interactive Applications – James M. Van Verth
- Geometric Algebra for Computer Science – Leo Dorst
- Geometric Tools for Computer Graphics – Philip Schneider
- Visualizing Quaternions – Andrew J. Hanson
- Div, Grad, Curl, and All That – H. M. Schey
Игровое программирование
В этом разделе представлены книги на тему игровых алгоритмов, движков, дополненной реальности, кроссплатформенности и паттернов gamedev.
- Learning unreal engine game development – Joanna Lee
- Introduction to Game Design, Prototyping, and Development – Jeremy Gibson
- Cocos2d-x: Beginner's Guide – Roger Engelbert
- Game Coding Complete – Mike McShaffry
- Blueprints Visual Scripting for Unreal Engine – Brenden Sewell
- Unity in Action – Джозеф Хокинг
- Game Programming Algorithms and Techniques – Sanjay Madhav
- Cross Platform Game Programming – Steven Goodwin
- Building an FPS Game with Unity – John P. Doran
- Augmented Reality: Principles and Practice – Dieter Schmalstieg
- Game Programming Patterns – Robert Nystrom
- Виртуальная реальность в Unity – Джонотан Линовес
- Practical Augmented Reality – Steve Aukstakalnis
- Best of Game Programming GemsJun – Mark DeLoura
- Game Programming Gems – Mark DeLoura
- Game Programming Gems – Kim Pallister
Создание движка
Это один из самых важных этапов в разработке любой игры. Для полноценного поэтапного процесса создания существует масса инструментов, которые вы найдете в одной из представленных книг по геймдеву.
- Архитектура игровых движков – Джейсон Грегори
- 3D Game Engine Architecture – David H. Eberly
- 3D Game Engine Design – David H. Eberly
- Game Engine Gems 1 – Eric Lengyel
- Video Game Optimization – Eric Preisz
- Game Development Tools – Marwan Ansari
- Game Engine Gems 2 – Eric Lengyel
- Language Implementation Patterns – Terence Parr
- Unity 5 Game Optimization – Chris Dickinson
- Designing the User Experience – David Lightbown
- Game Engine Gems 3 – Eric Lengyel
- The Garbage Collection Handbook – Richard Jones
- GPGPU Programming for Games and Science – David H. Eberly
Графика и визуализация
Именно картинка и эффекты делают современную игру захватывающей и такой привлекательной для геймеров. Всем нужна реалистичная картинка, живая мимика и пейзажи – этому обучает данный список книг по геймдеву.
- Real-Time 3D Rendering with DirectX and HLSL – Paul Varcholik
- Introduction to 3D Game Programming with DirectX 12 – Frank Luna
- OpenGL ES 3.0. Руководство разработчика – Дэн Гинсбург
- Fundamentals of Computer Graphics – Steve Marschner
- Computer Graphics Principles and Practice in C – Andries van Dam
- Principles of Digital Image Synthesis – Andrew S. Glassner
- Digital Image Processing – S, Jayaraman
- Tricks of the 3D Game Programming – Andre LaMothe
- Ray Tracing from the Ground Up – Kevin Suffern
- Real-Time Shadows – Elmar Eisemann
- Graphics Programming Methods – Jeff Lander
- Practical Rendering and Computation – Jason Zink
- Advanced Global Illumination – Philip Dutre
- GPU Gems – Randima Fernando
- OpenGL Язык шейдеров. Книга рецептов – Дэвид Вольф
- Gpu Gems 2 – Matt Pharr
- OpenGL Insights – Patrick Cozzi
- Texturing and Modeling – D. S. Ebert
- GPU Pro – Wolfgang Engel
- Vulkan Programming Guide – Graham Sellers
- Polygon Mesh Processing – Mario Botsch
- GPU PRO 3 – Wolfgang Engel
- Non-Photorealistic Rendering – Bruce Gooch
- Isosurfaces – Rephael Wenger
- GPU PRO 3 – Wolfgang Engel
- Jim Blinn's Corner – Jim Blinn
- Нефотореалистичная компьютерная графика – Томас Строзотт
- GPU Pro 4 – Wolfgang Engel
- GPU Pro 7 – Wolfgang Engel
- Graphics Gems – Alan W. Paeth
- Andrew Glassner's Other Notebook – Andrew Glassner
- The Magic of Computer Graphics – Noriko Kurachi
Звуковое наполнение
Без голоса главного героя или звуков окружающей среды будет скучно и не интересно. Разработке звукового сопровождения следует также уделить немного внимания.
- Game Audio Programming – Guy Somberg
- Getting Started with C++ Audio Programming for Game Development – David Gouveia
Игровая физика
Для плавного и незаметного взаимодействия всех объектов в игровом софте нужен еще один важный инструмент. Игровая физика диктует всем участникам процесса, как взаимодействовать, и ведет контроль над происходящим.
- Real-time 3D Character Animation – Nik Lever
- Character Animation With Direct3D – Carl Granberg
- The Nature of Code – Daniel Shiffman
- Physics Modeling for Game Programmers – J.Robert Ellis
- Physics for Game Developers – David M Bourg
- Game Inverse Kinematics – Kenwright
- Physics-based Animation – Kenny Erleben
- Game Physics Pearls – Gino van den Bergen
- Real Time Cameras – Mark Haigh-Hutchinson
- The Art of Fluid Animation – Jos Stam
- Game Physics Engine Development – Ian Millington
- Collision Detection in Interactive 3D Environments – Gino van den Bergen
Игровой ИИ
Это то самое зловещее "существо", которое не дает вашему интересу иссякнуть и забросить желание пройти уровень или разобраться с боссом. Ниже приведено собрание книг по геймдеву по созданию игрового ИИ.
- Artificial Intelligence for Games – Ian Millington
- AI For Game Developers – David M. Bourg
- Programming Game AI By Example – Mat Buckland
- Unity AI Game Programming – Ray Barrera
- Искусственный интеллект. Современный подход – Стюарт Рассел
- Behavioral Mathematics for Game AI – Dave Mark
- AI Game Programming Wisdom – Steve Rabin
- AI Game Programming Wisdom 2 – Steve Rabin
- Game AI Pro – Steven Rabin
- Game AI Pro 2 – Steven Rabin
Многопользовательское программирование
Многопользовательские игры разрабатываются несколько иначе, нежели игры для одного игрока. В данном процессе необходимо учесть работу потоков и прочие нюансы. Ниже продемонстрирован список книг по геймдеву о сетевом протоколе и серверном программировании.
- Understanding The Linux Network Internals – Benvenuti
- TCP/IP Illustrated Vol. 3 – W. Richard Stevens
- Системное программирование – Роберт Лав
- Unix Network Programming – Stevens
- TCP/IP Illustrated, Vol. 2 – Gary R. and W. Richard Stevens
- UNIX. Профессиональное программирование – У. Р. Стивенс, С. А. Раго
- Massively Multiplayer Game Development – Thor Alexander
- Unix Network Programming – Bill, Fenner
- TCP/IP Illustrated, Volume 1 – Stevens
- Programming with POSIX Threads Textbook Binding – David R.
- Massively Multiplayer Game Development – Thor Alexander
- Многопользовательские игры. Разработка сетевых приложений – Джошуа Глейзер, Санджай Мадхав