Technology

Engine Overview

The TFP Engine is a realtime 3D game and multimedia application framework. It is engineered to be flexible,
cost effective and to minimize time to market by streamlining the content creation process. The engine features
a modular, object oriented design that allows the code base to be utilized for a wide variety of game and
multimedia applications. The design also eases portability to different types of hardware. A graphical level editor
and a full suite of plug-ins allow content to go directly from the creation tools to the game, without the
assistance of an engineer. Changes to dynamic lighting, particle systems and even physics parameters can
be made in real-time by non-programmers.

Engine Features

Support for fixed-function and per-vertex and per-pixel programmable graphics pipelines

General purpose rigid body physics solver with collision detection

Programmable multi-stage particle system with visual editor, capable of wide range of environmental and special effects such as fire, weather and explosions; including complex multi-part effects

Arbitrary-geometry sky domes, including animated geometry

Range-based fog and depth cueing

Positional 3D audio, with spatialization and Doppler shift

MP3 soundtrack support on selected platforms

Skeletal animation system supporting up to 4 bones per vertex

LOD support on both static and skinned meshes

Physics solvers and skeletal animation can be independently applied to different bones of the same mesh

TCP\IP based networking, with additional HTTP support for simplified access to web forms and XML data streams, including connection pooling for faster response

XML file parsing

Web-friendly compressed file packing system

Data instancing support for all applicable resources, including textures, materials, geometry and sounds, including optional automatic CRC-based instancing for selected data types

Complete platform and hardware abstraction; change hardware without altering the game code, modify only the hardware code itself

Object-oriented C++ architecture with a large variety of built-in debugging aides, including memory validation, recursive object validation and "self debugging" mode - the engine can produce a dump of the current call stack to a text file, including fully qualified function names instead of mangled symbols, without an external debugger

Multi-threading and multi-core friendly; internal object and data managers can each be run independently

Modular design allows entire engine components to be altered, upgraded or replaced with minimal disruption to game code

Automatic feature scaling to run-time hardware platform, including dynamic adjustment of texture resolution and other features

Unique scene view system allows multiple view "portals" into the same scene, each with different camera and lighting setups. Scene views can be sent to any valid render target, including textures. Create multi-player split screen views, night vision effects, picture-in-a-picture or even wild effects like magic mirrors that reflect the scene with different lighting