Generating Font SDFs (Signed Distance Fields) | Font Rendering in Java #4
Join the Discord: https://discord.gg/4tHeAkxNg7
In this episode I go over how to create a signed distance field for glyphs. I also go over how to use the FreeType library for Java using a binding. This method uses the original method described by the developers at valve, in the next episode I will go over how to use the generated SDF to render the actual glyph.
FreeType Binding: https://github.com/mlomb/freetype-jni
Valve Paper: https://steamcdn-a.akamaihd.net/apps/valve/2007/SIGGRAPH2007_AlphaTestedMagnification.pdf
Source Code: https://github.com/codingminecraft/FontRendering/tree/adfd881b2bf75df9ea0e981ec4cb35657e0717ea
0:00 Intro
1:58 How to Generate SDFs
11:34 Importing FreeType
15:42 Generating Glyphs with FreeType
28:13 Generating the SDF (Creating Range Maps)
32:55 Creating the SDF Bitmap
36:02 Creating the Distance Function
---------------------------------------------------------------------
Website: https://ambrosiogabe.github.io/
Github: https://github.com/ambrosiogabe
Here are some books I recommend if you want to learn about game engine development more thoroughly. I do not profit off any of these sales, these are just some books that have helped me out :)
My Recommended Game Engine Books:
Game Engine Architecture: https://www.gameenginebook.com/
Game Physics Cookbook (Read this before the next physics book): https://www.amazon.com/Game-Physics-Cookbook-Gabor-Szauer/dp/1787123669
Game Physics (Ian Millington): https://www.amazon.com/Game-Physics-Engine-Development-Commercial-Grade/dp/0123819768
Game Programming Patterns (Free): https://gameprogrammingpatterns.com/
My Recommended Beginning Game Programming Books:
JavaScript Game Design: https://www.apress.com/gp/book/9781430247166
My Recommended Java Books:
Data Structures/Algorithms: https://www.amazon.com/Data-Structures-Algorithms-Java-6th-ebook/dp/B00JDRQF8C
LWJGL (Free, but I haven't read this thoroughly): https://lwjglgamedev.gitbooks.io/3d-game-development-with-lwjgl/content/