{"action":"created","comment":{"url":"https://api.github.com/repos/KhronosGroup/glTF/pulls/comments/70169920","id":70169920,"diff_hunk":"@@ -0,0 +1,146 @@\n+# FRAUNHOFER_materials_pbr\n+\n+## Contributors\n+\n+* Timo Sturm, Fraunhofer IGD, [@\\_tsturm\\_](https://twitter.com/\\_tsturm\\_)\n+* Miguel Sousa, Fraunhofer IGD, [@mfportela](https://twitter.com/mfportela)\n+* Maik Th&ouml;ner, Fraunhofer IGD, [@mthoener](https://twitter.com/mthoener)\n+* Max Limper, Fraunhofer IGD, [@mlimper_cg](https://twitter.com/mlimper_cg)\n+\n+## Status\n+\n+Draft\n+\n+## Dependencies\n+\n+Written against the glTF 1.0 spec.\n+\n+## Overview\n+\n+The glTF 1.0 allows the definition of materials by instancing `techniques`. A `technique`, as defined in glTF 1.0, is a verbose description of shader parameters combined with actual shader code. Typically, shader code is engine specific and, as such, may not be used across systems which do not share the same rendering pipeline.\n+\n+This extension provides two new `techniques` consisting of a well defined set of parameters which are sufficient for representing a wide range of materials. These techniques are based on widely used material representations for Physically-Based Rendering (PBR) content creation pipelines.\n+\n+\n+\n+## Material models\n+\n+<p style=\"text-align:justify;\">A material model defines a set of parameters used to describe a material. This extension supports two material models commonly used in PBR, namely the specular-glossiness and the metal-roughness models. An implementation of this extension should support both models.</p>\n+\n+### Specular - Glossiness\n+\n+<img src=\"figures/specular_glossiness_2.png\" align=\"middle\" height=\"220\" style=\"display: block; margin: 0 auto; padding: 20px 0 10px 0;\">\n+\n+The specular-glossiness material model is defined by the following properties:\n+* Diffuse:    Reflected diffuse color of the material\n+* Specular:   Specular color of the material\n+* Glossiness: Glossiniess of the material\n+\n+<p style=\"text-align:justify;\">The diffuse value represents the reflected diffuse color of the material. Raw metals have a diffuse value of (0, 0, 0). The specular value defines specular reflectance at normal incidence (F0). The Glossiness value is a factor between 0.0 (rough surface) and 1.0 (perfectly smooth surface) and represents the surface irregularities that cause light diffusion. Figure 1 shows the three components of the specular-glossiness model and the rendered result.</p>\n+\n+The following table lists the allowed types and ranges for the specular-glossiness model:\n+\n+| Property | Type | Range | Default Value | Description |\n+|:------------:|:----:|:-----:|:-:|:-----:|:-----------:|\n+| `diffuseFactor`   | `FLOAT_VEC4` | [0, 1] for all components | [1,1,1,1] | The RGB components of the reflected diffuse color of the material. For raw metals the diffuse color is black (0.0). The fourth component (A) is the `opacity` of the material. |\n+| `specularFactor`  | `FLOAT_VEC3` | [0, 1] for all components | [1,1,1]   | The specular RGB color of the material. |\n+| `glossinessFactor`| `FLOAT`      | [0, 1]                    | 1         | The glossiness of the material surface (0 is glossiness, 1 is full glossiness). |\n+| `diffuseTexture`  | string       | valid texture identifier  |           | Texture with RGB components of the reflected diffuse color of the material. For raw metals the diffuse color is black (0.0). If the fourth component (A) is present, it represents the `opacity` of the material. Otherwise, an `opacity` of 1 is assumed. |\n+| `specularGlossinessTexture` | string       | valid texture identifier  | | RGBA texture, containing the specular color of the material (RGB components) and its glossiness (A component).|\n+\n+The factors (diffuseFactor, specularFactor, glossinessFactor) scale the components given in the respective textures (diffuseTexture, specularGlossinessTexture).\n+If a texture is not given, all respective texture components are assumed to have a value of 1.\n+\n+For example, assume a value of `(1.0, 0.5, 0.5)` is read from an RGB `diffuseTexture`, and assume that `diffuseFactor` would be given as `(0.1, 1.0, 0.1, 1.0)`.\n+Then, the result would be `(1.0 * 0.1, 0.5 * 1.0, 0.5 * 0.1, 1.0 * 1.0) = (0.1, 0.5, 0.05, 1.0)`;\n+\n+\n+<strong>Usage Example:</strong>\n+\n+```javascript\n+\"materials\": {    \n+    \"rough_gold2\": {\n+        \"extensions\": {\n+            \"KHR_materials_pbr\" : {\n+                \"technique\" : \"PBR_specular_glossiness\",\n+                \"values\": {\n+                    \"diffuseFactor\": [ 0.5, 0.5, 0.5, 1 ],\n+                    \"specularFactor\": [ 0.0, 0.0, 0.0 ],\n+                    \"glossinessFactor\": 0.8\n+                }\n+            }\n+        }\n+    }\n+}\n+```\n+\n+### Metal - Roughness\n+\n+<img src=\"figures/metal_roughness_2.png\" align=\"middle\" height=\"220\" style=\"display: block; margin: 0 auto; padding: 20px 0 10px 0;\">\n+\n+The metal-roughness material model is defined by the following properties:\n+* Base Color: The base color of the material\n+* Metallic-ness: A value between 0 and 1, indicating if the material is metallic (1) or not (0)\n+* Roughness: Roughness of the material surface\n+\n+\n+The `base` color has two different interpretations depending on the value of `metallic`, which is defined as `0` for dielectrics and `1` for metals.\n+For `metallic = 1`, `base` is the specific measured reflectance value (F0).\n+For `metallic = 0`, `base` represents the reflected diffuse color of the material.\n+\n+In this model it is not possible to specify a reflectance value for non-metals, where a reflectance value of 4% (0.04) is often used.\n+The `roughness` property is related with the `glossiness` parameter in the specular-glossiness model and is defined as `roughness = 1 - glossiness`. Figure 2 shows the three components of the metal-roughness model and the rendered result.\n+\n+The following table lists the allowed types and ranges for the metal-roughness model:\n+\n+| Property | Type | Range | Default Value | Description |\n+|:------------:|:----:|:-----:|:-:|:-----:|:-----------:|\n+| `baseColorFactor`           | `FLOAT_VEC4` | [0, 1] for all components | [1,1,1,1] | The RGBA components of the base color (RGB) of the material. The fourth component (A) is the `opacity` of the material. |\n+| `metallicFactor`            | `FLOAT`      | [0, 1]                    | 1         | The metallic-ness the material (1 for metals, 0 for non-metals). |\n+| `roughnessFactor`           | `FLOAT`      | [0, 1]                    | 1         |The roughness of the material surface. |\n+| `baseColorTexture`          | string       | valid texture identifier  |           |Texture with the RGBA components of the base color (RGB) of the material. If the fourth component (A) is present, it represents the `opacity` of the material. Otherwise, an `opacity` of 1 is assumed. |\n+| `metallicRoughnessTexture`  | string       | valid texture identifier  |           |Texture with two (or more) components, containing the metallic-ness of the material (first component) and its roughness (second component). |\n+\n+The factors (baseColorFactor, metallicFactor, roughnessFactor) scale the components given in the respective textures (baseColorTexture, metallicRoughnessTexture).\n+If a texture is not given, all respective texture components are assumed to have a value of 1. This is similar to the handling of factors and texture within the specular-glossiness model.\n+\n+\n+<strong>Usage Example:</strong>\n+\n+```javascript\n+\"materials\": {\n+    \"rough_gold\": {\n+        \"extensions\": {\n+            \"KHR_materials_pbr\" : {\n+                \"technique\" : \"PBR_metal_roughness\",\n+                \"values\": {\n+                    \"baseColorFactor\": [ 0.5, 0.5, 0.5, 1 ],\n+                    \"metallicFactor\": 0.0,\n+                    \"roughnessFactor\": 0.2\n+                }\n+            }\n+        }\n+    }\n+}\n+```\n+\n+\n+## glTF Schema\n+\n+\n+* [specular-glossiness](schema/materials_pbr_specular_glossiness.schema.json)\n+* [metal-roughness](schema/materials_pbr_metal_roughness.schema.json)\n+\n+\n+## Appendix\n+\n+An introduction to PBR concepts is provided in the [appendix](Appendix.md).","path":"extensions/Vendor/FRAUNHOFER_materials_pbr/README.md","position":137,"original_position":137,"commit_id":"c9ac6cd27688237ab9c2d7e6fc6a058a88510409","original_commit_id":"c9ac6cd27688237ab9c2d7e6fc6a058a88510409","user":{"login":"pjcozzi","id":782098,"avatar_url":"https://avatars.githubusercontent.com/u/782098?v=3","gravatar_id":"","url":"https://api.github.com/users/pjcozzi","html_url":"https://github.com/pjcozzi","followers_url":"https://api.github.com/users/pjcozzi/followers","following_url":"https://api.github.com/users/pjcozzi/following{/other_user}","gists_url":"https://api.github.com/users/pjcozzi/gists{/gist_id}","starred_url":"https://api.github.com/users/pjcozzi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pjcozzi/subscriptions","organizations_url":"https://api.github.com/users/pjcozzi/orgs","repos_url":"https://api.github.com/users/pjcozzi/repos","events_url":"https://api.github.com/users/pjcozzi/events{/privacy}","received_events_url":"https://api.github.com/users/pjcozzi/received_events","type":"User","site_admin":false},"body":"This is a nice overview; perhaps link to it again in the intro for readers who need an overview of PBR.","created_at":"2016-07-09T17:40:26Z","updated_at":"2016-07-09T17:40:26Z","html_url":"https://github.com/KhronosGroup/glTF/pull/643#discussion_r70169920","pull_request_url":"https://api.github.com/repos/KhronosGroup/glTF/pulls/643","_links":{"self":{"href":"https://api.github.com/repos/KhronosGroup/glTF/pulls/comments/70169920"},"html":{"href":"https://github.com/KhronosGroup/glTF/pull/643#discussion_r70169920"},"pull_request":{"href":"https://api.github.com/repos/KhronosGroup/glTF/pulls/643"}}},"pull_request":{"url":"https://api.github.com/repos/KhronosGroup/glTF/pulls/643","id":76764746,"html_url":"https://github.com/KhronosGroup/glTF/pull/643","diff_url":"https://github.com/KhronosGroup/glTF/pull/643.diff","patch_url":"https://github.com/KhronosGroup/glTF/pull/643.patch","issue_url":"https://api.github.com/repos/KhronosGroup/glTF/issues/643","number":643,"state":"open","locked":false,"title":"[WIP] PBR Materials extension","user":{"login":"mlimper","id":1853237,"avatar_url":"https://avatars.githubusercontent.com/u/1853237?v=3","gravatar_id":"","url":"https://api.github.com/users/mlimper","html_url":"https://github.com/mlimper","followers_url":"https://api.github.com/users/mlimper/followers","following_url":"https://api.github.com/users/mlimper/following{/other_user}","gists_url":"https://api.github.com/users/mlimper/gists{/gist_id}","starred_url":"https://api.github.com/users/mlimper/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mlimper/subscriptions","organizations_url":"https://api.github.com/users/mlimper/orgs","repos_url":"https://api.github.com/users/mlimper/repos","events_url":"https://api.github.com/users/mlimper/events{/privacy}","received_events_url":"https://api.github.com/users/mlimper/received_events","type":"User","site_admin":false},"body":"This is our (currently WIP) PBR material extension - this PR is currently mainly intended to serve as a place for discussion.\r\n\r\nDirect Preview:\r\nhttps://github.com/tsturm/glTF/tree/master/extensions/Vendor/FRAUNHOFER_materials_pbr\r\n","created_at":"2016-07-08T14:50:52Z","updated_at":"2016-07-09T17:40:26Z","closed_at":null,"merged_at":null,"merge_commit_sha":"ad2a299f16b8ebe41cb90dc586d19998000f9b77","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/KhronosGroup/glTF/pulls/643/commits","review_comments_url":"https://api.github.com/repos/KhronosGroup/glTF/pulls/643/comments","review_comment_url":"https://api.github.com/repos/KhronosGroup/glTF/pulls/comments{/number}","comments_url":"https://api.github.com/repos/KhronosGroup/glTF/issues/643/comments","statuses_url":"https://api.github.com/repos/KhronosGroup/glTF/statuses/c9ac6cd27688237ab9c2d7e6fc6a058a88510409","head":{"label":"tsturm:master","ref":"master","sha":"c9ac6cd27688237ab9c2d7e6fc6a058a88510409","user":{"login":"tsturm","id":864076,"avatar_url":"https://avatars.githubusercontent.com/u/864076?v=3","gravatar_id":"","url":"https://api.github.com/users/tsturm","html_url":"https://github.com/tsturm","followers_url":"https://api.github.com/users/tsturm/followers","following_url":"https://api.github.com/users/tsturm/following{/other_user}","gists_url":"https://api.github.com/users/tsturm/gists{/gist_id}","starred_url":"https://api.github.com/users/tsturm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tsturm/subscriptions","organizations_url":"https://api.github.com/users/tsturm/orgs","repos_url":"https://api.github.com/users/tsturm/repos","events_url":"https://api.github.com/users/tsturm/events{/privacy}","received_events_url":"https://api.github.com/users/tsturm/received_events","type":"User","site_admin":false},"repo":{"id":59991379,"name":"glTF","full_name":"tsturm/glTF","owner":{"login":"tsturm","id":864076,"avatar_url":"https://avatars.githubusercontent.com/u/864076?v=3","gravatar_id":"","url":"https://api.github.com/users/tsturm","html_url":"https://github.com/tsturm","followers_url":"https://api.github.com/users/tsturm/followers","following_url":"https://api.github.com/users/tsturm/following{/other_user}","gists_url":"https://api.github.com/users/tsturm/gists{/gist_id}","starred_url":"https://api.github.com/users/tsturm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tsturm/subscriptions","organizations_url":"https://api.github.com/users/tsturm/orgs","repos_url":"https://api.github.com/users/tsturm/repos","events_url":"https://api.github.com/users/tsturm/events{/privacy}","received_events_url":"https://api.github.com/users/tsturm/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/tsturm/glTF","description":"glTF - the runtime asset format for WebGL, OpenGL ES, and OpenGL.","fork":true,"url":"https://api.github.com/repos/tsturm/glTF","forks_url":"https://api.github.com/repos/tsturm/glTF/forks","keys_url":"https://api.github.com/repos/tsturm/glTF/keys{/key_id}","collaborators_url":"https://api.github.com/repos/tsturm/glTF/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/tsturm/glTF/teams","hooks_url":"https://api.github.com/repos/tsturm/glTF/hooks","issue_events_url":"https://api.github.com/repos/tsturm/glTF/issues/events{/number}","events_url":"https://api.github.com/repos/tsturm/glTF/events","assignees_url":"https://api.github.com/repos/tsturm/glTF/assignees{/user}","branches_url":"https://api.github.com/repos/tsturm/glTF/branches{/branch}","tags_url":"https://api.github.com/repos/tsturm/glTF/tags","blobs_url":"https://api.github.com/repos/tsturm/glTF/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/tsturm/glTF/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/tsturm/glTF/git/refs{/sha}","trees_url":"https://api.github.com/repos/tsturm/glTF/git/trees{/sha}","statuses_url":"https://api.github.com/repos/tsturm/glTF/statuses/{sha}","languages_url":"https://api.github.com/repos/tsturm/glTF/languages","stargazers_url":"https://api.github.com/repos/tsturm/glTF/stargazers","contributors_url":"https://api.github.com/repos/tsturm/glTF/contributors","subscribers_url":"https://api.github.com/repos/tsturm/glTF/subscribers","subscription_url":"https://api.github.com/repos/tsturm/glTF/subscription","commits_url":"https://api.github.com/repos/tsturm/glTF/commits{/sha}","git_commits_url":"https://api.github.com/repos/tsturm/glTF/git/commits{/sha}","comments_url":"https://api.github.com/repos/tsturm/glTF/comments{/number}","issue_comment_url":"https://api.github.com/repos/tsturm/glTF/issues/comments{/number}","contents_url":"https://api.github.com/repos/tsturm/glTF/contents/{+path}","compare_url":"https://api.github.com/repos/tsturm/glTF/compare/{base}...{head}","merges_url":"https://api.github.com/repos/tsturm/glTF/merges","archive_url":"https://api.github.com/repos/tsturm/glTF/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/tsturm/glTF/downloads","issues_url":"https://api.github.com/repos/tsturm/glTF/issues{/number}","pulls_url":"https://api.github.com/repos/tsturm/glTF/pulls{/number}","milestones_url":"https://api.github.com/repos/tsturm/glTF/milestones{/number}","notifications_url":"https://api.github.com/repos/tsturm/glTF/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/tsturm/glTF/labels{/name}","releases_url":"https://api.github.com/repos/tsturm/glTF/releases{/id}","deployments_url":"https://api.github.com/repos/tsturm/glTF/deployments","created_at":"2016-05-30T07:55:31Z","updated_at":"2016-07-08T19:04:34Z","pushed_at":"2016-07-08T14:19:22Z","git_url":"git://github.com/tsturm/glTF.git","ssh_url":"git@github.com:tsturm/glTF.git","clone_url":"https://github.com/tsturm/glTF.git","svn_url":"https://github.com/tsturm/glTF","homepage":"","size":143684,"stargazers_count":3,"watchers_count":3,"language":"JavaScript","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":3,"default_branch":"master"}},"base":{"label":"KhronosGroup:master","ref":"master","sha":"3d2ad76f8f028a20304cbceea2eb026eb14819bf","user":{"login":"KhronosGroup","id":1608701,"avatar_url":"https://avatars.githubusercontent.com/u/1608701?v=3","gravatar_id":"","url":"https://api.github.com/users/KhronosGroup","html_url":"https://github.com/KhronosGroup","followers_url":"https://api.github.com/users/KhronosGroup/followers","following_url":"https://api.github.com/users/KhronosGroup/following{/other_user}","gists_url":"https://api.github.com/users/KhronosGroup/gists{/gist_id}","starred_url":"https://api.github.com/users/KhronosGroup/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KhronosGroup/subscriptions","organizations_url":"https://api.github.com/users/KhronosGroup/orgs","repos_url":"https://api.github.com/users/KhronosGroup/repos","events_url":"https://api.github.com/users/KhronosGroup/events{/privacy}","received_events_url":"https://api.github.com/users/KhronosGroup/received_events","type":"Organization","site_admin":false},"repo":{"id":7921466,"name":"glTF","full_name":"KhronosGroup/glTF","owner":{"login":"KhronosGroup","id":1608701,"avatar_url":"https://avatars.githubusercontent.com/u/1608701?v=3","gravatar_id":"","url":"https://api.github.com/users/KhronosGroup","html_url":"https://github.com/KhronosGroup","followers_url":"https://api.github.com/users/KhronosGroup/followers","following_url":"https://api.github.com/users/KhronosGroup/following{/other_user}","gists_url":"https://api.github.com/users/KhronosGroup/gists{/gist_id}","starred_url":"https://api.github.com/users/KhronosGroup/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KhronosGroup/subscriptions","organizations_url":"https://api.github.com/users/KhronosGroup/orgs","repos_url":"https://api.github.com/users/KhronosGroup/repos","events_url":"https://api.github.com/users/KhronosGroup/events{/privacy}","received_events_url":"https://api.github.com/users/KhronosGroup/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/KhronosGroup/glTF","description":"glTF - the runtime asset format for WebGL, OpenGL ES, and OpenGL.","fork":false,"url":"https://api.github.com/repos/KhronosGroup/glTF","forks_url":"https://api.github.com/repos/KhronosGroup/glTF/forks","keys_url":"https://api.github.com/repos/KhronosGroup/glTF/keys{/key_id}","collaborators_url":"https://api.github.com/repos/KhronosGroup/glTF/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/KhronosGroup/glTF/teams","hooks_url":"https://api.github.com/repos/KhronosGroup/glTF/hooks","issue_events_url":"https://api.github.com/repos/KhronosGroup/glTF/issues/events{/number}","events_url":"https://api.github.com/repos/KhronosGroup/glTF/events","assignees_url":"https://api.github.com/repos/KhronosGroup/glTF/assignees{/user}","branches_url":"https://api.github.com/repos/KhronosGroup/glTF/branches{/branch}","tags_url":"https://api.github.com/repos/KhronosGroup/glTF/tags","blobs_url":"https://api.github.com/repos/KhronosGroup/glTF/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/KhronosGroup/glTF/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/KhronosGroup/glTF/git/refs{/sha}","trees_url":"https://api.github.com/repos/KhronosGroup/glTF/git/trees{/sha}","statuses_url":"https://api.github.com/repos/KhronosGroup/glTF/statuses/{sha}","languages_url":"https://api.github.com/repos/KhronosGroup/glTF/languages","stargazers_url":"https://api.github.com/repos/KhronosGroup/glTF/stargazers","contributors_url":"https://api.github.com/repos/KhronosGroup/glTF/contributors","subscribers_url":"https://api.github.com/repos/KhronosGroup/glTF/subscribers","subscription_url":"https://api.github.com/repos/KhronosGroup/glTF/subscription","commits_url":"https://api.github.com/repos/KhronosGroup/glTF/commits{/sha}","git_commits_url":"https://api.github.com/repos/KhronosGroup/glTF/git/commits{/sha}","comments_url":"https://api.github.com/repos/KhronosGroup/glTF/comments{/number}","issue_comment_url":"https://api.github.com/repos/KhronosGroup/glTF/issues/comments{/number}","contents_url":"https://api.github.com/repos/KhronosGroup/glTF/contents/{+path}","compare_url":"https://api.github.com/repos/KhronosGroup/glTF/compare/{base}...{head}","merges_url":"https://api.github.com/repos/KhronosGroup/glTF/merges","archive_url":"https://api.github.com/repos/KhronosGroup/glTF/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/KhronosGroup/glTF/downloads","issues_url":"https://api.github.com/repos/KhronosGroup/glTF/issues{/number}","pulls_url":"https://api.github.com/repos/KhronosGroup/glTF/pulls{/number}","milestones_url":"https://api.github.com/repos/KhronosGroup/glTF/milestones{/number}","notifications_url":"https://api.github.com/repos/KhronosGroup/glTF/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/KhronosGroup/glTF/labels{/name}","releases_url":"https://api.github.com/repos/KhronosGroup/glTF/releases{/id}","deployments_url":"https://api.github.com/repos/KhronosGroup/glTF/deployments","created_at":"2013-01-30T19:01:11Z","updated_at":"2016-07-09T11:25:53Z","pushed_at":"2016-07-09T15:10:10Z","git_url":"git://github.com/KhronosGroup/glTF.git","ssh_url":"git@github.com:KhronosGroup/glTF.git","clone_url":"https://github.com/KhronosGroup/glTF.git","svn_url":"https://github.com/KhronosGroup/glTF","homepage":"","size":155292,"stargazers_count":703,"watchers_count":703,"language":"JavaScript","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":134,"forks":160,"open_issues":134,"watchers":703,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/KhronosGroup/glTF/pulls/643"},"html":{"href":"https://github.com/KhronosGroup/glTF/pull/643"},"issue":{"href":"https://api.github.com/repos/KhronosGroup/glTF/issues/643"},"comments":{"href":"https://api.github.com/repos/KhronosGroup/glTF/issues/643/comments"},"review_comments":{"href":"https://api.github.com/repos/KhronosGroup/glTF/pulls/643/comments"},"review_comment":{"href":"https://api.github.com/repos/KhronosGroup/glTF/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/KhronosGroup/glTF/pulls/643/commits"},"statuses":{"href":"https://api.github.com/repos/KhronosGroup/glTF/statuses/c9ac6cd27688237ab9c2d7e6fc6a058a88510409"}}}}
{"actor":{"display_login":"pjcozzi"}}