Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for rendering 3d text #4313

Closed
KOLANICH opened this issue Jul 13, 2021 · 2 comments
Closed

Support for rendering 3d text #4313

KOLANICH opened this issue Jul 13, 2021 · 2 comments

Comments

@KOLANICH
Copy link

KOLANICH commented Jul 13, 2021

It may be possible to implement rendering of text not via texture atlases, but as 3d objects. Though in the most of use cases it would be inefficient, as an optimization for the simplest cases of static not occluded glyphs a texture can still be used to cache 2d images of 3d-rendered glyphs. In more dynamic cases when all the glyphs are transformed uniformly again a texture can be used, but would have to be regenerated each time the glyphs are transformed. It may be possible to use a LRU cache here.

https://github.com/fetisov/ttf2mesh may be helpful for that. It is a library triangulating fonts.

@PathogenDavid
Copy link
Contributor

See also: #3365 #3406 #2365 #4056 #3761 #2986 #797 and finally https://gankra.github.io/blah/text-hates-you/

I don't think Dear ImGui's lack of better text rendering is for lack of ideas, it's more that it's a really hard problem to solve in a generic way which is both performant and flexible.

The current plan is to merge #3761 and then work towards updating the font atlas dynamically.

@ocornut
Copy link
Owner

ocornut commented Jul 13, 2021

Hello,

You didn’t explain what you are trying to solve with this, you are suggesting a solution to an unknown problem.

@ocornut ocornut closed this as completed Jul 13, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants