BGE Bitmap Text: add in check if the character is outside the range

This commit is contained in:
2014-01-23 13:37:09 +11:00
parent 2f46ed5564
commit c02c2dfdd9

View File

@@ -97,7 +97,7 @@ void GPU_render_text(MTFace *tface, int mode,
Image* ima = (Image *)tface->tpage; Image* ima = (Image *)tface->tpage;
ImBuf *first_ibuf; ImBuf *first_ibuf;
const size_t textlen_st = textlen; const size_t textlen_st = textlen;
size_t index, character; size_t index;
float centerx, centery, sizex, sizey, transx, transy, movex, movey, advance; float centerx, centery, sizex, sizey, transx, transy, movex, movey, advance;
float advance_tab; float advance_tab;
@@ -129,6 +129,7 @@ void GPU_render_text(MTFace *tface, int mode,
for (index = 0; index < textlen_st; ) { for (index = 0; index < textlen_st; ) {
unsigned int character;
float uv[4][2]; float uv[4][2];
// lets calculate offset stuff // lets calculate offset stuff
@@ -145,6 +146,10 @@ void GPU_render_text(MTFace *tface, int mode,
continue; continue;
} }
else if (character > USHRT_MAX) {
/* not much we can do here bmfonts take ushort */
character = '?';
}
// space starts at offset 1 // space starts at offset 1
// character = character - ' ' + 1; // character = character - ' ' + 1;