work on object system
This commit is contained in:
@@ -29,46 +29,22 @@ class Sandbox : public Archimedes::Module {
|
||||
"layout (location = 0) in vec3 aPos;\n"
|
||||
"uniform mat4 model;\n"
|
||||
"uniform uvec2 res;\n"
|
||||
"uniform vec4 clearColor;\n"
|
||||
"uniform vec4 color;\n"
|
||||
"void main()\n"
|
||||
"{\n"
|
||||
" gl_Position = model * vec4(aPos.x, aPos.y, aPos.z, 1.0);\n"
|
||||
"}\0";
|
||||
|
||||
std::string cubeFS = "#version 330 core\n"
|
||||
"out vec4 FragColor;\n"
|
||||
"uniform mat4 model;\n"
|
||||
"uniform uvec2 res;\n"
|
||||
"uniform vec4 clearColor;\n"
|
||||
"uniform vec4 color;\n"
|
||||
"void main()\n"
|
||||
"{\n"
|
||||
" FragColor = vec4(0.6f, 0.1f, 0.1f, 1.0f);\n"
|
||||
" FragColor = color;\n"
|
||||
"}\n\0";
|
||||
|
||||
std::string gridFS = "#version 330 core\n"
|
||||
"out vec4 FragColor;\n"
|
||||
"uniform mat4 model;\n"
|
||||
"uniform uvec2 res;\n"
|
||||
"uniform vec4 clearColor;\n"
|
||||
"vec2 pos = gl_FragCoord.xy - res / 2.0f;\n"
|
||||
"int gridSpacing = 50;"
|
||||
"void main()\n"
|
||||
"{\n"
|
||||
" switch((int(pos.x)) * (int(pos.y))) {\n"
|
||||
" case 0:\n"
|
||||
" FragColor = vec4(1.0f);\n"
|
||||
" break;\n"
|
||||
" default:\n"
|
||||
" switch((int(pos.x) % gridSpacing) * (int(pos.y) % gridSpacing)) {\n"
|
||||
" case 0:\n"
|
||||
" FragColor = vec4(0.7f, 0.7f, 0.7f, 1.0f);\n"
|
||||
" break;\n"
|
||||
" default:\n"
|
||||
" discard;\n"
|
||||
" break;\n"
|
||||
" }\n"
|
||||
" break;\n"
|
||||
" }\n"
|
||||
"}\n\0";
|
||||
|
||||
Archimedes::Shader cubeShader, gridShader;
|
||||
Archimedes::RenderTarget cube, grid;
|
||||
|
||||
Reference in New Issue
Block a user