{"id":13730443,"url":"https://github.com/Archie3d/juce_bgfx","last_synced_at":"2025-05-08T03:30:39.707Z","repository":{"id":99019418,"uuid":"468443232","full_name":"Archie3d/juce_bgfx","owner":"Archie3d","description":"Using bfgx with JUCE","archived":false,"fork":false,"pushed_at":"2022-03-10T19:06:28.000Z","size":595,"stargazers_count":19,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-08-04T02:09:34.851Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"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/Archie3d.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2022-03-10T17:22:23.000Z","updated_at":"2024-07-15T05:57:32.000Z","dependencies_parsed_at":"2024-01-06T13:08:31.770Z","dependency_job_id":"1a54a75d-5aa6-43e6-b21e-8e3d8bf0e155","html_url":"https://github.com/Archie3d/juce_bgfx","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/Archie3d%2Fjuce_bgfx","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Archie3d%2Fjuce_bgfx/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Archie3d%2Fjuce_bgfx/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Archie3d%2Fjuce_bgfx/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Archie3d","download_url":"https://codeload.github.com/Archie3d/juce_bgfx/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224695506,"owners_count":17354422,"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":[],"created_at":"2024-08-03T02:01:14.947Z","updated_at":"2024-11-14T21:30:59.754Z","avatar_url":"https://github.com/Archie3d.png","language":"C","funding_links":[],"categories":["Graphics \u0026 Video"],"sub_categories":[],"readme":"# Using bgfx \u0026 nanovg with JUCE\n\nThis code demonstrates how to use [bgfx](https://github.com/bkaradzic/bgfx) rendering from within a [JUCE](https://github.com/juce-framework/JUCE) application. Additionally an alternative rendering of JUCE components is implemented via [nanovg](https://github.com/memononen/nanovg) (over bgfx).\n\n\u003e By default bgfx will be using Direct3D on Windows and Metal on MacOS.\n\n## Implementation notes\n\n- On MacOS interaction between JUCE UI and bgfx is possible only on the main thread. Because of this bgfx multithreading must be disabled via `BGFX_CONFIG_MULTITHREADED=0`.\n\n- Nanovg rendering is done via custom `juce::LowLevelGraphicsContext` that forwards drawing calls to nanovg. Unfortunately not all call from the JUCE graphics can be mapped directly to nanovg, but custom paint can be done by accessing the `NVGcontext` directly.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FArchie3d%2Fjuce_bgfx","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FArchie3d%2Fjuce_bgfx","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FArchie3d%2Fjuce_bgfx/lists"}