NSX (QFont)

From Blood Wiki
Revision as of 19:33, 2 July 2012 by VorteX (Talk | contribs)

Jump to: navigation, search

Introduction

.QFONT files are .NSX scripts that holds parameters for NetherMenu font draw module.

Example of .QFONT file contents:

[qfont]
type=FT
face=default
brightness=0.8
width=1.2

[default]
file=./big.ttf
sizes=38
glyphs=abcdefghijklmnopqrttuvwxyz0123456789
r_shadow=0.8
r_shadowblur=1
r_shadowofs=0 0.5 0.5

Structure

[qfont] group

Should be the first groups of file, it sets font drawer and face group.

Key Value Description
type x Type of font drawer, each of it has it's advantages and disadvantages:

Possible values:

  • ft - Darkplaces vector fonts using freetype library
  • ascii - Quake ascii conchars (256 chars on a 16*16 table)
  • glyph - QuakeC glyph font renderer (each char is separatepic).
face string Path to the font face group.
brightness value Floating point value of brightness scale. 1 is nothing, 0.1 is 10% etc.

Applies to all renderer types.

slot slotname Engine font slot. Used to replace fontmaps that was already initialized.

Darkplaces engine have this fixed slots: default, console, sbar, notify, chat, centerprint, infobar, menu, user0, user1, user2, user3, user4, user5, user6, user7.

glyphs string Engine font slot. Used to replace fontmaps that was already initialized.

Engine will render font pages containing this string chars (others will be rendered on demand).

r_antialias 0/1 Toggles antialiasing for font pages renderer.
r_hinting 0/1/2/3 Toggles hinting for font pages renderer. 0 - no hinting, 1 - light autohintinh, 2 - full autohinting, 3 - full hinting.




if (key == "r_antialias") { r_antialias = stof(val); continue; } if (key == "r_hinting") { r_hinting = stof(val); continue; } if (key == "r_shadow") { r_outline = stof(val); continue; } if (key == "r_shadowblur") { r_outlineblur = stof(val); continue; } if (key == "r_shadowofs") { r_outlineofs = stov(val); continue; } if (key == "r_charcushion"){ r_charcushion = stof(val); continue; } if (key == "r_charscale") { r_charscale = stof(val); continue; }

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox