{"id":13730817,"url":"https://github.com/keijiro/AsyncCaptureTest","last_synced_at":"2025-05-08T03:31:54.489Z","repository":{"id":39379923,"uuid":"117222197","full_name":"keijiro/AsyncCaptureTest","owner":"keijiro","description":"Non-blocking screen capture example with asynchronous GPU readback","archived":false,"fork":false,"pushed_at":"2023-04-02T06:04:33.000Z","size":57,"stargazers_count":387,"open_issues_count":0,"forks_count":49,"subscribers_count":19,"default_branch":"master","last_synced_at":"2024-08-04T02:09:49.682Z","etag":null,"topics":["graphics","unity","unity3d"],"latest_commit_sha":null,"homepage":"","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/keijiro.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}},"created_at":"2018-01-12T09:35:02.000Z","updated_at":"2024-07-02T04:51:29.000Z","dependencies_parsed_at":"2022-07-14T03:40:31.092Z","dependency_job_id":"b5c2566c-2818-4996-ae31-f7e172dfecfe","html_url":"https://github.com/keijiro/AsyncCaptureTest","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/keijiro%2FAsyncCaptureTest","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keijiro%2FAsyncCaptureTest/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keijiro%2FAsyncCaptureTest/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keijiro%2FAsyncCaptureTest/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/keijiro","download_url":"https://codeload.github.com/keijiro/AsyncCaptureTest/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224695709,"owners_count":17354462,"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":["graphics","unity","unity3d"],"created_at":"2024-08-03T02:01:19.831Z","updated_at":"2024-11-14T21:31:36.896Z","avatar_url":"https://github.com/keijiro.png","language":"C#","funding_links":[],"categories":["C#"],"sub_categories":[],"readme":"AsyncCaptureTest\n================\n\n![screenshot](https://user-images.githubusercontent.com/343936/131082461-5e9579cb-9aba-48f9-8017-52a2e80e016c.png)\n\nThis Unity sample project shows how to use the [asynchronous GPU readback API]\nto capture render outputs without blocking the main thread.\n\n[asynchronous GPU readback API]:\n    https://docs.unity3d.com/ScriptReference/Rendering.AsyncGPUReadback.html\n\nNote that there is a trade-off between performance and latency. It's only\napplicable when a small amount of latency is acceptable. Screen capture is one\nof the best-fit cases for the feature.\n\nUnity 2023 Update\n-----------------\n\nI updated this project to use the [Awaitable] class introduced in Unity 2023.1.\nNow you can use the GPU readback API with the C# asynchronous programming\nfeatures (async/await).\n\n[Awaitable]:\n  https://docs.unity3d.com/2023.1/Documentation/ScriptReference/Awaitable.html\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkeijiro%2FAsyncCaptureTest","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkeijiro%2FAsyncCaptureTest","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkeijiro%2FAsyncCaptureTest/lists"}