PDA

View Full Version : 16-Segment Vector-Font



Micronix-TRSI
12-07-2020, 08:57 PM
Display the chars A-Z with 16-segment setup ( see --> chardefinition ),

usage: check the bits ( see --> procedure draw_char ) and simply use 9 fixed xy-coordinates to draw lines ( 0-15; out of maximum 16 possible ) ( example: bit 2 is set = draw line from a to b )

I do not draw lines; first i put the 16 line-draw operations in a texture as segments (4x4-matrix). Then I overlap the segments to display a single char ( example char 'O': overlap segment 0,1,2,3,4,5,6 and 7 ). I used a quad fontset so i could reduce the texture segments from 16 (4x4-matrix) to three (2x2-matrix). ( This is not possible for 1x2 fontset-dimension )

Texture Segment 1 to draw line 9,11,13 and/or 15, Texture Segment 2 to draw line 8,10,12 and/or 14 and Texture Segment 3 to draw other 8
( see --> TexSeg; coordinates in texture )

disadvantages: a.) you can not vary much with the chardefinition, b.) this code use several texure-draw operations to display a single char.

improvements : a.) include numbers 0-9 ( still unused ), b.) put it in 3D


CHEERS 20201551

Ñuño Martínez
13-07-2020, 05:28 PM
Nice.

I did a watch&game-like game for a LudumDare and screen was a pain to implement. I should take a look to the way you're doing it, maybe I learn something.