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.
  • 2D and cubic texture projections.
  • Conventional and cascaded shadow mapping.
  • Highly robust stencil shadow volumes.

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.
  • Ambient lighting volumes.
  • 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.

Special Effects

  • Full-scene cinematic motion blur.
  • Distortion effects such as heat haze and shockwaves.
  • High-quality and high-performance procedural fire 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 Collada scene format, enabling models to be imported from 3D Studio MAX, Maya, XSI, Blender, and other content creation packages.
  • Collada importer 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 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.
  • 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

  • Browser plugin, based on Awesomium, can display and interact with web browsers in user interfaces. (Windows only.)
  • Logitech plugin can display images on G15 keyboards. (Windows only.)
  • Plugins can depend on other plugins and load in the correct order.
  • Game modules can depend on plugins.