src/libGLESv2/DynamicHLSL.cpp


Log

Author Commit Date CI Message
Jamie Madill a53ab517 2014-03-17T09:47:44 Fix linking of struct varyings. The dEQP varying struct linkage tests were triggering asserts when we tried to query component info of struct types. BUG=angle:580 Change-Id: I61e33573c5577a327c58fec7a07ae7718690ac42 Reviewed-on: https://chromium-review.googlesource.com/189194 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 3b7e205c 2014-03-17T09:47:43 Fix matrix input attributes and formats. We can't assume we have a simple mapping between input attribs and shader attribs. The app specifies matrix input attribs as several vector inputs, while the shader uses a single matrix type. BUG=angle:576 Change-Id: I4e3cdde4a14a5f06b86052dfe0325113cbe8e599 Reviewed-on: https://chromium-review.googlesource.com/189193 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 8664b063 2014-02-14T16:41:29 Add logic for dynamic converstion of int to float vertex data. We can use the format tables and input layout to determine when we need to generate conversion code in the vertex shader. BUG=angle:560 Change-Id: Ib64fb16823bf78ed6432fba283b0d24bcb673a76 Reviewed-on: https://chromium-review.googlesource.com/185195 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill c5ede1a7 2014-02-14T16:41:27 Add logic for inserting vertex conversion code in HLSL. The patch refactors the vertex input HLSL to allow for dynamic conversion in the future. Using a placehold keyword, the code replaces that stub with the vertex input conversion logic. BUG=angle:560 Change-Id: I100c50cb4decd45b0f0c10d7c2c22583368b773e Reviewed-on: https://chromium-review.googlesource.com/185194 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 5f562735 2014-02-14T16:41:24 Moved all HLSL-related code from ProgramBinary to DynamicHLSL. DynamicHLSL encapsulates all HLSL generation we need outside the the shader translator, such as for linking between input and output stages and point sprite geometry shaders. BUG=angle:560 Change-Id: Ib5079aa102000a7c37b166bcbe26b09cc82f8932 Reviewed-on: https://chromium-review.googlesource.com/185191 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>