This page has been translated automatically.
Video Tutorials
Interface
Essentials
Advanced
How To
UnigineEditor
Interface Overview
Assets Workflow
Settings and Preferences
Working With Projects
Adjusting Node Parameters
Setting Up Materials
Setting Up Properties
Lighting
Landscape Tool
Sandworm
Using Editor Tools for Specific Tasks
Extending Editor Functionality
Built-in Node Types
Nodes
Objects
Effects
Decals
Light Sources
Geodetics
World Nodes
Sound Objects
Pathfinding Objects
Players
Programming
Fundamentals
Setting Up Development Environment
Usage Examples
C++
C#
UnigineScript
UUSL (Unified UNIGINE Shader Language)
Plugins
File Formats
Rebuilding the Engine Tools
GUI
Double Precision Coordinates
API
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes
Content Creation
Content Optimization
Materials
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Tutorials
Warning! This version of documentation is OUTDATED, as it describes an older SDK version! Please switch to the documentation for the latest SDK version.
Warning! This version of documentation describes an old SDK version which is no longer supported! Please upgrade to the latest SDK version.

ObjectText Class

Warning
The scope of applications for UnigineScript is limited to implementing materials-related logic (material expressions, scriptable materials, brush materials). Do not use UnigineScript as a language for application logic, please consider C#/C++ instead, as these APIs are the preferred ones. Availability of new Engine features in UnigineScript (beyond its scope of applications) is not guaranteed, as the current level of support assumes only fixing critical issues.
Inherits from: Object

The class is used to render flat text in a scene.

ObjectText Class

Members


static ObjectText ( ) #

Default constructor. Creates an empty object with no text and font set.

static ObjectText ( string font_name ) #

Constructor. Creates an object with no text but with the specified font.

Arguments

  • string font_name - The path to the TTF font relatively to the data directory.

static ObjectText ( string font_name, string text ) #

Constructor. Creates an object with the set font and text.

Arguments

  • string font_name - The path to the TTF font relatively to the data directory.
  • string text - The text (can be either plain or rich).

void setDepthTest ( int test ) #

Sets a value indicating if depth test should be used for the text object.

Arguments

  • int test - 1 to use depth test; otherwise, 0.

int getDepthTest ( ) #

Returns a value indicating if the text object uses depth test.

Return value

1 if the object uses depth test; otherwise, 0.

void setFontHSpacing ( int hspacing ) #

Sets the horizontal spacing between letters (kerning value). This parameter influences the text's physical size.

Arguments

  • int hspacing - The horizontal spacing value.

int getFontHSpacing ( ) #

Returns the horizontal spacing between letters (kerning value).

Return value

The horizontal spacing, in dots.

void setFontName ( string name ) #

Sets the path to the TTF font.
Notice
Names of font files for bold, italic and bold italic fonts must have the b, i and bi postfixes correspondingly. For example: myfontb.ttf, myfontbi.ttf.

Arguments

  • string name - The path to the TTF font relatively to the data directory.

string getFontName ( ) #

Returns the path to the TTF font specified in the node.
Notice
Names of font files for bold, italic and bold italic fonts must have the b, i and bi postfixes correspondingly. For example: myfontb.ttf, myfontbi.ttf.

Return value

The path to the font relatively to the data directory, if specified; otherwise — the empty string.

void setFontOutline ( int outline ) #

Sets the outline for the text. The outline looks like the dark shadow in the right lower corner of the text and is displaced by one dot.

Arguments

  • int outline - 1 — to enable the outline; 0 — to disable.

int getFontOutline ( ) #

Returns the flag indicating if the text outline is enabled.

Return value

1 — the outline is enabled; 0 — disabled.

void setFontResolution ( int resolution ) #

Sets the resolution of the texture into which the text will be rendered. The lower the value, the less detailed will be the text, the less video memory will be required for the texture. It doesn't influence the text's physical size.

Arguments

  • int resolution - The font resolution.

int getFontResolution ( ) #

Returns the text resolution value.

Return value

The text resolution value.

void setFontRich ( int rich ) #

Sets the flag indicating if the rich text is enabled. When enabled, the following tags can be used for text formatting:
  • <b>text</b> specifies a bold text.
  • <i>text</i> specifies an italic text.
  • <br>text<br/> inserts a single line break.
  • <left>text</left> left-aligns the text.
  • <right>text</right> right-aligns the text.
  • <center>text</center> center-aligns the text.
  • <p align=left|right|center|justify>text</p> specifies the alignment of the text within a paragraph:
    • left - left-aligns the text
    • right - right-aligns the text
    • center - center-aligns the text
    • justify - stretches the lines so that each line has equal width (like in newspapers and magazines)
    Notice
    Text alignment requires text wrapping to be enabled: the value of the Wrap Width parameter must be greater than 0.
  • <font size=12 color=magenta face=verdana> text</font> specifies the font face, font size, and color of text.
  • <sub> text</sub> defines subscript text. Subscript text appears half a character below the normal line, and is sometimes rendered in a smaller font.
  • <sup> text</sup> defines superscript text. Superscript text appears half a character above the normal line, and is sometimes rendered in a smaller font.
Notice
<image/> and <table/> tags are not available.

Arguments

  • int rich - 1 — to enable the rich text; 0 — to disable.

int getFontRich ( ) #

Returns the value indicating if the rich text is enabled. When enabled, tags can be used for text formatting.

Return value

1 — the rich text is enabled; 0 — disabled.

void setFontSize ( int size ) #

Sets the size of the text font. The more dots, the higher the size of the font. To match dots with a 3D space, there is a set value: 288 dots per unit. For example, if you have the Arial font with the size of 20, the physical height of the letter can be calculated as 20/288=0.0694 units.

Arguments

  • int size - The size of the text, in dots.

int getFontSize ( ) #

Returns the text font size.

Return value

The text font size, in dots.

void setFontVSpacing ( int vspacing ) #

Sets the vertical spacing between letters (kerning value). This parameter influences the text's physical size.

Arguments

  • int vspacing - The vertical spacing value.

int getFontVSpacing ( ) #

Returns the vertical spacing between letters (kerning value).

Return value

The vertical spacing, in dots.

void setText ( string text ) #

Sets the text for the node. Can be either a plain or rich text.

Arguments

  • string text - The text.

string getText ( ) #

Returns the text set in the node.

Return value

The text.

void setTextColor ( vec4 color ) #

Sets the color of the text.

Arguments

  • vec4 color - The color of the text in the RGBA range.

vec4 getTextColor ( ) #

Returns the color of the text.

Return value

The text color in the RGBA range.

void setTextWrapWidth ( float width ) #

Sets text wrap width in units. The text will wrap if its physical size will be greater than the set value. If 0 is set, text wrapping is disabled.

The following example shows the benefits of the method:

Source code (UnigineScript)
ObjectText bad_text = new ObjectText();
bad_text.setFontRich(1);
bad_text.setText("<p align=\"justify\">This is a bad example of a paragraph. It won't work anyway as it's not clear where it should be wrappped.</p>");
			
ObjectText good_text = new ObjectText();
good_text.setFontRich(1);
good_text.setTextWrapWidth(2.0f); // text will wrap if its physical size will be greater than two units
good_text.setText("<p align=\"justify\">This is a good paragraph which will be aligned properly.</p>");

Arguments

  • float width - Wrap width in units.

float getTextWrapWidth ( ) #

Returns the current text wrap width in units.

Return value

Wrap width in units.

static int type ( ) #

Returns the type of the object.

Return value

Object Text type identifier.
Last update: 2021-12-13
Build: ()