{"id":14990768,"url":"https://github.com/btipling/foundations","last_synced_at":"2026-02-16T07:02:56.863Z","repository":{"id":308977725,"uuid":"809512152","full_name":"btipling/foundations","owner":"btipling","description":"Learning Game Development in zig","archived":false,"fork":false,"pushed_at":"2024-11-11T23:08:43.000Z","size":4235,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-10T04:14:57.280Z","etag":null,"topics":["3d","game-development","game-engine","gamedev","graphics","graphics-programming","opengl","zig","ziglang"],"latest_commit_sha":null,"homepage":"","language":"Zig","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/btipling.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-06-02T22:23:09.000Z","updated_at":"2025-08-07T16:23:23.000Z","dependencies_parsed_at":"2025-08-09T02:52:03.774Z","dependency_job_id":"dda99f92-cd49-4b11-b4d4-d29341831872","html_url":"https://github.com/btipling/foundations","commit_stats":null,"previous_names":["btipling/foundations"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/btipling/foundations","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/btipling%2Ffoundations","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/btipling%2Ffoundations/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/btipling%2Ffoundations/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/btipling%2Ffoundations/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/btipling","download_url":"https://codeload.github.com/btipling/foundations/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/btipling%2Ffoundations/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29502929,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-16T05:57:17.024Z","status":"ssl_error","status_checked_at":"2026-02-16T05:56:49.929Z","response_time":115,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["3d","game-development","game-engine","gamedev","graphics","graphics-programming","opengl","zig","ziglang"],"created_at":"2024-09-24T14:20:47.338Z","updated_at":"2026-02-16T07:02:56.845Z","avatar_url":"https://github.com/btipling.png","language":"Zig","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Foundations\n\n![bg](https://github.com/user-attachments/assets/ed006c20-98ce-453c-ab6c-30930010545d)\n\nThis is an attempt to build a game engine and learn graphics programming in zig. This project is named after Eric Lengyel game engine series [Foundations of Game Engine Development](https://foundationsofgameenginedev.com/) which is pretty cool. This project will be mostly in\nOpenGL but I might attempt a Vulkan triangle or two as well as try other things.\n\nThis will be a mostly from scratch graphical programming engine/project with self-teaching in mind, with my own math, as raw OpenGL as possible, just a few barebones dependencies cimgui, glad, glfw. I may eventually add an obj/glftf and image loader for textures and for audio.  Working my way through my books.\n\nI realized I had too many layers in blockens that blocked understanding and I wanted everything to be mine, so that I could understand everything from the ground up. I'm not using any tutorials, no off the shelf code. It will all be my math, my code all the way down to the shaders.\n\nIf I want to understand or experiment with some new culling mechanism. I can do it in this project without figuring it out in the middle of a game I'm working on.\n\nThese are the books I am going to use to learn are listed below. I will not reproduce any of the content from these books, am just sharing that I'm using them to learn how to do graphics\nprogramming and build a game engine.\n\n* \u003chttps://foundationsofgameenginedev.com/\u003e\n* \u003chttps://www.mathfor3dgameprogramming.com/\u003e\n* \u003chttps://www.gameenginebook.com/\u003e\n* \u003chttps://athena.ecs.csus.edu/~gordonvs/textC2E.html\u003e\n* \u003chttps://athena.ecs.csus.edu/~gordonvs/textC3E.html\u003e\n* \u003chttps://essentialmath.com/book.htm\u003e\n* \u003chttps://www.gamemath.com/\u003e\n\n![Water scene](https://github.com/user-attachments/assets/82faebc6-fa0f-45cb-8e25-c48206955fd5)\n\n![Torus](https://github.com/user-attachments/assets/2ed06912-4b29-423d-b78c-4dcf87fa5812)\n\n![image](https://github.com/user-attachments/assets/ba4256d3-9301-472b-85e7-3fe2db027d0b)\n\n\n![Solar System](https://github.com/user-attachments/assets/34e66724-25fc-43bb-82a0-7180ddd8d8d4)\n\n![Shadows](https://github.com/user-attachments/assets/629025f8-6f5f-4bc9-bb6e-6844005a2130)\n\n## Note\n\nThe textures and models from the book I use in the CGPOC section may be copyrighted and thus they aren't included and won't load.\n\n## Open Source Dependencies\n\nI am grateful for to the open source community for creating tools and libraries that anyone can use for free. This project depends on the following open source projects:\n\n### Glad\n\nThe MIT License (MIT)\nCopyright (c) 2013-2022 David Herberth\n\n### Dear Imgui\n\nThe MIT License (MIT)\nCopyright (c) 2014-2024 Omar Cornut\n\n### cimgui\n\nThe MIT License (MIT)\nCopyright (c) 2015 Stephan Dilly\n\n### GLFW\n\nGLFW 3.5 - \u003cwww.glfw.org\u003e\nA library for OpenGL, window and input\nCopyright (c) 2002-2006 Marcus Geelnard\nCopyright (c) 2006-2018 Camilla Löwy \u003celmindreda@glfw.org\u003e\n\n### STB\n\nMIT License\nCopyright (c) 2017 Sean Barrett\n\n### PNC GLSL\n\nMIT License\nCopyright 2020 Riccardo Scalco\nhttps://github.com/riccardoscalco/glsl-pcg-prng/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbtipling%2Ffoundations","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbtipling%2Ffoundations","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbtipling%2Ffoundations/lists"}