diff options
author | Yann Herklotz <ymherklotz@gmail.com> | 2017-12-22 19:57:23 +0000 |
---|---|---|
committer | Yann Herklotz <ymherklotz@gmail.com> | 2017-12-22 19:57:23 +0000 |
commit | d6b25272499352383214c738faa8ce1870df37f3 (patch) | |
tree | b5934eb304e80716a090b6bc2844598569211e64 /examples | |
parent | 24253190c92c9d7ef669061670a3b7596f9ee190 (diff) | |
download | YAGE-d6b25272499352383214c738faa8ce1870df37f3.tar.gz YAGE-d6b25272499352383214c738faa8ce1870df37f3.zip |
Changing gitmodules
Diffstat (limited to 'examples')
-rw-r--r-- | examples/simplegame/main.cpp | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/examples/simplegame/main.cpp b/examples/simplegame/main.cpp new file mode 100644 index 00000000..04d63ec0 --- /dev/null +++ b/examples/simplegame/main.cpp @@ -0,0 +1,56 @@ +/** --------------------------------------------------------------------------- + * @file: simplegame.cpp + * + * Copyright (c) 2017 Yann Herklotz Grave <ymherklotz@gmail.com> + * MIT License, see LICENSE file for more details. + * ---------------------------------------------------------------------------- + */ + +#include <yage.cpp> + +#include <iostream> + +using std::cout; + +using namespace yage; + +int main() +{ + Window window; + GlslProgram program; + + window.create("Simple Game", 800, 640); + SpriteBatch sp; + + program.compileShadersFromFile("resources/textureshader.vert", "resources/textureshader.frag"); + program.linkShaders(); + + Texture fountain = + ResourceManager::getTexture("/home/yannherklotz/Github/YAGE/tests/" + "resources/dngn_blood_fountain.png"); + + cout << "texture: " << fountain.width << ", " << fountain.height << '\n'; + + Camera2D camera(800, 640); + + while (!window.shouldClose()) { + window.clearBuffer(); + + program.use(); + camera.update(program); + + glActiveTexture(GL_TEXTURE0); + + GLint texture_location = program.getUniformLocation("texture_sampler"); + glUniform1i(texture_location, 0); + + sp.draw({0.f, 0.f, 64.f, 64.f}, {0, 0, 1, 1}, fountain.id, Colour(255, 0, 255, 255), 0); + sp.render(); + + glBindTexture(GL_TEXTURE_2D, 0); + program.unuse(); + + window.swapBuffer(); + window.pollEvents(); + } +} |