{"action":"created","issue":{"url":"https://api.github.com/repos/AnalyticalGraphicsInc/cesium/issues/2993","labels_url":"https://api.github.com/repos/AnalyticalGraphicsInc/cesium/issues/2993/labels{/name}","comments_url":"https://api.github.com/repos/AnalyticalGraphicsInc/cesium/issues/2993/comments","events_url":"https://api.github.com/repos/AnalyticalGraphicsInc/cesium/issues/2993/events","html_url":"https://github.com/AnalyticalGraphicsInc/cesium/pull/2993","id":104369739,"number":2993,"title":"Added compute pass","user":{"login":"lilleyse","id":915398,"avatar_url":"https://avatars.githubusercontent.com/u/915398?v=3","gravatar_id":"","url":"https://api.github.com/users/lilleyse","html_url":"https://github.com/lilleyse","followers_url":"https://api.github.com/users/lilleyse/followers","following_url":"https://api.github.com/users/lilleyse/following{/other_user}","gists_url":"https://api.github.com/users/lilleyse/gists{/gist_id}","starred_url":"https://api.github.com/users/lilleyse/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lilleyse/subscriptions","organizations_url":"https://api.github.com/users/lilleyse/orgs","repos_url":"https://api.github.com/users/lilleyse/repos","events_url":"https://api.github.com/users/lilleyse/events{/privacy}","received_events_url":"https://api.github.com/users/lilleyse/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":7,"created_at":"2015-09-01T22:49:28Z","updated_at":"2015-09-04T12:48:18Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/AnalyticalGraphicsInc/cesium/pulls/2993","html_url":"https://github.com/AnalyticalGraphicsInc/cesium/pull/2993","diff_url":"https://github.com/AnalyticalGraphicsInc/cesium/pull/2993.diff","patch_url":"https://github.com/AnalyticalGraphicsInc/cesium/pull/2993.patch"},"body":"For #751 \r\n\r\nStill a work in progress.\r\n\r\nSome thoughts:\r\n* I decided to allow the `ComputeCommand` to accept a custom vao instead of supporting subdivisions. Having a custom vao, especially the one in ImageryLayer, seems like a special case, and it might be annoying to generalize that.\r\n* I pass in a `Texture` object instead of creating it fresh inside `ComputeEngine`. The object that called the compute command will need that texture back anyway.\r\n* I create and destroy FBO's for every compute command, I think there should be a more efficient solution.\r\n* Sun and ImageryLayers are both special cases, and don't act like primitives. So the code that actually handles`ComputeCommand` in `Scene` isn't doing anything right now.\r\n* `ComputeEngine` is inside `Context` but maybe should go in `Scene` instead. I did this for now because ImageryLayer only has a reference to the context.\r\n"},"comment":{"url":"https://api.github.com/repos/AnalyticalGraphicsInc/cesium/issues/comments/137727387","html_url":"https://github.com/AnalyticalGraphicsInc/cesium/pull/2993#issuecomment-137727387","issue_url":"https://api.github.com/repos/AnalyticalGraphicsInc/cesium/issues/2993","id":137727387,"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},"created_at":"2015-09-04T12:48:18Z","updated_at":"2015-09-04T12:48:18Z","body":"Looks good.  What all is missing?  Just unit tests for `ComputeCommand`?  Recall, we discussed creating a mock `ComputeCommand` that sets one texel in a texture, and then verify the texel color in a second draw (perhaps use `ViewportQuadPrimitive`)."}}