bevyengine / bevyengine/bevy

`bevy_gizmos`: Expand text gizmos character support beyond ASCII

Open
#22,997 0 comments 0 reactions 0 assignees View on GitHub
A-Art A-Gizmos A-Text C-Feature S-Ready-For-Implementation
Dominant language
Rust
Stars
48.2k
Forks
4.8k
Avg merge
3d 16h
Merged PRs (30d)
171

Description

## What problem does this solve or what need does it fill?

The text gizmos stroke font only supports ASCII characters.

## What solution would you like

Add more unicode characters: extended latin characters, CJK characters, simple emojis, etc.

The way `StrokeTextLayout` maps UTF-8 codes to glyphs would need to be changed. At the moment we only support ASCII, so we just use the ASCII code itself to index into the glyphs array. This wouldn't be possible with expanded character support.

Contributor guide

Open the contributing guide

Research direction

Start with the `bevy_gizmos` text-gizmo implementation, especially `StrokeTextLayout` and the glyphs array. Trace how UTF-8 characters are currently mapped to ASCII indices, then determine an expanded mapping suitable for extended Latin, CJK, and simple emoji characters. Done means supported non-ASCII characters render correctly instead of being limited to ASCII.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
game-dev
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.