diff options
author | dec05eba <dec05eba@protonmail.com> | 2017-12-26 17:29:28 +0100 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2021-11-18 15:21:48 +0100 |
commit | ffe9dac56488ebfc9f5c37c4e400f4f5469a8a46 (patch) | |
tree | 5958b66f16d217e31215d2f6ec56bb341ec06a76 /src/RenderBackend/OpenGL/VertexShader.cpp | |
parent | b5f06b6c4cd07f3073897af32626b9b21a4d2ef8 (diff) |
Add device memory, device frame. Rendering works
Diffstat (limited to 'src/RenderBackend/OpenGL/VertexShader.cpp')
-rw-r--r-- | src/RenderBackend/OpenGL/VertexShader.cpp | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/RenderBackend/OpenGL/VertexShader.cpp b/src/RenderBackend/OpenGL/VertexShader.cpp index 1505ff4..ac9a159 100644 --- a/src/RenderBackend/OpenGL/VertexShader.cpp +++ b/src/RenderBackend/OpenGL/VertexShader.cpp @@ -1,5 +1,4 @@ #include "../../../include/RenderBackend/OpenGL/VertexShader.hpp" -#include "../../../include/RenderBackend/OpenGL/CommonShader.hpp" #include "../../../include/RenderBackend/OpenGL/opengl.hpp" #include "../../../include/RenderBackend/OpenGL/CompiledShader.hpp" @@ -37,10 +36,16 @@ namespace amalgine writeHeader("#version 330 core\n\n"); } - const string& VertexShader::getInputAttributeName(i32 attributeIndex) + const string& VertexShader::getInputAttributeName(i32 attributeIndex) const { assert(attributeIndex < vertexAttributeNames.size()); - return vertexAttributeNames[attributeIndex]; + return vertexAttributeNames[attributeIndex].name; + } + + AttributeType VertexShader::getInputAttributeType(i32 attributeIndex) const + { + assert(attributeIndex < vertexAttributeNames.size()); + return getAttributeTypeByName(vertexAttributeNames[attributeIndex].typeName); } ShaderInputVec2 VertexShader::defineInputVec2(const std::string &name) @@ -75,7 +80,10 @@ namespace amalgine i32 attributeIndex = locationCounter; vertexAttributes[variableName] = locationCounter; - vertexAttributeNames.push_back(variableName); + ShaderAttribute shaderAttribute; + shaderAttribute.name = variableName; + shaderAttribute.typeName = typeName; + vertexAttributeNames.push_back(shaderAttribute); writeHeader("layout(location = "); writeHeader(to_string(locationCounter)); |