added semi-infinite background
This commit is contained in:
+22
-2
@@ -30,7 +30,9 @@ int main() {
|
|||||||
camera.zoom = 1.0f;
|
camera.zoom = 1.0f;
|
||||||
|
|
||||||
raylib::Texture logo("./src/assets/playersprite.png");
|
raylib::Texture logo("./src/assets/playersprite.png");
|
||||||
|
Texture2D bg = LoadTexture("./src/assets/Dirt_01.png");
|
||||||
|
// background.height = 1080;
|
||||||
|
// background.width = 1920;
|
||||||
|
|
||||||
while (!window.ShouldClose())
|
while (!window.ShouldClose())
|
||||||
{
|
{
|
||||||
@@ -48,9 +50,27 @@ int main() {
|
|||||||
|
|
||||||
if (IsKeyDown(KEY_Q)) camera.zoom += 0.1f;
|
if (IsKeyDown(KEY_Q)) camera.zoom += 0.1f;
|
||||||
|
|
||||||
logo.Draw(Player.x, Player.y);
|
|
||||||
|
|
||||||
DrawText("Middle", 190, 200, 20, WHITE);
|
DrawText("Middle", 190, 200, 20, WHITE);
|
||||||
|
|
||||||
|
// Infinite Background
|
||||||
|
int bh = bg.height;
|
||||||
|
int bw = bg.width;
|
||||||
|
int offsetX = ((int)camera.target.x % bg.width);
|
||||||
|
int offsetY = ((int)camera.target.y % bg.height);
|
||||||
|
|
||||||
|
for (int i = -1; i <= GetScreenWidth() / bw + 1; i++) {
|
||||||
|
for (int j = -1; j <= GetScreenHeight() / bh + 1; j++) {
|
||||||
|
DrawTexture(
|
||||||
|
bg,
|
||||||
|
-offsetX + i * bw,
|
||||||
|
-offsetY + j * bh,
|
||||||
|
WHITE
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
logo.Draw(Player.x, Player.y);
|
||||||
|
|
||||||
EndMode2D();
|
EndMode2D();
|
||||||
EndDrawing();
|
EndDrawing();
|
||||||
|
|||||||
Reference in New Issue
Block a user