Possibly fixed the swizzling bug
This commit is contained in:
parent
3212becc91
commit
a309ecedc2
1 changed files with 192 additions and 1 deletions
66
examples/textures/textures_test_dds_mipmaps.c
Normal file
66
examples/textures/textures_test_dds_mipmaps.c
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
/*******************************************************************************************
|
||||
*
|
||||
* raylib [textures] example - Test DDS loading with mipmaps
|
||||
*
|
||||
********************************************************************************************/
|
||||
|
||||
#include "raylib.h"
|
||||
|
||||
int main(void)
|
||||
{
|
||||
const int screenWidth = 800;
|
||||
const int screenHeight = 450;
|
||||
|
||||
InitWindow(screenWidth, screenHeight, "raylib [textures] - DDS mipmaps test");
|
||||
|
||||
// Load DDS texture with mipmaps (create one with a distinct color pattern)
|
||||
Texture2D texture = LoadTexture("resources/test_rgba_mipmaps.dds");
|
||||
|
||||
if (texture.id == 0)
|
||||
{
|
||||
TraceLog(LOG_ERROR, "Failed to load DDS texture");
|
||||
}
|
||||
else
|
||||
{
|
||||
TraceLog(LOG_INFO, "DDS texture loaded: %dx%d, mipmaps: %d",
|
||||
texture.width, texture.height, texture.mipmaps);
|
||||
}
|
||||
|
||||
SetTargetFPS(60);
|
||||
|
||||
while (!WindowShouldClose())
|
||||
{
|
||||
BeginDrawing();
|
||||
ClearBackground(RAYWHITE);
|
||||
|
||||
// Draw texture at different scales to see mipmap levels
|
||||
DrawTexturePro(texture,
|
||||
(Rectangle){0, 0, texture.width, texture.height},
|
||||
(Rectangle){50, 50, 256, 256},
|
||||
(Vector2){0, 0}, 0.0f, WHITE);
|
||||
|
||||
DrawTexturePro(texture,
|
||||
(Rectangle){0, 0, texture.width, texture.height},
|
||||
(Rectangle){350, 50, 128, 128},
|
||||
(Vector2){0, 0}, 0.0f, WHITE);
|
||||
|
||||
DrawTexturePro(texture,
|
||||
(Rectangle){0, 0, texture.width, texture.height},
|
||||
(Rectangle){520, 50, 64, 64},
|
||||
(Vector2){0, 0}, 0.0f, WHITE);
|
||||
|
||||
DrawText("256x256", 50, 320, 20, DARKGRAY);
|
||||
DrawText("128x128", 350, 190, 20, DARKGRAY);
|
||||
DrawText("64x64", 520, 125, 20, DARKGRAY);
|
||||
|
||||
DrawText("If colors look wrong (blue/red swapped), mipmaps have swizzling bug",
|
||||
10, 400, 10, RED);
|
||||
|
||||
EndDrawing();
|
||||
}
|
||||
|
||||
UnloadTexture(texture);
|
||||
CloseWindow();
|
||||
|
||||
return 0;
|
||||
}
|
||||
Loading…
Reference in a new issue