BGE Bitmap Text: add in check if the character is outside the range
This commit is contained in:
@@ -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;
|
||||||
|
|||||||
Reference in New Issue
Block a user