diff --git a/firstperson.cpp b/firstperson.cpp index 0fef513..d01ec03 100644 --- a/firstperson.cpp +++ b/firstperson.cpp @@ -10,6 +10,8 @@ static bool init = false; static unsigned int width; static unsigned int height; +static sf::Image image; + int firstperson_init(unsigned int _width, unsigned int _height) { printf("firstperson_init()\n"); @@ -17,6 +19,9 @@ int firstperson_init(unsigned int _width, unsigned int _height) width = _width; height = _height; init = true; + + if (!image.loadFromFile("xd.bmp")) return 0; + return 1; } @@ -70,11 +75,17 @@ void firstperson_update(sf::RenderTarget* renderTarget, Camera* camera) renderTexture.draw(rectangle); } + sf::Texture imageTexture; + sf::Sprite imageSprite; + imageTexture.loadFromImage(image); + imageSprite.setTexture(imageTexture); + renderTexture.draw(imageSprite); + renderTexture.display(); sf::Sprite sprite(renderTexture.getTexture()); sprite.setPosition(renderTexturePosition); - renderTarget->draw(sprite); + renderTarget->draw(sprite); } void firstperson_setTexturePosition(float x, float y) diff --git a/level.cpp b/level.cpp index e0f1c45..338be90 100644 --- a/level.cpp +++ b/level.cpp @@ -130,6 +130,7 @@ static float castRay(sf::Vector2f point, float direction, TileData* tileData) if (gridValue) { tileData->value = gridValue; tileData->side = goingDown? NORTH : SOUTH; + tileData->horizontalUV = 0.f; return horizontalRayDist; } @@ -143,6 +144,7 @@ static float castRay(sf::Vector2f point, float direction, TileData* tileData) if (gridValue) { tileData->value = gridValue; tileData->side = goingRight? WEST : EAST; + tileData->horizontalUV = 0.f; return verticalRayDist; } diff --git a/level.h b/level.h index 8e2ec8c..09c1745 100644 --- a/level.h +++ b/level.h @@ -15,6 +15,7 @@ typedef struct { unsigned int value; level_tileSide side; + float horizontalUV; } TileData; int level_init(); diff --git a/xd.bmp b/xd.bmp new file mode 100644 index 0000000..f7cf171 Binary files /dev/null and b/xd.bmp differ