{"id":13524047,"url":"https://github.com/groverburger/g3d","last_synced_at":"2025-04-04T15:10:25.692Z","repository":{"id":38791335,"uuid":"172617852","full_name":"groverburger/g3d","owner":"groverburger","description":"Simple and easy 3D engine for LÖVE.","archived":false,"fork":false,"pushed_at":"2024-03-09T12:41:42.000Z","size":19814,"stargazers_count":610,"open_issues_count":3,"forks_count":39,"subscribers_count":29,"default_branch":"master","last_synced_at":"2025-03-28T14:08:24.371Z","etag":null,"topics":["g3d","love2d","lua","simple"],"latest_commit_sha":null,"homepage":"","language":"Lua","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/groverburger.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","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},"funding":{"custom":["https://www.paypal.me/groverburger"]}},"created_at":"2019-02-26T01:55:18.000Z","updated_at":"2025-03-27T13:05:51.000Z","dependencies_parsed_at":"2024-09-20T10:30:54.682Z","dependency_job_id":"f9b4060a-d896-4e31-a3d4-758e92cb5de8","html_url":"https://github.com/groverburger/g3d","commit_stats":{"total_commits":118,"total_committers":5,"mean_commits":23.6,"dds":0.288135593220339,"last_synced_commit":"0688e6bfcb835aecfda138747310709ce7393798"},"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/groverburger%2Fg3d","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/groverburger%2Fg3d/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/groverburger%2Fg3d/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/groverburger%2Fg3d/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/groverburger","download_url":"https://codeload.github.com/groverburger/g3d/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247198463,"owners_count":20900080,"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":["g3d","love2d","lua","simple"],"created_at":"2024-08-01T06:01:06.468Z","updated_at":"2025-04-04T15:10:25.675Z","avatar_url":"https://github.com/groverburger.png","language":"Lua","funding_links":["https://www.paypal.me/groverburger"],"categories":["Lua","3D"],"sub_categories":[],"readme":"![g3d_logo](https://user-images.githubusercontent.com/19754251/91235387-502bb980-e6ea-11ea-9d12-74f762f69859.png)\n\ngroverburger's 3D engine (g3d) simplifies [LÖVE](http://love2d.org)'s 3d capabilities to be as simple to use as possible.\u003cbr/\u003e\nView the original forum post [here](https://love2d.org/forums/viewtopic.php?f=5\u0026t=86350).\n\n![pic1](demo.gif)\n\nThe entire `main.lua` file for the Earth and Moon demo is under 30 lines, as shown here:\n```lua\n-- written by groverbuger for g3d\n-- may 2021\n-- MIT license\n\nlocal g3d = require \"g3d\"\nlocal earth = g3d.newModel(\"assets/sphere.obj\", \"assets/earth.png\", {0,0,4})\nlocal moon = g3d.newModel(\"assets/sphere.obj\", \"assets/moon.png\", {5,0,4}, nil, {0.5,0.5,0.5})\nlocal background = g3d.newModel(\"assets/sphere.obj\", \"assets/starfield.png\", {0,0,0}, nil, {500,500,500})\nlocal timer = 0\n\nfunction love.mousemoved(x,y, dx,dy)\n    g3d.camera.firstPersonLook(dx,dy)\nend\n\nfunction love.update(dt)\n    timer = timer + dt\n    moon:setTranslation(math.cos(timer)*5, 0, math.sin(timer)*5 +4)\n    moon:setRotation(0, math.pi - timer, 0)\n    g3d.camera.firstPersonMovement(dt)\n    if love.keyboard.isDown(\"escape\") then love.event.push(\"quit\") end\nend\n\nfunction love.draw()\n    earth:draw()\n    moon:draw()\n    background:draw()\nend\n```\n\n## Features\n\n- 3D Model rendering\n- .obj file loading\n- Basic first person movement and camera controls\n- Perspective and orthographic projections\n- Easily create your own custom vertex and fragment shaders\n- Basic collision functions\n- Simple, commented, and organized\n- Fully documented, check out the [g3d wiki](https://github.com/groverburger/g3d/wiki)!\n\n## Getting Started\n\n1. Download the latest release version.\n2. Add the `g3d` subfolder folder to your project.\n3. Add `g3d = require \"g3d\"` to the top of your `main.lua` file.\n\nFor more information, check out the [g3d wiki](https://github.com/groverburger/g3d/wiki)!\n\n## Games and demos made with g3d\n\n[Hoarder's Horrible House of Stuff](https://alesan99.itch.io/hoarders-horrible-house-of-stuff) by alesan99\u003cbr/\u003e\n![Hoarder's Gif](https://img.itch.zone/aW1hZ2UvODY2NDc3LzQ4NjYzMDcuZ2lm/original/byZGOE.gif)\n\n[Lead Haul](https://hydrogen-maniac.itch.io/lead-haul) by YouDoYouBuddy\u003cbr/\u003e\n![image](https://user-images.githubusercontent.com/19754251/134966103-014a1f67-c79f-4bf6-bece-5764d6c22ee5.png)\n\n[First Person Test](https://github.com/groverburger/g3d_fps) by groverburger\u003cbr/\u003e\n![First Person Test Gif](https://user-images.githubusercontent.com/19754251/108477667-6012f900-7248-11eb-97e9-8fbc03a09a99.gif)\n\n[g3d voxel engine](https://github.com/groverburger/g3d_voxel) by groverburger\u003cbr /\u003e\n![g3d_voxel3](https://user-images.githubusercontent.com/19754251/146161518-7e94510f-5683-4a3c-aaa2-c39d4d23f0bd.png)\n\n## Additional Help and FAQ \n\nCheck out the [g3d wiki](https://github.com/groverburger/g3d/wiki)!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgroverburger%2Fg3d","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgroverburger%2Fg3d","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgroverburger%2Fg3d/lists"}