From acc975475738cfcc2e35f195171accf40fa31c0e Mon Sep 17 00:00:00 2001 From: Ikey Doherty Date: Sun, 3 Nov 2019 15:36:22 +0000 Subject: [PATCH] sprite: Test how broken this is with a ship image at offsets Signed-off-by: Ikey Doherty --- assets/ship.png | Bin 0 -> 2698 bytes source/app.d | 5 ++++- source/serpent/graphics/renderer/sprite.d | 6 +++--- 3 files changed, 7 insertions(+), 4 deletions(-) create mode 100644 assets/ship.png diff --git a/assets/ship.png b/assets/ship.png new file mode 100644 index 0000000000000000000000000000000000000000..cecbbed97ab05b70d3acf45529935a3f9f974249 GIT binary patch literal 2698 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 Ef&*|u*#H0l literal 0 HcmV?d00001 diff --git a/source/app.d b/source/app.d index cad0f49..03000f2 100644 --- a/source/app.d +++ b/source/app.d @@ -73,17 +73,20 @@ public: /* Create our first player */ p = new Player(); - p.reserve(1); p.add(); + p.setPosition(0, vec3f(20.0f, 20.0f)); /* Create 20 enemies */ e = new Enemy(); e.reserve(20); + auto offset = 10; foreach (i; 0 .. 20) { e.add(); if (i % 2 == 0) e.setFaction(i, Faction.GoodDudes); + e.setPosition(i, vec3f(offset, offset)); + offset += 50; } context.display.scene.addEntity(p); diff --git a/source/serpent/graphics/renderer/sprite.d b/source/serpent/graphics/renderer/sprite.d index 4459820..d11c26f 100644 --- a/source/serpent/graphics/renderer/sprite.d +++ b/source/serpent/graphics/renderer/sprite.d @@ -90,7 +90,7 @@ final class SpriteRenderer : Renderer auto vertex = new Shader(vp); auto fragment = new Shader(fp); shader = new Program(vertex, fragment); - texture = new Texture("titlescreen.png"); + texture = new Texture("assets/ship.png"); } final override void render() @system @@ -124,8 +124,8 @@ private: position.z = 0.0f; position.x = -position.x; - auto width = pipeline.display.width; - auto height = pipeline.display.height; + auto width = 99; + auto height = 75; auto translation = mat4x4f.translation(position); auto scale = mat4x4f.scaling(vec3f(width, height, 1.0f));