{"action":"created","issue":{"url":"https://api.github.com/repos/Unity-Technologies/ScriptableRenderPipeline/issues/2514","repository_url":"https://api.github.com/repos/Unity-Technologies/ScriptableRenderPipeline","labels_url":"https://api.github.com/repos/Unity-Technologies/ScriptableRenderPipeline/issues/2514/labels{/name}","comments_url":"https://api.github.com/repos/Unity-Technologies/ScriptableRenderPipeline/issues/2514/comments","events_url":"https://api.github.com/repos/Unity-Technologies/ScriptableRenderPipeline/issues/2514/events","html_url":"https://github.com/Unity-Technologies/ScriptableRenderPipeline/pull/2514","id":385022824,"node_id":"MDExOlB1bGxSZXF1ZXN0MjM0MDg5MTcw","number":2514,"title":"Switch support","user":{"login":"kaychang-unity","id":37455951,"node_id":"MDQ6VXNlcjM3NDU1OTUx","avatar_url":"https://avatars2.githubusercontent.com/u/37455951?v=4","gravatar_id":"","url":"https://api.github.com/users/kaychang-unity","html_url":"https://github.com/kaychang-unity","followers_url":"https://api.github.com/users/kaychang-unity/followers","following_url":"https://api.github.com/users/kaychang-unity/following{/other_user}","gists_url":"https://api.github.com/users/kaychang-unity/gists{/gist_id}","starred_url":"https://api.github.com/users/kaychang-unity/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kaychang-unity/subscriptions","organizations_url":"https://api.github.com/users/kaychang-unity/orgs","repos_url":"https://api.github.com/users/kaychang-unity/repos","events_url":"https://api.github.com/users/kaychang-unity/events{/privacy}","received_events_url":"https://api.github.com/users/kaychang-unity/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":8,"created_at":"2018-11-27T22:51:25Z","updated_at":"2018-11-29T00:50:10Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/Unity-Technologies/ScriptableRenderPipeline/pulls/2514","html_url":"https://github.com/Unity-Technologies/ScriptableRenderPipeline/pull/2514","diff_url":"https://github.com/Unity-Technologies/ScriptableRenderPipeline/pull/2514.diff","patch_url":"https://github.com/Unity-Technologies/ScriptableRenderPipeline/pull/2514.patch"},"body":"### Purpose of this PR\r\nThis PR optimizes ColorPyramid pass for Switch, and possibly other platforms (to be tested).\r\nOn Switch, the compute shader version of the pass runs at 5.0ms on a 720p render-target RGBA16F (undocked mode). The new fragment shader version runs at 1.7ms.\r\n\r\nThe compute shader is also currently broken on Switch, due to the generated GLSL code expecting a RGBA32F texture to be sampled, but given an RGBA16F (incorrect sampling from RWImage2D).\r\n\r\n---\r\n### Release Notes\r\n\r\n---\r\n### Testing status\r\n**Katana Tests**: Katana is likely not setup to run Switch\r\n\r\n**Manual Tests**:\r\nComparing the reference result from the (locally fixed) compute shader with the new fragment shader implementation, the blurred mipmap chain look the same.\r\n\r\n**Automated Tests**: No automated test was run.\r\n\r\n---\r\n### Overall Product Risks\r\n**Technical Risk**: Low\r\nOther platforms that Switch are not touched. Previous implementation is broken on Switch too.\r\n\r\n**Halo Effect**: Low\r\n\r\n---\r\n### Comments to reviewers\r\nThis optimization may benefit other platforms too, I only tested Geforce GTX 1050 on my laptop (it was a 33% win on Vulkan platform).\r\nMore saving are possible and will be committed later:\r\n- render-targets should be R11G11B10, this would move the cost down to 1.35ms.\r\n- copy of the base mipmap should be skipped (cost 0.6ms out of the 1.7ms)\r\n- it may possible to reorganize the sub-passes (downsample, horizonal blur, vertical blur) and remove most of the GPU barriers, possibly saving a further  an additional ~0.2ms. This will however remove accumulation of blur though the mipmap chain, so further discussion is needed.\r\n"},"comment":{"url":"https://api.github.com/repos/Unity-Technologies/ScriptableRenderPipeline/issues/comments/442662978","html_url":"https://github.com/Unity-Technologies/ScriptableRenderPipeline/pull/2514#issuecomment-442662978","issue_url":"https://api.github.com/repos/Unity-Technologies/ScriptableRenderPipeline/issues/2514","id":442662978,"node_id":"MDEyOklzc3VlQ29tbWVudDQ0MjY2Mjk3OA==","user":{"login":"kaychang-unity","id":37455951,"node_id":"MDQ6VXNlcjM3NDU1OTUx","avatar_url":"https://avatars2.githubusercontent.com/u/37455951?v=4","gravatar_id":"","url":"https://api.github.com/users/kaychang-unity","html_url":"https://github.com/kaychang-unity","followers_url":"https://api.github.com/users/kaychang-unity/followers","following_url":"https://api.github.com/users/kaychang-unity/following{/other_user}","gists_url":"https://api.github.com/users/kaychang-unity/gists{/gist_id}","starred_url":"https://api.github.com/users/kaychang-unity/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kaychang-unity/subscriptions","organizations_url":"https://api.github.com/users/kaychang-unity/orgs","repos_url":"https://api.github.com/users/kaychang-unity/repos","events_url":"https://api.github.com/users/kaychang-unity/events{/privacy}","received_events_url":"https://api.github.com/users/kaychang-unity/received_events","type":"User","site_admin":false},"created_at":"2018-11-29T00:50:10Z","updated_at":"2018-11-29T00:50:10Z","author_association":"CONTRIBUTOR","body":"I started running this katana build: https://katana.bf.unity3d.com/projects/com.unity.render-pipelines/builders?ScriptableRenderLoop_branch=switch-support&automation-tools_branch=add-platform-filter&unity_branch=trunk"}}
{"actor":{"display_login":"kaychang-unity"}}