{"id":15387009,"url":"https://github.com/gkjohnson/unity-wireframe-shader","last_synced_at":"2025-11-13T22:54:19.542Z","repository":{"id":46994170,"uuid":"98612793","full_name":"gkjohnson/unity-wireframe-shader","owner":"gkjohnson","description":"Unity wireframe material using Geometry Shaders","archived":false,"fork":false,"pushed_at":"2021-09-18T12:07:30.000Z","size":428,"stargazers_count":33,"open_issues_count":4,"forks_count":7,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-15T19:49:17.384Z","etag":null,"topics":["3d","geometry","geometry-shader","graphics","rendering","shaders","unity","unity3d","wireframe"],"latest_commit_sha":null,"homepage":"http://games.ucla.edu/resource/unity-wireframe-shader/","language":"HLSL","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/gkjohnson.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}},"created_at":"2017-07-28T05:44:03.000Z","updated_at":"2025-02-25T08:20:56.000Z","dependencies_parsed_at":"2022-09-24T20:10:32.929Z","dependency_job_id":null,"html_url":"https://github.com/gkjohnson/unity-wireframe-shader","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/gkjohnson/unity-wireframe-shader","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gkjohnson%2Funity-wireframe-shader","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gkjohnson%2Funity-wireframe-shader/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gkjohnson%2Funity-wireframe-shader/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gkjohnson%2Funity-wireframe-shader/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gkjohnson","download_url":"https://codeload.github.com/gkjohnson/unity-wireframe-shader/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gkjohnson%2Funity-wireframe-shader/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":284304462,"owners_count":26982161,"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","status":"online","status_checked_at":"2025-11-13T02:00:06.582Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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","geometry","geometry-shader","graphics","rendering","shaders","unity","unity3d","wireframe"],"created_at":"2024-10-01T14:51:21.449Z","updated_at":"2025-11-13T22:54:19.526Z","avatar_url":"https://github.com/gkjohnson.png","language":"HLSL","funding_links":[],"categories":[],"sub_categories":[],"readme":"# unity-wireframe-shader\n![example](/docs/example.png)\n\nUnity wireframe material using Geometry Shaders built for the [UCLA Game Lab](http://games.ucla.edu/resource/unity-wireframe-shader/) and [Unity Asset Store](https://assetstore.unity.com/packages/vfx/shaders/directx-11/ucla-wireframe-shader-21897) in 2013.\n\nBased on work from [this paper](http://cgg-journal.com/2008-2/06/index.html) (which is no longer available -- a web-archive version is available [here](http://web.archive.org/web/20130322011415/http://cgg-journal.com/2008-2/06/index.html))\n\n## Use\nRenders a line along every edge between every vertex. Requires Geometry Shaders, so this only works on DX11.\n\nOnly renders wireframe. Two passes can be rendered to render wireframe on top of another solid material or shader can be easily modified to render both in the same pass.\n\n### Requirements\n\nThis material uses the geometry shader, which is only available with DirectX in Unity.\n\n## Wireframe Options\n#### Thickness\nHow thick the wireframe line is.\n\n#### Line Firmness\nHow firm the edges of the wireframe line are when rendering _without_ cutout enabled.\n\n#### Cutout\nWhether or not to discard pixels outside the wireframe, creating a harder and aliased edge, but can draw to depth in a single pass.\n\n#### Screenspace Thickness\nWhether or not the wireframe line should be a consistent thickness in screenspace while the camera moves.\n\n#### Double Sided\nWhether or not to draw the back faces with wireframe or not\n\n## Extending and Reuse\n\nThe functions used to generate the wireframe are available in the [UCLA GameLab Wireframe Functions.cginc](Assets/Wireframe/UCLA%20GameLab%20Wireframe%20Functions.cginc) so they can easily be added to and used with other shaders and functions.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgkjohnson%2Funity-wireframe-shader","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgkjohnson%2Funity-wireframe-shader","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgkjohnson%2Funity-wireframe-shader/lists"}