summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorIndrajith K L2025-11-05 02:21:56 +0530
committerIndrajith K L2025-11-05 02:21:56 +0530
commit4f34b7aad9abc3aace50140115bd9696441c8231 (patch)
treebb9f0a5c52ceb50aad7f80b4b4f33e43434f38b4 /src
parent10c22d35678f96e722f25a12badca98febb2921e (diff)
downloadreilua-enhanced-4f34b7aad9abc3aace50140115bd9696441c8231.tar.gz
reilua-enhanced-4f34b7aad9abc3aace50140115bd9696441c8231.tar.bz2
reilua-enhanced-4f34b7aad9abc3aace50140115bd9696441c8231.zip
Disable antialiasing for all fonts loaded via Lua API
All pixel fonts and TTF fonts loaded through RL.LoadFont(), RL.LoadFontEx(), RL.LoadFontFromImage(), and RL.LoadFontFromMemory() now use TEXTURE_FILTER_POINT instead of the default bilinear filtering. This ensures crisp, pixel-perfect rendering without blurring for pixel art fonts and maintains consistency across all font loading methods in the game engine.
Diffstat (limited to 'src')
-rw-r--r--src/text.c32
1 files changed, 21 insertions, 11 deletions
diff --git a/src/text.c b/src/text.c
index 5f2a91a..1417397 100644
--- a/src/text.c
+++ b/src/text.c
@@ -185,7 +185,9 @@ Load font from file into GPU memory (VRAM)
*/
int ltextLoadFont( lua_State* L ) {
if ( FileExists( luaL_checkstring( L, 1 ) ) ) {
- uluaPushFont( L, LoadFont( lua_tostring( L, 1 ) ) );
+ Font font = LoadFont( lua_tostring( L, 1 ) );
+ SetTextureFilter( font.texture, TEXTURE_FILTER_POINT );
+ uluaPushFont( L, font );
return 1;
}
@@ -207,16 +209,19 @@ int ltextLoadFontEx( lua_State* L ) {
int fontSize = luaL_checkinteger( L, 2 );
if ( FileExists( luaL_checkstring( L, 1 ) ) ) {
+ Font font;
if ( lua_istable( L, 3 ) ) {
int codepointCount = uluaGetTableLen( L, 3 );
int codepoints[ codepointCount ];
getCodepoints( L, codepoints, 3 );
- uluaPushFont( L, LoadFontEx( lua_tostring( L, 1 ), fontSize, codepoints, codepointCount ) );
-
- return 1;
+ font = LoadFontEx( lua_tostring( L, 1 ), fontSize, codepoints, codepointCount );
+ }
+ else {
+ font = LoadFontEx( lua_tostring( L, 1 ), fontSize, NULL, 0 );
}
- uluaPushFont( L, LoadFontEx( lua_tostring( L, 1 ), fontSize, NULL, 0 ) );
+ SetTextureFilter( font.texture, TEXTURE_FILTER_POINT );
+ uluaPushFont( L, font );
return 1;
}
@@ -238,7 +243,9 @@ int ltextLoadFontFromImage( lua_State* L ) {
Color key = uluaGetColor( L, 2 );
int firstChar = luaL_checkinteger( L, 3 );
- uluaPushFont( L, LoadFontFromImage( *image, key, firstChar ) );
+ Font font = LoadFontFromImage( *image, key, firstChar );
+ SetTextureFilter( font.texture, TEXTURE_FILTER_POINT );
+ uluaPushFont( L, font );
return 1;
}
@@ -255,17 +262,20 @@ int ltextLoadFontFromMemory( lua_State* L ) {
Buffer* fileData = uluaGetBuffer( L, 2 );
int fontSize = luaL_checkinteger( L, 3 );
+ Font font;
if ( lua_istable( L, 4 ) ) {
int codepointCount = uluaGetTableLen( L, 4 );
int codepoints[ codepointCount ];
getCodepoints( L, codepoints, 4 );
- uluaPushFont( L, LoadFontFromMemory( fileType, fileData->data, fileData->size, fontSize, codepoints, codepointCount ) );
-
- return 1;
+ font = LoadFontFromMemory( fileType, fileData->data, fileData->size, fontSize, codepoints, codepointCount );
}
- /* If no codepoints provided. */
- uluaPushFont( L, LoadFontFromMemory( fileType, fileData->data, fileData->size, fontSize, NULL, 0 ) );
+ else {
+ /* If no codepoints provided. */
+ font = LoadFontFromMemory( fileType, fileData->data, fileData->size, fontSize, NULL, 0 );
+ }
+ SetTextureFilter( font.texture, TEXTURE_FILTER_POINT );
+ uluaPushFont( L, font );
return 1;
}