OSDN Git Service

Rework setup, VS->FS structures, etc for Vulkan
authorChris Forbes <chrisforbes@google.com>
Sat, 2 Feb 2019 23:23:01 +0000 (15:23 -0800)
committerChris Forbes <chrisforbes@google.com>
Fri, 15 Feb 2019 19:32:32 +0000 (19:32 +0000)
commit26f1a86bd903ca959bdcb0f0f5bdb04984cc3567
tree7d8f628889cc8e8b43313dbaf023f9ded6824082
parentd5aed490104671af833769ae4d1216c4a8f25d8d
Rework setup, VS->FS structures, etc for Vulkan

- Remnants of old fixed function attributes all gone
- Initial support for some builtins to prove the model
- Setup now driven by correct shader state
- VS->FS intermediate structure matches SPIRV model -- builtins are not
in location space; location space itself is flat scalars rather than
vec4-oriented.

There are still some vertex pipe features which are not supported, as
ES3 didn't have them -- proper handling of noperspective, etc.

Change-Id: Ia8e3c72af54c4d1cbcc18482a741daa5e8e7c053
Bug: b/120799499
Reviewed-on: https://swiftshader-review.googlesource.com/c/24376
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Tested-by: Chris Forbes <chrisforbes@google.com>
src/Device/Renderer.cpp
src/Device/SetupProcessor.cpp
src/Device/SetupProcessor.hpp
src/Device/Vertex.hpp
src/Pipeline/SetupRoutine.cpp
src/Pipeline/SetupRoutine.hpp
src/Pipeline/VertexProgram.cpp
src/Pipeline/VertexRoutine.cpp