/******************************************************************************************* * * raylib [textures] example - Image loading and texture creation * * NOTE: Images are loaded in CPU memory (RAM); textures are loaded in GPU memory (VRAM) * * This example has been created using raylib-physfs 0.0.2 (https://github.com/RobLoach/raylib-physfs) * raylib-physfs is licensed under an unmodified zlib/libpng license (View raylib-physfs.h for details) * * Copyright (c) 2021 Rob Loach (@RobLoach) * ********************************************************************************************/ #include "raylib.h" #define RAYLIB_PHYSFS_IMPLEMENTATION #include "raylib-physfs.h" int main(void) { // Initialization //-------------------------------------------------------------------------------------- const int screenWidth = 800; const int screenHeight = 450; InitWindow(screenWidth, screenHeight, "raylib [textures] example - image loading"); // Initialize the file system, and mount a directory. InitPhysFS(); MountPhysFS("resources/resources.zip", "res"); // Load the image directly into a texture through PhysFS. Texture2D texture = LoadTextureFromPhysFS("res/raylib_logo.png"); //--------------------------------------------------------------------------------------- // Main game loop while (!WindowShouldClose()) // Detect window close button or ESC key { // Update //---------------------------------------------------------------------------------- // TODO: Update your variables here //---------------------------------------------------------------------------------- // Draw //---------------------------------------------------------------------------------- BeginDrawing(); ClearBackground(RAYWHITE); DrawTexture(texture, screenWidth/2 - texture.width/2, screenHeight/2 - texture.height/2, WHITE); DrawText("this IS a texture loaded from a .zip file!", 300, 370, 10, GRAY); EndDrawing(); //---------------------------------------------------------------------------------- } // De-Initialization //-------------------------------------------------------------------------------------- UnloadTexture(texture); // Texture unloading ClosePhysFS(); CloseWindow(); // Close window and OpenGL context //-------------------------------------------------------------------------------------- return 0; }