{"id":13441401,"url":"https://github.com/flipcoder/qor","last_synced_at":"2025-03-20T12:30:29.916Z","repository":{"id":12621651,"uuid":"15292870","full_name":"flipcoder/qor","owner":"flipcoder","description":"3D OpenGL Game Engine (C++ w/ Python scripting)","archived":false,"fork":false,"pushed_at":"2021-05-19T02:52:22.000Z","size":1877,"stargazers_count":80,"open_issues_count":0,"forks_count":16,"subscribers_count":13,"default_branch":"master","last_synced_at":"2024-08-01T03:34:13.833Z","etag":null,"topics":["3d-engine","c-plus-plus","cpp","cpp11","cross-platform","game-development","game-engine","game-engine-3d","linux","opengl","python","python-script","qor","qorengine","raknet","sdl"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flipcoder.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-12-18T19:59:01.000Z","updated_at":"2024-07-18T21:37:15.000Z","dependencies_parsed_at":"2022-07-15T18:00:31.465Z","dependency_job_id":null,"html_url":"https://github.com/flipcoder/qor","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flipcoder%2Fqor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flipcoder%2Fqor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flipcoder%2Fqor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flipcoder%2Fqor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flipcoder","download_url":"https://codeload.github.com/flipcoder/qor/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":221759970,"owners_count":16876326,"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","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":["3d-engine","c-plus-plus","cpp","cpp11","cross-platform","game-development","game-engine","game-engine-3d","linux","opengl","python","python-script","qor","qorengine","raknet","sdl"],"created_at":"2024-07-31T03:01:33.494Z","updated_at":"2024-10-28T01:30:49.947Z","avatar_url":"https://github.com/flipcoder.png","language":"C++","readme":"![Qor](https://raw.githubusercontent.com/flipcoder/qor/master/qor.png)\n\n2D/3D OpenGL Game Engine (C++11 w/ Python scripting)\n\n*Featured on the [Official GitHub Blog](https://github.com/blog/2292-game-off-iv-highlights)!*\n\nCopyright (c) 2007-2018 Grady O'Connell\n\nOpen-source under MIT License. See LICENSE file for more information.\n\nSee CREDITS.md for a list of contributers.\n\nThis is a rewrite of my [older game engine](https://github.com/flipcoder/qor-old), with code dating back to 2007.\n\n- [Project Board](https://trello.com/b/0uh8zbxa/qor)\n- [Documentation](https://github.com/flipcoder/qor/blob/master/QorBook.md)\n- Projects and Examples:\n    - [FRAG.EXE (First person shooter)](https://github.com/flipcoder/FRAG.EXE)\n    - [Micro Army (2d platformer)](https://github.com/flipcoder/microarmy)\n    - [Qorpse (2D shooter)](https://github.com/flipcoder/qorpse)\n    - [Skyroads-inspired racer](https://github.com/flipcoder/bouncingship)\n    - [C++ Usage Example](https://github.com/flipcoder/qor/blob/master/src/DemoState.cpp)\n    - [Python Usage Example](https://github.com/flipcoder/qor/blob/master/bin/mods/scriptdemo/__init__.py)\n\n## Features\n\n- Cross-platform (Windows, Linux, and Mac(wip))\n- Multi-threaded (more improvements here soon)\n- OpenGL ES-compatible shader-based pipeline\n    - Forward rendering w/ multipass lighting\n    - Several shaders, including tangent-space bumpmapping\n    - Partitioner/culling support\n    - Automatic VBO baking of visible areas (10x framerate in many cases)\n    - Mesh instance copy-on-write vertex and shader attribute modifications\n    - Basic instancing\n    - Render-to-Texture\n    - Thread-safe OpenGL task handler\n- C++ and (wip) Python support\n- Multi-layer tilemap system for 2D games\n    - Compatible with [Tiled](http://mapeditor.org) map editor\n- Python Console\n- Shared resource management\n    - Animating Sprites\n    - Resource management and multiple path search\n    - Resource caching\n    - Basic create() function for all types\n    - Json config for more complex resources\n        - Config-based type-resolution and subresources\n    - Composite/nested resource suport\n    - User-defined resources\n- 3D Scene graph\n    - World matrix transform caching\n    - Static mesh baking (collapse to world space and combine)\n    - Tracking/following w/ animation support\n    - Node factory supporting user classes\n    - Node tags\n    - Many 3D model formats supported\n    - Blender scene exporter\n- Reactive Subsystems\n    - Communicate with/between nodes easily by sending/receiving data through named metaobject/json events\n    - Each node has a lightweight state machine with signal support\n    - User-defined events and states\n- State stack\n    - User-defined engine states\n    - Async loading screens\n- Input\n    - Multiple controllers\n    - Bindings specific to player profiles\n    - Button/switch-associated events\n    - Switch history for timer-based events and multiple fast press events\n    - Activation thresholds\n- Animation (code moved to [kit](https://github.com/flipcoder/kit))\n    - Timer-based keyframes\n    - Interpolation/Easing\n    - Callback scheduling\n- Music and 3D Sound\n    - Powered by OpenAL\n    - Wav and Ogg support\n    - Thread-safe\n- [Cairo](http://cairographics.org) 2D primitives w/ Render-To-Texture\n- [Pango](http://pango.org) Font and Text Rendering\n- Headless mode for dedicated servers and unit testing\n\nMore features will be listed as I add them...\n\n## Screenshots\n\n[![Micro Army](https://i.imgur.com/cNIOXHal.jpg)](https://i.imgur.com/cNIOXHa.jpg)\n\n[![FRAG.EXE](https://i.imgur.com/P5Pntbsl.jpg)](https://i.imgur.com/P5Pntbs.jpg)\n\n[![Lights](http://i.imgur.com/XNxLRtKl.jpg)](http://i.imgur.com/XNxLRtK.jpg)\n\n[![Fire](http://i.imgur.com/VPH9ZpCl.png)](http://i.imgur.com/VPH9ZpC.jpg)\n","funding_links":[],"categories":["C++"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflipcoder%2Fqor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fflipcoder%2Fqor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflipcoder%2Fqor/lists"}