{"id":20619023,"url":"https://github.com/tessapower/poo-game","last_synced_at":"2025-10-16T02:40:15.550Z","repository":{"id":188839767,"uuid":"571090226","full_name":"tessapower/poo-game","owner":"tessapower","description":"A silly poo game as a first experiment with DirectX :poop:","archived":false,"fork":false,"pushed_at":"2022-12-10T00:53:51.000Z","size":5935,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-06T19:45:03.279Z","etag":null,"topics":["cpp","directx-11","visual-studio"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tessapower.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"License/GNU General Public Licence Version 3.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2022-11-27T05:45:25.000Z","updated_at":"2023-01-24T11:41:46.000Z","dependencies_parsed_at":"2023-08-17T05:12:04.625Z","dependency_job_id":null,"html_url":"https://github.com/tessapower/poo-game","commit_stats":null,"previous_names":["tessapower/poo-game"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/tessapower/poo-game","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tessapower%2Fpoo-game","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tessapower%2Fpoo-game/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tessapower%2Fpoo-game/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tessapower%2Fpoo-game/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tessapower","download_url":"https://codeload.github.com/tessapower/poo-game/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tessapower%2Fpoo-game/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268596178,"owners_count":24275849,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-03T02:00:12.545Z","response_time":2577,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cpp","directx-11","visual-studio"],"created_at":"2024-11-16T12:10:13.475Z","updated_at":"2025-10-16T02:40:10.507Z","avatar_url":"https://github.com/tessapower.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# The Poo Game :poop:\n\n[![Build](https://github.com/tessapower/cp-poo-game/actions/workflows/msbuild.yml/badge.svg)](https://github.com/tessapower/cp-poo-game/actions/workflows/msbuild.yml)\n\nA silly little Poo Game - a simple first experiment with a DirectX 11 based framework. This is a first step toward creating my own game engine framework built directly on DX11 and the Win32 API.\n\n## Wait, what?\n\nThe Poo Game comes from one of Planet Chili's YouTube C++ Tutorial series. If you peek under the hood, you'll find the game is built using modern C++20 features and the Chili Framework. The Chili Framework is built on DirectX 11 and uses the Win32 API for window management.\n\nWhile not the most tasteful game, it was a good first experiment before I go ahead and create a similar framework on my own.\n\n## Game Architecture\n\nThe core game loop runs inside `Game::Go` which is called each tick inside our `WinMain` function. All of the game logic is located and managed inside the `Game` class, acting as both Model and Controller. Clients of the Chili Framework are largely expected to contain their game logic to this class for building simple games. For this game, each game object implements the [Update Method](http://gameprogrammingpatterns.com/update-method.html) design pattern, and takes care of drawing itself to the window with the framework's `Graphics` context. All graphics you see in the game were provided with the framework, including the code to draw them to the window.\n\n## Requirements\n\n- Visual Studio 2022\n- C++20\n- Win7+\n- A graphics card that supports DX11\n\n## How to Build \u0026 Run\n\nYou can build the solution using either Visual Studio or from the command line with MSBuild.\n\n### Visual Studio\n\nBuilding the solution should work as expected. Wait for the solution to load and press the big ol' play button (or ctrl-F5 if you are lazy like me).\n\n### MSBuild from the Developer Command Prompt\n\nYou can build the solution with MSBuild from a Developer Command Prompt, or from Powershell if you have the standalone Build Tools for VS 2022 installed and don't want to launch Visual Studio.\n\nRun MSBuild.exe in the root of the project (automatically builds the `.sln` file in the current dir) and then launch the game with `\u0026 '.\\x64\\Debug\\The Poo Game.exe'`.\n\n## How to Play\n\n:smile: Use the arrow keys to move your little Dude around the screen.\n\n:red_circle: Reach the goals to score points.\n\n:poop: Avoid the poop.\n\n\u003cimg src=\"poogame.gif\" alt=\"The Poo Game\" height=\"300\" /\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftessapower%2Fpoo-game","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftessapower%2Fpoo-game","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftessapower%2Fpoo-game/lists"}