home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
DP Tool Club 24
/
CD_ASCQ_24_0995.iso
/
dos
/
graphic
/
font3d15
/
font3d.txt
< prev
next >
Wrap
Text File
|
1995-07-11
|
52KB
|
1,453 lines
Font3D
Version 1.5 User's Guide
=============================================================================
SECTION ONE: Introduction
______________________________________________________________________________
Font3D is a utility program for the generation of 3-dimensional text objects.
Once created, these objects can be included in a scene description file for
later modelling or rendering. Several different output formats are supported,
including:
o Persistence of Vision 2.x
o Vivid 2.0
o AutoCad DXF
o RenderMan RIB
o RAW Triangles
This document describes the operation of Font3D Version 1.5. Section Two:
Using the Program gives a comprehensive look (including several examples) at
how to use the program effectively. Section Three: Command Line Options is a
complete reference of all Font3D command line options with syntax, a
description, and an example for each one.
The Distribution
----------------
The following files are included in the official distribution of Font3D:
f3d150bn.dos MS-DOS Executable
f3d150bn.os2 OS/2 Executable
f3d150sc.zip Source Code Archive
font3d.txt ASCII Documentation
font3d.ps PostScript Documentation
readme.txt Last Minute Information
register.txt How To Register
Installation
------------
Font3D is fairly self-sufficient in that only an executable file is required
to actually begin using the program. MS-DOS and OS/2 users can take advan-
tage of the executables included in the distribution, but most others will
need to compile a version for their own particular environment. A typical
installation will involve creating a directory to hold Font3D, unzipping the
archive into that directory, and then renaming the appropriate executable file
to FONT3D.EXE.
For those who need to build their own executable from the source code, it
shouldn't be too difficult. A Makefile for the GNU C++ compiler is included
in the source archive; you may need to tweak it a bit for your own particular
setup.
The MS-DOS executable requires that you have at least an 80386 processor, a
math coprocessor, and two megabytes of RAM.
Getting in Touch with the Author
--------------------------------
If you have any suggestions, questions, or comments, I would love to hear from
you. Remember, bug reports are much more useful if you can tell me what
machine you're using, and what font it is that gives you problems. The
preferred form of communication (mostly because it's free for me) is E-Mail.
My electronic address is
squid@ksu.ksu.edu
If you like, you can also use the US Postal Service. My mailing address is:
Todd A. Prater
1016 Vattier St. Apt. A
Manhattan, KS. 66502
USA
Finally, if all else fails, give me a call. Although, it's subject to change,
my current phone number is
(913) 776-3597
Acknowledgements
----------------
First of all, many thanks go out to those of you who have already become
registered users of Font3D. I very much appreciate your support! Thanks also
to Scott Adkins for coding the font-path and output-path options, and for some
great suggestions. Finally, thanks to Larry Gritz for the information
on RenderMan and RIB files.
The RenderMan Interface Procedures and RIB Protocol are Copyright 1988, 1989,
Pixar. All rights reserved. RenderMan is a registered trademark of Pixar.
Font3D is Copyright 1994, 1995, Todd A. Prater. All rights reserved.
SECTION TWO: Using the Program
_____________________________________________________________________________
Fortunately, although there are quite a few different program options, most of
them fall into a few general categories. In addition, all program options
must be given to Font3D in the form of
option-name=value
where option-name is the name of a command to use (like font, depth, or face-
cut), and value is the parameter required by that command. All commands must
have a value.
The various Font3D commands can be usefully categorized as follows:
Fonts font, font-path, map
Visibility faces, sides, bevels, front-face, back-face, front-bevel
back-bevel
Texturing texture, face-texture, side-texture, bevel-texture
front-face-texture, back-face-texture,
front-bevel-texture, back-bevel-texture
Beveling bevel-type, cut, face-cut, side-cut, front-face-cut,
front-side-cut, back-face-cut, back-side-cut
Object char, code, string, depth, triangle-type
Output output, output-path, format, name
Positioning xpos, ypos, zpos
Miscellaneous config
Objects
-------
The objects that Font3D creates are actually composed of (quite a few) tiny
little triangular patches. These triangles can be thought of in groups: the
front face, the front bevel, the sides, the back bevel, and the back face.
Any of these individual components can be made invisible, so that for example
only the triangles that make up the front face or the back face are generated-
-see Visiblilty in this section for more information. The text is always
extruded along the z-axis, with its height in the y direction, and width in
the x direction. A right-handed coordinate system is used.
Fonts
-----
Both Windows and Macintosh TrueType fonts can be used by Font3D. By default,
a Windows encoding table is assumed, so if you see an error message like:
ERROR: A required part of this font is missing.
try to use the map=MAC option to force Font3D to look for a Macintosh encoding
table.
New with version 1.5 is kerning support. This is entirely transparent to the
user; if kerning information is present in a particular font, then it will be
used, otherwise you won't miss it. Most public-domain fonts don't have a kern
pair table, but there are a few that do. On the other hand, many commercial
fonts do have this information, and it can make a big improvement with some
pairs of characters.
Getting Started
---------------
The only program option that doesn't have a default value is font. You always
need to specify, either on the command line, or in a configuration file, which
TrueType font to use. If you type the following at a command line prompt (and
if the font arial.ttf is in the current directory):
C:>font3d font=arial.ttf
Font3D will generate a single capital letter A, without bevels, and then write
a POV formatted output file named "font3d.inc" in the current directory. The
object will be #declared in that output file as FONT3D_OUTPUT. All you need
to do to place this object in a POV scene is first #include it, and then
reference it with a statement like:
object { FONT3D_OBJECT }
In the rendered scene, an extruded, capital letter A will be centered at the
origin.
Of course, you will eventally want to create something useful, like another
character, or a string of text. There are three commands you can use to do
this: char, code, and string. The first one, char, lets you specify a single
character to build. For example to generate a lowercase g, in the typeface
Arial, try the following:
C:>font3d font=arial.ttf char=g
The output is written to the same default file "font3d.inc", and given the
same name FONT3D_OBJECT, but now when you include it in your scene file, a
lowercase g will be rendered. The code option is identical to char, except
that you give it the character code of the letter you wish to create:
C:>font3d font=arial.ttf code=84
causes Font3D to build a capital T, in Arial, and write it to the same default
file, with the same default name. Finally, the string option simply tells the
program to generate an entire string of text; it is used much as you would
expect:
C:>font3d font=arial.ttf string=TestString
Smooth Triangles
----------------
Many rendering programs recognize a special kind of triangular patch, which
I'll call a smooth triangle, that can have different surface normals at each
vertex. The renderer then averages those individual normals to calculate a
normal at any point inside the triangular patch. If the three vertex normals
are calculated correctly, this can eliminate the faceted look that many
objects built from simple flat triangles have. Believe me, this can make a
huge difference in the quality of an object, which is why smooth triangles are
the default. Keep in mind that neither the RAW or the DXF file formats
support this type of primitive, so they simply ignore it. If you want to turn
this feature off, to speed up rendering for example, simply use the triangle-
type command:
C:>font3d font=arial.ttf string=TestString triangle-type=FLAT
Rounded edges are physically identical to a flat bevel. The one difference is
that the vertex normals are altered so that the bevels appear to be rounded.
It is for this reason that RAW and DXF file formats are incapable of this
effect, and that if triangle-type is set to FLAT, the rounded edges will still
appear to be flat bevels.
Output Files
------------
As we have seen above, the default output file is "font3d.inc", and it is
placed in the current working directory. There are two settings that allow
you to change this behavior: output, and output-path. output specifies the
name of the file to which the object information will be written. output-path
allows you to specify the directory of the output file. This option is
especially useful in a configuration file (see below).
Here is an example of how you can use both of these options at the same time:
C:>font3d font=times.ttf output-path=C:\POV\INCLUDE output=text.inc
And, here is an example of how you can use just the output option to do the
same thing:
C:>font3d font=times.ttf output=C:\POV\INCLUDE\text.inc
Once again, the reason the output-path option was provided, was so that you
could place an output path into one of your configuration files, and forget
about it.
Object Naming
-------------
POV users can assign a name to the object that Font3D generates. This is a
very useful feature if you're using more than one object in a particular
scene. Here's an example. Let's say you want to have four different words in
your scene; call the program four times like this:
C:>font3d font=arial.ttf output-file=this.inc string=This name=THIS_STR
C:>font3d font=times.ttf output-file=is.inc string=is name=IS_STR
C:>font3d font=times.ttf output-file=a.inc string=a name=A_STR
C:>font3d font=arial.ttf output-file=test.inc string=Test name=TEST_STR
A POV scene description that uses these objects might look like this:
#include "colors.inc"
#include "textures.inc"
#include "this.inc"
#include "is.inc"
#include "a.inc"
#include "test.inc"
// Declare a light and a camera here...
object {
THIS_STR
texture { Jade }
translate <0,2,0>
}
object {
IS_STR
texture { White_Marble }
translate <0,1,0>
}
object {
A_STR
texture { Red_Marble }
}
object {
TEST_STR
texture { Blood_Marble }
translate <0,-1,0>
}
Configuration Files
-------------------
One of the most useful new features is the ability to store frequently used
commands in a configuration file. Upon invocation, Font3D looks for a file
called "font3d.def". Here you can put any command line options you find
yourself repeatedly typing over and over (like font-path, output-path,
etc...). Take a look at the font3d.def file that is included in the
distribution to see what it looks like. The second way to have Font3D read
options from a text file is the config option. You just give it the name of a
file, and it will be processed as if it were a list of options on the command
line. For example if you create a text file named "test.def" with the
following lines:
font-path=C:\WINDOWS\SYSTEM;C:\FONTS
output-path=C:\POV\INCLUDE
cut=0.003 depth=0.25
and call the program like this
C:>font3d font=arial.ttf config=test.def
it will create exactly the same output file as if you used a much longer
command line:
C>font3d font-path=C:\WINDOWS\SYSTEM;C:\FONTS output-path=C:\POV\INCLUDE
cut=0.003 depth=0.25 font=arial.ttf
Output Formats
--------------
Currently, five different output formats are supported:
o Persistence of Vision 2.x
o Vivid 2.0
o AutoCad DXF
o RenderMan RIB
o RAW Triangles
Each format has it's own set of capabilities, so remember that some Font3D
features may not be available with all output file types. Table 2.1 shows
which program options are available for each file format.
Output | Smooth Object Object Flat Rounded
Format | Triangles Textures Naming Bevels Bevels
_______________|____________________________________________________
|
POV 2.x | Yes Yes Yes Yes Yes
Vivid 2.0 | Yes No No Yes Yes
AutoCad DXF | No No No Yes No
RenderMan RIB | Yes No No Yes Yes
RAW Triangles | No No No Yes No
|
______________________________________________________________________________
Table 2.1: Program features available with each supported output format.
Textures
--------
Font3D now allows a texture identifier to be assigned to each individual
component of a text object (faces, bevels, sides). Currently, only the POV
file format uses this information when writing an output file. As we have
previously seen, an object can have up to five different parts: a front face,
a front bevel, a side, a back bevel, and a back face. There are eight
different program settings that can be used to give a texture to one of these
object parts: front-face-texture, back-face-texture, side-texture,
front-bevel-texture, back-bevel-texture, face-texture, bevel-texture, and
texture. The first five of these only set the texture of one individual
component, while the last three assign the same texture to a group of
components.
Here's an example. Let's say you've already declared two textures in a POV
2.x scene description file:
// BEGIN POV SCENE DESCRIPTION FILE
#include "colors.inc"
#include "textures.inc"
#declare FaceTexture =
texture
{
pigment { color IndianRed }
}
#declare SideTexture =
texture
{
DMF_Wood1
rotate <3,5,13>
}
To make Font3D assign the first texture to both faces of an object, and the
second texture to its sides, invoke the program like this:
C:>font3d font=arial.ttf face-texture=FaceTexture side-texture=SideTexture
string=Font3D
The face-texture option assigns 'FaceTexture' to both the object's front and
the back faces at the same time, while side-texture assigns 'SideTexture' to
the it's sides. By default, the object Font3D generates is given the name
"FONT3D_OBJECT", so the rest of our scene description file would look
something like this:
#include "font3d.inc"
object { FONT3D_OBJECT }
// END OF POV SCENE DESCRIPTION FILE
Note that the output file is included after #declaring the textures. It is
also important to remember that you have to do either none of your texturing
with Font3D (ie. do it in your scene description file), or all of your
texturing with Font3D. Any texture applied to an object in a scene
description file will override the textures assigned to it by this program.
Bevels
------
The way in which Font3D bevels the edges of an object is not unlike how a
router might cut into a piece of wood. There are two parameters that define
the size and appearance of a bevel: face-cut, and side-cut. face-cut
specifies the size of the cut that a bevel will make into the face of an
object. Likewise, side-cut specifies the size of cut that will be made into
the side of an object (see Figure 2.1). These two settings are actually
generalization of the following, more precise versions: front-face-cut,
front-side-cut, back-face-cut, and back-side-cut. To cause an object's edges
to be beveled, all you need to do is specify a cut value. By default, all the
cut settings are zero, ie. beveling is turned off.
|<----------- Depth ------------->|
| |
| Front | | Back |
| Side | Object | Side |
|<-Cut ->| Side |<- Cut->|
| | | | |
______ ________v________ _____
Front / \ Back
Face / \ Face
Cut / \ Cut
______ / \ _____
| Object |
| Cross-Section |
| |
Object | | Object
Front | | Back
Face --->| |<--- Face
| |
| |
______________________________________________________________________________
Figure 2.1: Cross section of a beveled object generated by Font3D.
If you've played around with the beveling features at all, you probably
already know that making too large a cut into the face of an object just won't
work. In fact, the beveling and rounding alogorithm that Font3D uses is only
designed to create subtle effects, not large, easy-to-see-from-a-distance
bevels. With proper lighting though, a small bevel (or rounded edge) on an
object can make a scene much more realistic. For many fonts, usable face-cut
values will be less than about 0.006, but you may be surprised at how much of
an effect this can have on an object's perceived realism.
Most times, you will probably want to keep things simple. Here is an example
of how you might use the cut option to bevel a text object:
C:>font3d font=arial.ttf string=TestString cut=0.003
Rounded Edges
-------------
Rounded edges are very similar in most respects to beveled edges. You use the
bevel-type=ROUND switch, along with a non-zero cut, to generate them. Font3D
only approximates how a rounded edge might look by creating a flat bevel, and
then manipulating the vertex normals of those triangles. For this reason (and
for the reasons mentioned above) you will want to keep your face-cut values
relatively small. Here's an example of how to make Font3D round the edges of
an object:
C:>font3d font=arial.ttf string=TestString cut=0.003 bevel-type=ROUND
Visibility
----------
The visibility of each individual part of an object can be turned on or off by
using one or more of the following switches: front-face, front-bevel, sides,
back-bevel, back-face, faces, bevels. The first five of these control the
visibility of one distinct part, while the last two control groups of
components. These options are useful if for any particular scene only part of
an object will ever be visible. For example, if you were using Font3D to
generate raised lettering on a planar surface, you could make invisible the
sides, the back bevel, and the back face, so that only the triangles making up
the front face, and the front bevel are written to the output file. A sample
invocation of the program could look like this:
C:>font3d font=arial.ttf sides=OFF back-bevel=OFF back-face=OFF
Remember that the visibility settings only control whether triangles are
written to a file, not whether they are actually a part of the object. If you
have specified a face-cut value for bevels, then simply using bevels=OFF will
not keep the object from being beveled. It will however, cause there to be a
small gap between the object's faces and the sides, where the bevels would
have been. By default, all of the components of an object will be generated.
SECTION THREE: Program Options
_____________________________________________________________________________
This section contains a complete reference of all Font3D options. Each one of
the following commands can either be used on the command line, or in a
configuration file. All commands (eg. back-bevel, back-bevel-texture) must be
in lowercase. All symbolic values (eg. ON, OFF, SMOOTH, etc...) must be in
uppercase.
-----------------------------------------------------------------------------
back-bevel
-----------------------------------------------------------------------------
Syntax: back-bevel=ON|OFF
Description: This option determines the visibility of an object's back
bevel (or rounded edge). If it is set to OFF, then
triangles that make up the object's back bevel will not be
generated. Note that this only keeps the back bevel
triangles from being written to an output file; if either
back-face-cut or back-side-cut are nonzero, then there
will be a small gap between the back face and sides of the
generated object (where the bevel would have been).
Default: ON
Example: C:>font3d font=arial.ttf back-bevel=OFF
See Also: bevels, cut
-----------------------------------------------------------------------------
back-bevel-texture
-----------------------------------------------------------------------------
Syntax: back-bevel-texture=string
Description: Currently, this option is only useful if the output file
format type is set to POV (with the format switch). It
specifies the name of a texture that will be associated with
the back bevel of an object. See Section Two: Using The
Program for more information on assigning textures to
different object components.
Default: None.
Example C:>font3d font=arial.ttf back-bevel-texture=BBTexture
See Also: back-face-texture, bevel-texture, face-texture,
front-bevel-texture, front-face-texture, side-texture,
texture
-----------------------------------------------------------------------------
back-face
-----------------------------------------------------------------------------
Syntax: back-face=ON|OFF
Description: This option determines the visibility of an object's back
face. If the switch is set to OFF, then triangles that make
up the back face will not be written to the output file.
Default: ON
Example: C:>font3d font=arial.ttf back-face=OFF
See Also: faces, front-face
-----------------------------------------------------------------------------
back-face-cut
-----------------------------------------------------------------------------
Syntax: back-face-cut=float
Description: This option specifies the size of cut that will be made into
the back face of an object by it's back bevel (or rounded
edge). The default is zero, which causes the back bevel not
to cut into the back face of the object at all. If both
back-side-cut and back-face-cut are zero, then Font3D will
not bevel (or round) the back edges of an object. Large cut
sizes can cause some problems, so keep this number
relatively small.
Default: 0.0
Example: C:>font3d arial.ttf back-face-cut=0.005
See Also: back-side-cut, cut, face-cut, front-face-cut,
front-side-cut, side-cut
-----------------------------------------------------------------------------
back-face-texture
-----------------------------------------------------------------------------
Syntax: back-face-texture=string
Description: Currently, this option is only useful if the output file
format type is set to POV (with the format switch). It
specifies the name of a texture that will be associated with
the back face of an object. See Textures in Section Two:
Using The Program for more information on assigning textures
to different object components.
Default None.
Example: C:>font3d font=arial.ttf back-face-texture=BFTexture
See Also: back-face-texture, bevel-texture, face-texture,
front-bevel-texture, front-face-texture, texture
-----------------------------------------------------------------------------
back-side-cut
-----------------------------------------------------------------------------
Syntax: back-side-cut=float
Description: This option specifies the size of cut that will be made into
the side of an object by it's back bevel (or rounded edge).
The default is zero, which causes the back bevel not to cut
into the side of an object at all. If both back-side-cut
and back-face-cut are zero, then Font3D will not bevel (or
round) the back edges of an object.
Default: 0.0
Example C:>font3d font=arial.ttf back-side-cut=0.005
See Also: back-face-cut, cut, face-cut, front-face-cut,
front-side-cut, side-cut
-----------------------------------------------------------------------------
bevel-texture
-----------------------------------------------------------------------------
Syntax: bevel-texture=string
Description: Currently, this option is only useful if the output file
format type is set to POV (with the format switch). It
specifies the name of a texture that will be associated with
both the front and back bevels of an object. See Textures
in Section Two: Using The Program for more information on
assigning textures to different object components. This is
the same as setting both front-bevel-texture and back-bevel-
texture to the same value.
Default: None.
Example: C:>font3d font=arial.ttf bevel-texture=BEVEL_TEXTURE
See Also: back-bevel-texture, back-face-texture, face-texture,
front-bevel-texture, front-face-texture, side-texture,
texture
-----------------------------------------------------------------------------
bevel-type
-----------------------------------------------------------------------------
Syntax: bevel-type=ROUND|FLAT
Description: This option specifies the kind of beveled edges to generate.
FLAT bevels can be used with any triangle type, and with any
output file format. ROUND bevels are only Font3D's
approximation of what a real rounded edge might look like.
They are generated by altering the triangle vertex normals,
and thus depend on a particular renderer's ability to
recognize 'smoothed' triangles as a primitive
object. The rounded effect will only be apparent if
triangle-type is set to SMOOTH.
Default: FLAT
Example: C:>font3d font=arial.ttf bevel-type=ROUND
See Also: triangle-type
-----------------------------------------------------------------------------
bevels
-----------------------------------------------------------------------------
Syntax: bevels=ON|OFF
Description: This option determines the visibility of an object's front
and back bevels (or rounded edges). Note that this only
keeps the triangles from being written to the output file.
If either front-face-cut or front-side-cut are nonzero, then
there will be a small gap between the front face and sides
of a generated object. Likewise, if either back-face-cut,
or back-side-cut are nonzero, then there will be a small gap
between the back face and sides of the generated object
where the bevel would have been. Using this option is the
same as using both front-bevel and back-bevel with the same
value.
Default: ON
Example: C:>font3d font=arial.ttf bevels=OFF
See Also: back-bevel, front-bevel
-----------------------------------------------------------------------------
char
-----------------------------------------------------------------------------
Syntax: char=character
Description: This option specifies the character to generate. If both a
character and a string are specified, then only the string
is generated.
Default: 'A'
Example: C:>font3d font=arial.ttf char=T
See Also: code, string
-----------------------------------------------------------------------------
code
-----------------------------------------------------------------------------
Syntax: code=integer
Description: This option specifies the character code of a single glyph
to generate. If both a character code and a string are
specified, then only the string is generated.
Default: 65
Example: C:>font3d font=arial.ttf code=81
See Also: char, string
-----------------------------------------------------------------------------
config
-----------------------------------------------------------------------------
Syntax: config=filename
Description: This switch specifies a text file that will be processed as
if it were a list of command line options. The options must
look exactly as they would on the command line, except that
they may be separated by linefeeds.
Default: None.
Example: C:>font3d font=arial.ttf config=bevelcnf.def
-----------------------------------------------------------------------------
cut
-----------------------------------------------------------------------------
Syntax: cut=float
Description: This option specifies the amount that a bevel (or rounded
edge) will cut into an object. The default is 0.0, which
causes Font3D not to bevel (or round) the edges of an
object. Using this option is the same as using both face-
cut and side-cut with the same value.
Default: 0.0
Example: C:>font3d font=arial.ttf cut=0.005
See Also: back-face-cut, back-side-cut, face-cut, front-face-cut,
front-side-cut, side-cut
-----------------------------------------------------------------------------
depth
-----------------------------------------------------------------------------
Syntax: depth=float
Description: This switch controls an object's thickness.
Default: 0.2
Example: C:>font3d font=arial.ttf depth=1.275
-----------------------------------------------------------------------------
face-cut
-----------------------------------------------------------------------------
Syntax: face-cut=float
Description: This option specifies the amount that a bevel (or rounded
edge) will cut into one of the faces of an object. Using
this option is the same as using front-face-cut and front-
side-cut with the same value.
Default: 0.0
Example: C:>font3d font=arial.ttf face-cut=0.005
See Also: back-face-cut, back-side-cut, cut, front-face-cut,
front-side-cut, side-cut
-----------------------------------------------------------------------------
face-texture
-----------------------------------------------------------------------------
Syntax: face-texture=string
Description: Currently, this option is only useful if the output file
format type is set to POV (with the format switch). It
specifies the name of a texture that will be associated with
both the front and back faces of an object. See Textures
in Section Two: Using The Program for more information on
assigning textures to different object components. Using
this option is the same as using both front-face-texture and
back-face-texture with the same values.
Default: None.
Example: C:>font3d font=arial.ttf face-texture=FACE_TEXTURE
See Also: back-bevel-texture, back-face-texture, bevel-texture,
front-bevel-texture, front-face-texture, texture
-----------------------------------------------------------------------------
faces
-----------------------------------------------------------------------------
Syntax: faces=ON|OFF
Description: This option determines the visibility of an object's front
and back faces. If the switch is set to OFF, then triangles
that make up the front and back faces of the object will not
be written to the output file. Using this option is the
same as using both front-face and back-face with the same
value.
Default: ON
Example: C:>font3d font=arial.ttf faces=OFF
See Also: back-face, back-bevel, bevels, front-bevel, front-face,
sides
-----------------------------------------------------------------------------
font
-----------------------------------------------------------------------------
Syntax: font=filename
Description: This option determines the typeface in which the object will
be generated. filename must be a Windows or Macintosh
TrueType font file (usually of the form *.TTF). If the font
is not in the current working directory, then you should
specify both the path and filename here. This is the only
option that is required but not associated with a default
value; you must either provide it on the command line, or in
a configuration file.
Default: None.
Example: C:>font3d font=arial.ttf
See Also: map
-----------------------------------------------------------------------------
font-path
-----------------------------------------------------------------------------
Syntax: font-path=pathstring
Description: This option takes a semicolon or colon separated list of
directories that make up the path of where to locate the
truetype file. If the font is not found in any of those
directories, then the current directory is used before
finally giving up.
Default: None.
Examples: C:>font3d font-path=C:\fonts;C:\MISC\FONTS font=arial.ttf
C:>font3d font-path=/usr/local/fonts:/home/fonts
font=arial.ttf
See Also: output-path
-----------------------------------------------------------------------------
format
-----------------------------------------------------------------------------
Syntax: format=POV|RAW|RIB
Description: This switch specifies which format the output file will be
written in. The following options are available:
POV Causes the output file to be written in POV's
(version 2.x) scene description language. All of
Font3D's texturing options are available with this
file format, as are all triangle and bevel types.
RAW Causes the output file to be written as raw
triangle data. Texturing options are ignored with
this file format, as are requests for SMOOTH
triangles and ROUNDed edges.
RIB Causes the output file to be written as a RenderMan
Interface ByteStream file.
DXF Causes the output file to be written as an AutoCad
Drawing Interchange File.
VIVID Causes the output file to be written in Vivid 2.0
scene description language, as a list of triangle
patches.
See Output Formats in Section Two: Using the Program for
more information on the specifics of each file format.
Default: POV
Example: C:>font3d font=arial.ttf format=RIB
See Also: bevel-type, triangle-type
-----------------------------------------------------------------------------
front-bevel
-----------------------------------------------------------------------------
Syntax: front-bevel=ON|OFF
Description: This option determines the visibility of an object's front
bevel (or rounded edge). If it is set to OFF, then
triangles that make up the object's front bevel will not be
generated. Note that this only keeps the front bevel
triangles from being written to an output file; if either
front-face-cut or front-side-cut are nonzero, then there
will be a small gap between the front face and sides of the
generated object (where the bevel would have been).
Default: ON
Example: C:>font3d font=arial.ttf front-bevel=OFF
See Also: bevels, back-bevel, back-face, faces, front-face, sides
-----------------------------------------------------------------------------
front-bevel-texture
-----------------------------------------------------------------------------
Syntax: front-bevel-texture=string
Description: Currently, this option is only useful if the output file
format type is set to POV (with the format switch). It
specifies the name of a texture that will be associated with
the back bevel of an object. See Section Two: Using
The Program for more information on assigning textures to
different object components.
Default: None.
Example: C:>font3d font=arial.ttf front-bevel-texture=FBEVEL_TEXTURE
See Also: back-bevel-texture, back-face-texture, bevel-texture,
face-texture, front-face-texture, side-texture, texture
-----------------------------------------------------------------------------
front-face
-----------------------------------------------------------------------------
Syntax: front-face=ON|OFF
Description: This option determines the visibility of an object's front
face. If the switch is set to OFF, then triangles that make
up the front face will not be written to the output file.
Default: ON
Example: C:>font3d font=arial.ttf front-face=OFF
See Also: back-face, faces
-----------------------------------------------------------------------------
front-face-cut
-----------------------------------------------------------------------------
Syntax: front-face-cut=float
Description: This option specifies the size of cut that will be made into
the front face of an object by it's front bevel (or rounded
edge). The default is zero, which causes the front bevel
not to cut into the front face of the object at all. If
both front-side-cut and front-face-cut are zero, then Font3D
will not bevel (or round) the front edges of an object.
Large cut sizes can cause some problems, so keep this number
relatively small.
Default: 0.0
Example: C:>font3d font=arial.ttf front-face-cut=0.003
See Also: cut, back-face-cut, back-side-cut, face-cut, front-side-cut,
side-cut
-----------------------------------------------------------------------------
front-face-texture
-----------------------------------------------------------------------------
Syntax: front-face-texture=string
Description: Currently, this option is only useful if the output file
format type is set to POV (with the format switch). It
specifies the name of a texture that will be associated with
the front face of an object. See Textures in Section Two:
Using The Program for more information on assigning textures
to different object components.
Default: None.
Example: C:>font3d font=arial.ttf front-face-texture=FFACE_TEXTURE
See Also: back-bevel-texture, back-face-texture, bevel-texture,
face-texture, front-bevel-texture, side-texture, texture
-----------------------------------------------------------------------------
front-side-cut
-----------------------------------------------------------------------------
Syntax: front-side-cut=float
Description: This option specifies the size of cut that will be made into
the side of an object by it's front bevel (or rounded edge).
The default is zero, which causes the front bevel not to cut
into the side of an object at all. If both front-side-cut
and front-face-cut are zero, then Font3D will not bevel (or
round) the front edges of an object.
Default: 0.0
Example: C:>font3d font=arial.ttf front-side-cut=0.007
See Also: back-face-cut, back-side-cut, cut, face-cut, front-face-cut,
side-cut
-----------------------------------------------------------------------------
map
-----------------------------------------------------------------------------
Syntax: map=MAC|MS
Description: This switch specifies which character encoding method is
used in a particular font. MAC instructs Font3D to look for
a Macintosh type character encoding table, while MS requests
that it look for a Microsoft Windows type character encoding
table.
Default: MS
Example: C:>font3d font=arial.ttf map=MAC
See Also: font
-----------------------------------------------------------------------------
name
-----------------------------------------------------------------------------
Syntax: name=string
Description: If the output format supports it, Font3D can assign an
identifier to the object. The way in which this is done
will vary depending on which output format is selected. See
Output Formats in Section Two: Using the Program for more
information.
Default: FONT3D_OBJECT
Example: C:>font3d font=arial.ttf string=Test name=TEST_STRING
-----------------------------------------------------------------------------
output
-----------------------------------------------------------------------------
Syntax: output=filename
Description: This switch specifies the name of the file to which the
object information will be written.
Default: font3d.inc
Example: C:>font3d font=arial.ttf char=T output=t.inc
See Also: format
-----------------------------------------------------------------------------
output-path
-----------------------------------------------------------------------------
Syntax: output-path=pathname
Description: This option takes a single directory which will be prepended
to the output filename. A trailing slash is not needed.
Default: font3d.inc
Example: C:>font3d output-path=C:\tmp font=arial.ttf char=T
output=t.inc
See Also: font-path
-----------------------------------------------------------------------------
precision
-----------------------------------------------------------------------------
Syntax: precision=integer
Description: This switch specifies the floating point precision of
the output file.
Default: 6
Example: C:>font3d font=arial.ttf precision=4
-----------------------------------------------------------------------------
resolution
-----------------------------------------------------------------------------
Syntax: resolution=integer
Description: This switch specifies the number of line segments that are
used to approximate a curved section of a font outline (it
is this outline that will be eventually extruded).
Default: 5
Example: C:>font3d font=arial.ttf char=8 resolution=10
-----------------------------------------------------------------------------
side-cut
-----------------------------------------------------------------------------
Syntax: side-cut=float
Description: This option specifies the amount that a bevel (or rounded
edge) will cut into the sides of an object. This is the
same as giving front-side-cut and back-side-cut the same
value.
Default: 0.0
Example: C:>font3d font=arial.ttf side-cut=0.003
See Also: back-face-cut, back-side-cut, cut, face-cut, front-face-cut,
front-side-cut
-----------------------------------------------------------------------------
side-texture
-----------------------------------------------------------------------------
Syntax: side-texture=string
Description: Currently, this option is only useful if the output file
format type is set to POV (with the format switch). It
specifies the name of a texture that will be associated with
sides of an object. See Textures in Section Two: Using The
Program for more information on assigning textures to
different object components.
Default: None.
Example: C:>font3d font=arial.ttf side-texture=SIDE_TEXTURE
See Also: back-bevel-texture, back-face-texture, bevel-texture,
face-texture, front-bevel-texture, front-face-texture,
texture
-----------------------------------------------------------------------------
sides
-----------------------------------------------------------------------------
Syntax: sides=ON|OFF
Description: This option determines the visibility of an object's sides.
If the switch is set to OFF, then triangles that make up the
sides of the object will not be written to the output file.
Default: ON
Example: C:>font3d font=arial.ttf sides=OFF
See Also: back-bevel, back-face, bevels, faces, front-bevel,
front-face
-----------------------------------------------------------------------------
string
-----------------------------------------------------------------------------
Syntax: string=string
Description: This option specifies a string of text to extrude into an
object. string overrides both char and code regardless of
the order in which they are given.
Default: None.
Example: C:>font3d font=arial.ttf string=TestString
See Also: char, code
-----------------------------------------------------------------------------
texture
-----------------------------------------------------------------------------
Syntax: texture=string
Description: Currently, this option is only useful if the output file
format type is set to POV (with the format switch). It
specifies the name of a texture that will be associated with
the object. See Textures in Section Two: Using The Program
for more information on assigning textures to different
object components. Using this option is the same as using
face-texture, side-texture, and bevel-texture with the same
values.
Default: None.
Example: C:>font3d font=arial.ttf texture=Blue_Agate
See Also: back-bevel-texture, back-face-texture, bevel-texture,
face-texture, front-bevel-texture, front-face-texture,
side-texture
-----------------------------------------------------------------------------
triangle-type
-----------------------------------------------------------------------------
Syntax: triangle-type=FLAT|SMOOTH
Description: This switch tells Font3D which type of triangle primitive to
use when building an object. FLAT triangles are compatible
with all output file formats, and usually require less
memory by a renderer, but the ROUND bevel-type is not
supported. SMOOTH triangles, on the other hand, are not
available with some output file formats, but in many cases
are capable of producing a much better-looking object.
Rounded edges are only generated if the triangle-type is
SMOOTH.
Default: SMOOTH
Example: C:>font3d font=arial.ttf triangle-type=SMOOTH
See Also: bevel-type, format
-----------------------------------------------------------------------------
xpos
-----------------------------------------------------------------------------
Syntax: xpos=LEFT|CENTER|RIGHT
Description: This switch controls an object's positioning along the x-
axis. The following options are available:
LEFT Places the object so that it's rightmost point
is flush with the x=0 plane.
CENTER Centers the object with respect to the x=0
plane.
RIGHT Places the object so that it's leftmost point is
flush with the x=0 plane.
Default: CENTER
Example: C:>font3d font=arial.ttf xpos=LEFT
See Also: ypos, zpos
-----------------------------------------------------------------------------
ypos
-----------------------------------------------------------------------------
Syntax: ypos=TOP|CENTER|BOTTOM|BASELINE
Description: This switch controls an object's positioning along the y-
axis. The following options are available:
TOP Places the object so that it's topmost point is
flush with the y=0 plane.
CENTER Centers the object with respect to the y=0
plane.
BOTTOM Places the object so that it's bottommost point
is flush with the y=0 plane.
BASELINE Places the object so that its baseline is flush
with the y=0 plane.
Default: CENTER
Example: C:>font3d font=arial.ttf ypos=BASELINE
See Also: xpos, zpos
-----------------------------------------------------------------------------
zpos
-----------------------------------------------------------------------------
Syntax: zpos=FRONT|CENTER|BACK
Description: This option controls an object's positioning along the x-
axis.
FRONT Places the object so that it's front face is
flush with the z=0 plane.
CENTER Centers the object with respect to the z=0
plane.
BACK Places the object so that it's back face is
flush with the z=0 plane.
Default: CENTER
Example: C:>font3d font=arial.ttf zpos=FRONT
See Also: xpos, ypos