MSDF Text & Icons #8

Open
opened 2021-10-14 21:22:58 +00:00 by glfmn · 1 comment
glfmn commented 2021-10-14 21:22:58 +00:00 (Migrated from github.com)

Rather than rasterizing text into a roughly 30x30 single value bitmap, we can use an MSDF atlas for resolution independent text.

  • Explore font library alternatives
    • Since generating the MSDF will require our own rasterization, needs will be different
    • Still would like to rely on third party library to do normalization & layout
  • Create curve primitives
  • Implement MSDF gen algorithm based on the thesis
  • Update shader to use the MSDF values
  • Consider creating an MSDF crate
  • Support dynamic caching of UV data
    • 1. "allocate" UV coordinates based on missing glyphs or symbols
    • 2. perhaps queue the actual MSDF generation for the finalization at end of frame
  • Support non-text keys so custom icons can also be stored
Rather than rasterizing text into a roughly 30x30 single value bitmap, we can use an MSDF atlas for resolution independent text. - [ ] Explore font library alternatives - [ ] Since generating the MSDF will require our own rasterization, needs will be different - [ ] Still would like to rely on third party library to do normalization & layout - [ ] Create curve primitives - [ ] Implement MSDF gen algorithm based on the thesis - [ ] Update shader to use the MSDF values - [ ] Consider creating an MSDF crate - [ ] Support dynamic caching of UV data - [ ] 1. "allocate" UV coordinates based on missing glyphs or symbols - [ ] 2. perhaps queue the actual MSDF generation for the finalization at end of frame - [ ] Support non-text keys so custom icons can also be stored
glfmn commented 2021-11-02 00:19:27 +00:00 (Migrated from github.com)

It could also do well to allow having an RGBA texture atlas; therefore, two textures, one with RGBA that's just blitted in, one with MSDF. Depending on how complicated it is, another option is to allow the user to set up a texture array that is indexed by primitives somehow.

It could also do well to allow having an RGBA texture atlas; therefore, two textures, one with RGBA that's just blitted in, one with MSDF. Depending on how complicated it is, another option is to allow the user to set up a texture array that is indexed by primitives somehow.
Sign in to join this conversation.
No description provided.