examples/gkurve: support for UTF32 characters

This commit is contained in:
PiergiorgioZagaria 2022-06-05 18:05:15 +02:00 committed by Stephen Gutekanst
parent 98138dd2fa
commit c1b3996b63
3 changed files with 18 additions and 9 deletions

View file

@ -94,15 +94,16 @@ pub fn init(app: *App, engine: *mach.Engine) !void {
defer lib.deinit();
const size_multiplier = 5;
const character = 'e';
const character = "è";
var label = try Label.init(lib, "freetype/upstream/assets/FiraSans-Regular.ttf", 0, 110 * size_multiplier, engine.allocator);
defer label.deinit();
try label.print(app, &.{character}, .{}, @Vector(2, f32){ 50 * size_multiplier, 40 }, @Vector(4, f32){ 1, 1, 1, 1 });
// try label.print(app, "All your game's bases are belong to us èçòà", .{}, @Vector(2, f32){ 0, 420 }, @Vector(4, f32){ 1, 1, 1, 1 });
try label.print(app, character, .{}, @Vector(2, f32){ 50 * size_multiplier, 40 }, @Vector(4, f32){ 1, 1, 1, 1 });
var resizable_label: ResizableLabel = undefined;
try resizable_label.init(lib, "freetype/upstream/assets/FiraSans-Regular.ttf", 0, engine.allocator, white_texture_uv_data);
defer resizable_label.deinit();
try resizable_label.print(app, &.{character}, .{}, @Vector(4, f32){ 0, 40, 0, 0 }, @Vector(4, f32){ 1, 1, 1, 1 }, 80 * size_multiplier);
try resizable_label.print(app, character, .{}, @Vector(4, f32){ 0, 40, 0, 0 }, @Vector(4, f32){ 1, 1, 1, 1 }, 80 * size_multiplier);
queue.writeTexture(
&.{ .texture = texture },