Tiny bitfield based text renderer (2022)
onirom.fr
onirom.fr
> Another idea would be to render tiles and modifying the tiles content by just modulating the bit fields or map a set of tiles differently or do simple transforms using bitwise operations such as mirroring, once you have a complete set of tile operations you can combine them to compose detailed patterns / images, ones could also animate tiles individually by switching values in a cyclic fashion…
Could something like the wave function collapse algorithm[1] be used for this, ie. generating tiles that are similar to a certain base pattern?
The author of the GitHub repo is a pretty successful game author and has used it many times for his games
Here’s a talk by him talking about procedural generation using wave function collapse: https://m.youtube.com/watch?v=0bcZb-SsnrA
You'd need a language that doesn't rely on accent marks or pictograms for sure (unless they have a very tiny set of characters), and that probably eliminates a lot of languages.
Some languages have an official mapping, like in German where you can usually replace ä with ae, ü with ue, and so on.
Otherwise the accent could be a separate character, as in cafe’. Probably would be acceptable for this application.
So it's also possible to flip this around. What script could be designed with its basis being a 3x3 grid? That would allow you to create forms which are maximally distinct from each other, without needing to conform to a script like Latin characters.
.@ .@ @. @. @@ @@ @@ @@
@. @@ .@ @. .. .@ @. @@
This is too small for any actual, natural written language. 2x3 and 3x2 significantly increase possibilities and it is indeed not too hard to pick unique glyphs for a large subset of alphabets. Rotokas [1] only uses 12 unaccented Latin alphabets for example, so the following would marginally work: .@ @@ @@ .@ @. @@ @@ .. @. @@ .. ..
@@ @. .@ .@ @@ @@ @@ @@ @@ .@ @@ @@
@@ @@ @@ .@ @@ @@ @. @. .@ .@ @@ @.
A E g I K O P r S T u v
Maybe you can make the question much more interesting by allowing non-square and/or non-uniform pixels, i.e. segmented displays. That still has a lot of design potentials even to this day.A different part of the Internet will be reminded of something else, especially upon seeing that first image:
https://files.scene.org/view/parties/2022/lovebyte22/executa...
1. Click on the "my demoscene stuff" link
2. Click on "Mmrnmhrm" link
3. Click "[source]"
4. Arrive at https://github.com/grz0zrg/codegolfing/tree/main/Linux/Mmrnm...