game-programming-patterns - Source repo for the book

  •        70

Note: Now that the book is done, I'm not actively working on it. There are only so many hours in the day, and I have other projects that need my love, including a new book. This means I'm not responding to issues and pull requests here. However, I do intend to circle back and do a second edition at some point, so please do continue to file bugs.

http://gameprogrammingpatterns.com/
https://github.com/munificent/game-programming-patterns

Tags
Implementation
License
Platform

   




Related Projects

Android-CleanArchitecture-Kotlin - This is a movies sample app in Kotlin, which is part of a serie of blog posts I have written about architecting android application using different approaches

  •    Kotlin

The purpose of this repo is to follow up Clean Architecture principles by bringing them to Android. It is worth saying that the idea is to take advantage of the Kotlin Programming Language features plus also pull in lessons learned and ideas from other interesting aproaches like Functional Programming. There is another Android Clean Architecture repository written in Java: https://github.com/android10/Android-CleanArchitecture with really nice discussions: https://github.com/android10/Android-CleanArchitecture/issues. Article, lessons learned and some more material coming up. Check the following known bugs and TODO list.

GDevelop - :video_game: GDevelop is an open source HTML5 and native game creator requiring no coding skills

  •    C++

GDevelop is a full featured, open source game development software, allowing to create HTML5 and native games without any knowledge in a specific programming language. All the game logic is made thanks to an intuitive and powerful event based system. A pre-generated documentation of the Core library, C++ and JS game engines is available here.

app-architecture - Sample Code of the App Architecture Book

  •    Swift

This repository hosts all sample code from the book: the Recordings sample app in seven different variants, plus a project from the accompanying videos that implements eight application design patterns within a single app. We'd love to hear your feedback. File an issue, send us an email, or send us a tweet.

GDevelop - HTML5 and native game creator requiring no coding skills

  •    C++

GDevelop is a full featured, open source game development software, allowing to create HTML5 and native games without any knowledge in a specific programming language. All the game logic is made thanks to an intuitive and powerful event based system.


Parallel Programming with Microsoft Visual C++

  •    C++

Code samples for the patterns & practices book on design patterns for parallel programming, Parallel Programming with Microsoft Visual C++.

CRYENGINE - CRYENGINE is a powerful real-time game development platform created by Crytek.

  •    C++

This repository houses the source code for CRYENGINE. Instructions on getting started with git can be found here, along with details on working with launcher projects and git source code.

MagicalRecord - Super Awesome Easy Fetching for Core Data 1!!!11!!!!1!

  •    Objective-C

In software engineering, the active record pattern is a design pattern found in software that stores its data in relational databases. It was named by Martin Fowler in his book Patterns of Enterprise Application Architecture. The interface to such an object would include functions such as Insert, Update, and Delete, plus properties that correspond more-or-less directly to the columns in the underlying database table. Active record is an approach to accessing data in a database. A database table or view is wrapped into a class; thus an object instance is tied to a single row in the table. After creation of an object, a new row is added to the table upon save. Any object loaded gets its information from the database; when an object is updated, the corresponding row in the table is also updated. The wrapper class implements accessor methods or properties for each column in the table or view.

Entitas-CSharp - Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity

  •    CSharp

Entitas is a super fast Entity Component System Framework (ECS) specifically made for C# and Unity. Internal caching and blazing fast component access makes it second to none. Several design decisions have been made to work optimal in a garbage collected environment and to go easy on the garbage collector. Entitas comes with an optional code generator which radically reduces the amount of code you have to write and makes your code read like well written prose. The optional code generator lets you write code that is super fast, safe and literally screams its intent.

Parallel Programming with Microsoft .NET

  •    CSharp

Code samples for the patterns & practices book on design patterns for parallel programming, Parallel Programming with Microsoft .NET.

gosu - 2D game development library for Ruby and C++

  •    C

Gosu is a 2D game development library for Ruby and C++. The main website is www.libgosu.org. The source code, wiki, issue tracker and change log are all hosted on GitHub.

awesome-design-patterns - A curated list of software and architecture related design patterns.

  •    

A curated list of software and architecture related design patterns. Software design pattern - A general, reusable solution to a commonly occurring problem within a given context in software design. It is a description or template for how to solve a problem that can be used in many different situations.

bwapi - Brood War API

  •    C++

The Brood War Application Programming Interface (BWAPI) is a free and open source C++ framework that is used to interact with the popular Real Time Strategy (RTS) game Starcraft: Broodwar. Using BWAPI, students, researchers, and hobbyists can create Artificial Intelligence (AI) agents that play the game. BWAPI only reveals the visible parts of the game state to AI modules by default. Information on units that have gone back into the fog of war is denied to the AI. This enables programmers to write competitive non-cheating AIs that must plan and operate under partial information conditions. BWAPI also denies user input by default, ensuring the user cannot take control of game units while the AI is playing. These defaults can be changed for flexibility, unless enforced by a Tournament Module (game referee for AI tournaments). Changed defaults will be advertised when the match begins.

mastering-modular-javascript - 📦 Module thinking, principles, design patterns and best practices.

  •    HTML

📦 Module thinking, principles, design patterns and best practices. Modular JavaScript is a book series with the mission of improving our collective understanding of writing robust, well-tested, modular JavaScript code. Mastering Modular JavaScript is the second book in the series, and it discusses modular JavaScript application development. Mastering Modular JavaScript includes hundreds of real-world patterns and practices, as well as detailed explanations of what works and what hasn’t when it comes to leveraging ES6 in the wild.

design-patterns-in-ruby - GoF design patterns in Ruby

  •    

Summary of the design patterns explained in the book Design Patterns in Ruby, where Russ Olsen explains and adapts to Ruby 14 of the original 23 GoF design patterns. Code examples refactoring PR's will not be considered. The examples provided by Russ Olsen in his book are meant to be simple and self explanatory, not the best performing or most elegant, their purpose is just educational.

frdomain - Code repo for Functional and Reactive Domain Modeling

  •    Scala

Code repo for Functional and Reactive Domain Modeling.Functional and Reactive Domain Modeling teaches you how to think of the domain model in terms of pure functions and how to compose them to build larger abstractions. You will start with the basics of functional programming and gradually progress to the advanced concepts and patterns that you need to know to implement complex domain models. The book demonstrates how advanced FP patterns like algebraic data types, typeclass based design, and isolation of side-effects can make your model compose for readability and verifiability. On the subject of reactive modeling, the book focuses on higher order concurrency patterns like actors and futures. It uses the Akka framework as the reference implementation and demonstrates how advanced architectural patterns like event sourcing and CQRS can be put to great use in implementing scalable models. You will learn techniques that are radically different from the standard RDBMS based applications that are based on mutation of records. You'll also pick up important patterns like using asynchronous messaging for interaction based on non blocking concurrency and model persistence, which delivers the speed of in-memory processing along with suitable guarantees of reliability.

BansheeEngine - Modern C++14 game engine with Vulkan support, fully featured editor and C# scripting

  •    CSharp

Banshee is a high-quality and modern game development toolkit. It provides a high-performance, multi-threaded game engine written in C++14. The engine includes math and utility libraries, Vulkan, DirectX 11 and OpenGL support, handles common tasks such as input, GUI, physics, audio, animation and scripting, and supports many popular resource formats (e.g. FBX, PNG, PSD, TTF, OGG, WAV).

OpenJK - Community effort to maintain and improve Jedi Academy + Jedi Outcast released by Raven Software

  •    C++

OpenJK is an effort by the JACoders group to maintain and improve the game engines on which the Jedi Academy (JA) and Jedi Outcast (JO) games run on, while maintaining full backwards compatibility with the existing games. This project does not attempt to rebalance or otherwise modify core gameplay. Currently, the most stable portion of this project is the Jedi Academy multiplayer code, with the single player code in a reasonable state.

awesome-scalability - Scalable, Available, Stable, Performant, and Intelligent System Design Patterns

  •    

An updated and curated list of readings to illustrate best practices and patterns in building scalable, available, stable, performant, and intelligent large-scale systems. Concepts are explained in the articles of prominent engineers and credible references. Case studies are taken from battle-tested systems that serve millions to billions of users. Understand your problems: scalability problem (fast for a single user but slow under heavy load) or performance problem (slow for a single user) by reviewing some design principles and checking how scalability and performance problems are solved at tech companies. The section of intelligence are created for those who work with data and machine learning at big (data) and deep (learning) scale.

Urho3D - Cross-platform 2D and 3D game engine.

  •    C++

Urho3D is a free lightweight, cross-platform 2D and 3D game engine implemented in C++ and released under the MIT license. Greatly inspired by OGRE and Horde3D. Licensed under the MIT license, see LICENSE for details.






We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.