NSX (QFont)

From Blood Wiki
(Difference between revisions)
Jump to: navigation, search
Line 25: Line 25:
 
Should be the first groups of file, it sets font drawer and face group.
 
Should be the first groups of file, it sets font drawer and face group.
  
==== type=''x'' ====
+
{| border="1" cellpadding="20" cellspacing="0" style="border-collapse: collapse"
Type of font drawer, each of it has it's advantages and disadvantages:
+
!Key
 +
!Value
 +
!Description
 +
|-
 +
|type
 +
|''x''
 +
|Type of font drawer, each of it has it's advantages and disadvantages:
  
 
Possible values:
 
Possible values:
Line 32: Line 38:
 
* ''ascii'' - Quake ascii conchars (256 chars on a 16*16 table)
 
* ''ascii'' - Quake ascii conchars (256 chars on a 16*16 table)
 
* ''glyph'' - QuakeC glyph font renderer (each char is separatepic).
 
* ''glyph'' - QuakeC glyph font renderer (each char is separatepic).
 
+
|-
==== face=''path'' ====
+
|face
Path to the font face group.
+
|''string''
 
+
|Path to the font face group.
==== brightness=''x'' ====
+
|-
 
+
|brightness
Floating point value of brightness scale. 1 is nothing, 0.1 is 10% etc.
+
|''value''
 +
|Floating point value of brightness scale. 1 is nothing, 0.1 is 10% etc.
  
 
Applies to all renderer types.
 
Applies to all renderer types.
 
+
|-
==== scale=''x'' ''y'' ====
+
|slot
 
+
|''slotname''
Two floating point values storing horizontal and vertical scale of font chars.
+
|Engine font slot. Used to replace fontmaps that was already initialized.
 
+
Applies to all renderer types.
+
 
+
==== width=''x'' ====
+
 
+
X component of scale.
+
 
+
==== height=''y'' ====
+
 
+
Y component of scale.
+
 
+
==== respath=''path'' ====
+
 
+
Path to font resources. Default path is sub-folder named as qfont file without extension.
+
 
+
== face group for freetype font ==
+
 
+
==== sizes=''size1 size2 size3...'' ====
+
 
+
Which glyph sizes to render (for different size fonts).
+
 
+
Default value is "16 24".
+
 
+
==== slot=''x'' ====
+
 
+
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.
 
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.
  
==== glyphs=''string'' ====
+
Engine will render font pages containing this string chars (others will be rendered on demand).
 
+
|-
Engine will render font pages containing this string chars.
+
|r_antialias
 
+
|''0/1''
==== r_antialias=''0/1'' ====
+
|Toggles antialiasing for font pages renderer.
 
+
|-
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.
 +
|}
  
==== r_hinting=''0/1/2/3'' ====
 
  
Toggles hinting for font pages renderer. 0 - no hinting, 1 - light autohintinh, 2 - full autohinting, 3 - full hinting.
 
  
  

Revision as of 19:33, 2 July 2012

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