{"action":"created","issue":{"url":"https://api.github.com/repos/mrdoob/three.js/issues/7094","repository_url":"https://api.github.com/repos/mrdoob/three.js","labels_url":"https://api.github.com/repos/mrdoob/three.js/issues/7094/labels{/name}","comments_url":"https://api.github.com/repos/mrdoob/three.js/issues/7094/comments","events_url":"https://api.github.com/repos/mrdoob/three.js/issues/7094/events","html_url":"https://github.com/mrdoob/three.js/issues/7094","id":104616668,"number":7094,"title":"Removal of Tangents code?","user":{"login":"mrdoob","id":97088,"avatar_url":"https://avatars0.githubusercontent.com/u/97088?v=4","gravatar_id":"","url":"https://api.github.com/users/mrdoob","html_url":"https://github.com/mrdoob","followers_url":"https://api.github.com/users/mrdoob/followers","following_url":"https://api.github.com/users/mrdoob/following{/other_user}","gists_url":"https://api.github.com/users/mrdoob/gists{/gist_id}","starred_url":"https://api.github.com/users/mrdoob/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mrdoob/subscriptions","organizations_url":"https://api.github.com/users/mrdoob/orgs","repos_url":"https://api.github.com/users/mrdoob/repos","events_url":"https://api.github.com/users/mrdoob/events{/privacy}","received_events_url":"https://api.github.com/users/mrdoob/received_events","type":"User","site_admin":false},"labels":[{"id":58672,"url":"https://api.github.com/repos/mrdoob/three.js/labels/Feature%20Request","name":"Feature Request","color":"0e8a16","default":false}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":37,"created_at":"2015-09-03T03:53:23Z","updated_at":"2018-03-28T17:31:52Z","closed_at":"2015-09-03T20:28:34Z","author_association":"OWNER","body":"Now that bump/normalmaps are using derivatives I wonder if we need the tangents code (`Geometry.computeTangents` and `BufferGeometry.computeTangents`) any longer.\n\nThese are the only examples that rely on it:\n\n**webgl_materials_normaldisplacementmap**\nUses NormalDisplacementShader.js, which I don't know if we should still maintain\n\n**webgl_materials_bumpmap_skin**\nI think it's not needed on this one, but it's currently broken\n\n**webgl_terrain_dynamic**\neasy to port to derivatives I think\n\nDoes anyone rely on this code? And if so, what's the use case?\n"},"comment":{"url":"https://api.github.com/repos/mrdoob/three.js/issues/comments/376970225","html_url":"https://github.com/mrdoob/three.js/issues/7094#issuecomment-376970225","issue_url":"https://api.github.com/repos/mrdoob/three.js/issues/7094","id":376970225,"user":{"login":"bhouston","id":588541,"avatar_url":"https://avatars3.githubusercontent.com/u/588541?v=4","gravatar_id":"","url":"https://api.github.com/users/bhouston","html_url":"https://github.com/bhouston","followers_url":"https://api.github.com/users/bhouston/followers","following_url":"https://api.github.com/users/bhouston/following{/other_user}","gists_url":"https://api.github.com/users/bhouston/gists{/gist_id}","starred_url":"https://api.github.com/users/bhouston/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bhouston/subscriptions","organizations_url":"https://api.github.com/users/bhouston/orgs","repos_url":"https://api.github.com/users/bhouston/repos","events_url":"https://api.github.com/users/bhouston/events{/privacy}","received_events_url":"https://api.github.com/users/bhouston/received_events","type":"User","site_admin":false},"created_at":"2018-03-28T17:31:52Z","updated_at":"2018-03-28T17:31:52Z","author_association":"CONTRIBUTOR","body":"Let's go with @WestLangley solution but with muls instead of divides, it is mathematically equivalent."}}
{"actor":{"display_login":"bhouston"}}