C4 Engine

Facebook Twitter Google+ YouTube IndieDB

C4 Engine Features

C4 Game Engine Architecture

Click for a larger version.

Game Engine Architecture

  • The C4 Engine is highly regarded in the industry for its well-designed architecture.
  • It is also known for having extremely clean source code with a well-thought-out class hierarchy.
  • Everything in the engine has been done the right way, and never rushed to meet a deadline.
  • C4 has been in development for over 14 years and has undergone a continuous series of meticulous refinements during that time.

Lighting and Shadows

  • Full-scene dynamic lighting and shadows.
  • Point, spot, and infinite light sources.
  • Volumetric radiosity spaces for indirect lighting.
  • 2D and cubic texture projections.
  • Large-scale cascaded shadow mapping.
  • Spot shadow mapping and cube shadow mapping.

World Editor

  • World editor runs as an engine plugin and uses the engine's own user interface system.
  • Powerful and intuitive interface design that allows fast level creation.
  • Zero build time, so results are immediately visible while editing a level.
  • Includes a large variety of tool palettes.
  • Support for multiple undo.

Shaders

  • Large variety of built-in shading features.
  • Support for arbitrary custom cross-platform shaders.
  • Latest 3D hardware features are used by the engine.
  • Comprehensive bump/normal mapping capabilities.
  • Parallax bump texture mapping.
  • Horizon bump shadow mapping.
  • Bumpy reflection and refraction.
  • Cook-Torrance microfacet shading.
  • Cube environment reflections.
  • Realistic water shading.

Shader Editor

  • Custom shaders are edited graphically and work on all platforms without modification.
  • A wide variety of packaged components are provided for easy shader design.
  • Shaders automatically work with all types of light sources and atmospheric effects without having to explicitly create variations.
  • Painting features provide spatially parameterized inputs to shaders so that material variation can be painted into the scene.

Voxel Terrain

  • Terrain is based on voxel maps that can be edited in real time.
  • Direct support for vertical cliffs, overhangs, caves, arches, etc., that are impossible with height-based terrain systems.
  • Seamless levels of detail are automatically created using our exclusive multiresolution Transvoxel™ stitching technology.
  • Editor provides sculpting and texture painting tools.

Script Editor

  • Scripts are edited graphically for easy artist/designer access.
  • Games can easily define custom script components, and these automatically appear in the editor.
  • Controllers can advertise custom function calls that can be accessed from scripts.
  • Scripts support variables, looping, and conditional execution, all shown in a concise graphical manner.
  • Support for arbitrary expression evaluation in scripts.
  • Multiple scripts can be attached to one object and respond to different sets of events.

Special Effects

  • Screen-space ambient occlusion (SSAO).
  • Full-scene cinematic motion blur.
  • Distortion effects such as heat haze and shockwaves.
  • High-quality and high-performance procedural fire effects.
  • True volumetric light shaft effects.
  • Volumetric fog with multiple density functions.
  • Interactive in-game interface panels.
  • Fully extensible particle systems.
  • Voxel-based blob (metaball) particle systems.
  • Surface markings on arbitrary geometry.
  • Emission glow and specular bloom effects.

User Interface / Panels

  • Built-in user interface system includes windows, buttons, menus, scroll bars, icons, list boxes, sliders, etc.
  • Complete support for Unicode text rendering and user input.
  • Fully interactive in-game interface panels can be created graphically in a panel editor.
  • Custom scripts can be attached to panel items for limitless interactivity.
  • Panels have an extensible animation system with many built-in techniques.
  • Proprietary cross-platform movie format can be used to play movies to windows or panels.

World Manager / Scene Graph

  • Clean class hierarchy for scene graph nodes, including geometries, cameras, lights, sounds, zones, portals, triggers, markers, and special effects.
  • State-of-the-art portal system used for indoor visibility determination and lighting analysis.
  • High-quality impostor system for rendering large numbers of instanced objects like trees with fully dynamic lighting and shadows.
  • General state serialization support for saving worlds.
  • Quicksave and quickload capabilities for fast delta saves during gameplay.
  • Separation between per-instance and shared data.
  • External world referencing / instancing (for prefabs, etc.). Nested worlds supported.
  • Powerful hierarchical animation blending system.
  • Full skeletal hierarchy support for skinned meshes.
  • Extensible controller design with tool integration.
  • Substance registration system for identifying stone, metal, wood, etc.

Art Pipeline / Tools

  • Support for the new OpenGEX format, which includes highly robust exporters for 3D Studio MAX, Maya, and Blender. We developed this format ourselves, and we wrote the exporters, so they work extremely well with the C4 Engine.
  • Support for the Collada scene format, enabling models to be imported from 3D Studio MAX, Maya, XSI, Blender, and other content creation packages.
  • Import plugins can automatically import textures and merge materials with existing scene.
  • Textures imported from TGA format, (16/24/32-bit with or without compression).
  • Texture tool generates mipmaps and applies S3TC compression.
  • Normal maps, parallax maps, horizon maps, and ambient occlusion channels calculated by texture tool.
  • Font generator creates Unicode font textures from system fonts. (Windows and Mac only.)
  • Resource packer utility generates PAK files to optimize and conceal resource access.

Physics

  • Built-in fully integrated physics library.
  • Rigid body simulation.
  • Real-time rope and cloth simulation.
  • Real-time large-scale fluid surface simulation.
  • Continuous collision detection.
  • Contact forces and friction.
  • Precise buoyancy forces.
  • Customizable force fields.
  • Joints (spherical, universal, discal, revolute, cylindrical, and prismatic).
  • Full networking support.

Input Devices

  • Generic treatment of keyboards and mice.
  • Broad support for USB devices such as joysticks, gamepads, steering wheels, etc.
  • Direct support for Xbox 360 controllers under Windows.
  • Events reported to game through an action binding system.

Audio

  • Fully spatialized 3D sound effects.
  • Doppler shift and other frequency effects.
  • Reverberation with multiple simultaneous environments.
  • Atmospheric absorption effects.
  • Directional sounds with cone attenuation.
  • Obstruction attenuation applied to direct and reflected paths.
  • Frequency-dependent volume settings for all effects.
  • Permeation system determines how far sounds travel through interiors.
  • Unlimited streaming music channels with seamless looping and concatenation.
  • Audio capture capabilities.

Core System

  • Cross-platform multiprocessor / multithreading support.
  • Resource management with support for pack files and caching.
  • Containers library (arrays, lists, maps, trees, graphs).
  • Mathematics and geometry library.
  • Generic lossless compression utilities.
  • Built-in support for the Open Data Description Language (OpenDDL).
  • Extensible system commands and variables.
  • Tool module plugin architecture.

Networking

  • Fast, reliable network implementation using UDP/IP.
  • Solid fault tolerance and hacker resistance.
  • Advanced security measures, including packet encryption.
  • Automatic routing of messages to object controllers.
  • Support for different delivery types (reliable, unrelaible, unordered).
  • Extensible and customizable message classes.
  • Supports heterogeneous clients—PCs, Macs, and consoles can all be connected to the same game.
  • Cross-platform internet voice chat.

Plugins

  • Plugins can depend on other plugins and load in the correct order.
  • Game modules can depend on custom plugins.
  • Logitech plugin can display images on G15 keyboards. (Windows only.)