Skip NavigationTFPSoft
Games Gallery Technology Fun Support About Contact


[Race Track]

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.

[Level Editor] [Level editor, particles.]

Engine Features

  • Coin-op hardware support
  • Visual editor with hierarchical scene graph allows easy, artist-controlled content changes without programmer assistance
  • 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
  • Multi-device support, allows multiple display adapters, sound cards, coin-drops, joysticks and more to be utilized simultaneously
  • Automatic split-screen across multiple display adapters without special driver support on compatible devices
  • Extensive fully-indexed documentation