C4 Engine
   HOME

TheInfoList



OR:

The C4 Engine is a proprietary computer
game engine A game engine is a software framework primarily designed for the development of video games and generally includes relevant libraries and support programs. The "engine" terminology is similar to the term "software engine" used in the software ...
developed by Terathon Software that is used to create 3D games and other types of interactive virtual simulations for
PlayStation 5 The PlayStation 5 (PS5) is a home video game console developed by Sony Interactive Entertainment. Announced as the successor to the PlayStation 4 in April 2019, it was launched on November 12, 2020, in Australia, Japan, New Zealand, North ...
,
PlayStation 4 The PlayStation 4 (PS4) is a home video game console developed by Sony Interactive Entertainment. Announced as the successor to the PlayStation 3 in February 2013, it was launched on November 15, 2013, in North America, November 29, 2013 i ...
,
PlayStation 3 The PlayStation 3 (PS3) is a home video game console developed by Sony Interactive Entertainment, Sony Computer Entertainment. The successor to the PlayStation 2, it is part of the PlayStation brand of consoles. It was first released on Novemb ...
,
Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for se ...
( XP and later),
Mac OS X macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and lap ...
(versions 10.9 and later),
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, whi ...
, and iOS.


Development history

Development of the C4 Engine is led by computer graphics author
Eric Lengyel Eric Lengyel is a computer scientist specializing in game engine development, computer graphics, and geometric algebra. He holds a Ph.D. in computer science from the University of California, Davis and a master's degree in mathematics from Virgi ...
, who is also the founder of Terathon Software. Although in development sporadically for several years beforehand, the engine was first made available under a commercial license in May, 2005. Due to changing market conditions, the C4 Engine was retired in 2015, but an announcement has been made that it is returning in 2021.


Capabilities and features

The architecture of the C4 Engine is that of a layered collection of software components, in which the lowest layers interact with the computer hardware and operating system, and the higher layers provide
platform-independent In computing, cross-platform software (also called multi-platform software, platform-agnostic software, or platform-independent software) is computer software that is designed to work in several computing platforms. Some cross-platform software r ...
services to the game code. While a considerable portion of the engine is dedicated to 3D graphics, there are also large components dedicated to functionality pertaining to audio, networking, physics, input devices, and scripting. Documentation for the engine is available online through a set of API web pages and a wiki.


Graphics

The C4 Engine is based on the
OpenGL OpenGL (Open Graphics Library) is a cross-language, cross-platform application programming interface (API) for rendering 2D and 3D vector graphics. The API is typically used to interact with a graphics processing unit (GPU), to achieve hardwa ...
library on Windows, Mac, Linux, and iOS platforms, and it uses a one-pass-per-light forward rendering model. The engine is capable of rendering with several different types of light sources and shadowing methods. The primary method for rendering dynamic shadows is
shadow mapping Shadow mapping or shadowing projection is a process by which shadows are added to 3D computer graphics. This concept was introduced by Lance Williams in 1978, in a paper entitled "Casting curved shadows on curved surfaces." Since then, it has b ...
, and a variant of cascaded shadow mapping is used for very large outdoor scenes.
Shader In computer graphics, a shader is a computer program that calculates the appropriate levels of light, darkness, and color during the rendering of a 3D scene - a process known as ''shading''. Shaders have evolved to perform a variety of speci ...
s are created in C4 using one of two available methods, both of which isolate the user from the shader code required by the underlying graphics library. Simple shaders can be created by specifying a set of material attributes such as a
diffuse reflection Diffuse reflection is the reflection of light or other waves or particles from a surface such that a ray incident on the surface is scattered at many angles rather than at just one angle as in the case of specular reflection. An ''ideal'' ...
color, a
specular reflection Specular reflection, or regular reflection, is the mirror-like reflection of waves, such as light, from a surface. The law of reflection states that a reflected ray of light emerges from the reflecting surface at the same angle to the su ...
color, and a group of
texture map Texture mapping is a method for mapping a texture on a computer-generated graphic. Texture here can be high frequency detail, surface texture, or color. History The original technique was pioneered by Edwin Catmull in 1974. Texture mapping ...
s. The engine internally generates the necessary shader code for each combination of material and light type that it encounters when rendering a scene. Material attributes can be used to produce effects such as
normal mapping In 3D computer graphics, normal mapping, or Dot3 bump mapping, is a texture mapping technique used for faking the lighting of bumps and dents – an implementation of bump mapping. It is used to add details without using more polygons. A common ...
,
parallax mapping Parallax mapping (also called offset mapping or virtual displacement mapping) is an enhancement of the bump mapping or normal mapping techniques applied to textures in 3D rendering applications such as video games. To the end user, this means t ...
, horizon mapping, and bumpy reflections or refractions. C4 also includes a graphical Shader Editor that allows complex custom materials to be created using a large set of predefined operations. This method of designing materials enables greater creative freedom and functionality for expert users, but requires somewhat more work by the user. Materials created using the standard material attributes can be converted to custom shaders to serve as a starting point in the Shader Editor. The terrain capabilities of the C4 Engine are based on a voxel technology, allowing full 3D sculpting to produce features such as overhangs, arches, and truly vertical cliffs that would not be possible under a conventional height-based terrain system. Triangle meshes are generated from voxel data using the
Marching cubes Marching cubes is a computer graphics algorithm, published in the 1987 SIGGRAPH proceedings by Lorensen and Cline, for extracting a polygonal mesh of an isosurface from a three-dimensional discrete scalar field (the elements of which are sometim ...
algorithm, and seamless multiresolution level of detail is made possible by using the Transvoxel algorithm to stitch together regions of differing resolutions. The engine is capable of rendering a large variety of special effects, including
particle system A particle system is a technique in game physics, motion graphics, and computer graphics that uses many minute sprites, 3D models, or other graphic objects to simulate certain kinds of "fuzzy" phenomena, which are otherwise very hard to repr ...
s, procedural fire, electrical effects, volumetric fog, and weather phenomena. During a post-processing stage, the engine can also apply full-scene cinematic
motion blur Motion blur is the apparent streaking of moving objects in a photograph or a sequence of frames, such as a film or animation. It results when the image being recorded changes during the recording of a single exposure, due to rapid movement or lo ...
to the final image using a technique based on a velocity buffer, as well as glow and distortion effects. The engine does not provide the capability to design custom post-processing effects.


Audio

The C4 Engine can play sounds stored in the WAV format using 16-bit mono or stereo sampling, and audio data can be played from memory or streamed from disk. The engine plays sounds using a custom mixer that provides capabilities such as frequency shifting,
Doppler effect The Doppler effect or Doppler shift (or simply Doppler, when in context) is the change in frequency of a wave in relation to an observer who is moving relative to the wave source. It is named after the Austrian physicist Christian Doppler, who ...
,
reverberation Reverberation (also known as reverb), in acoustics, is a persistence of sound, after a sound is produced. Reverberation is created when a sound or signal is reflected causing numerous reflections to build up and then decay as the sound is abso ...
, and atmospheric absorption.


Networking

Multiplayer A multiplayer video game is a video game in which more than one person can play in the same game environment at the same time, either locally on the same computing system ( couch co-op), on different computing systems via a local area network, or ...
gameplay in C4 is supported by a two-layer messaging system that uses the
User Datagram Protocol In computer networking, the User Datagram Protocol (UDP) is one of the core communication protocols of the Internet protocol suite used to send messages (transported as datagrams in packets) to other hosts on an Internet Protocol (IP) netwo ...
to communicate among different computers connected to a game.


Physics

The C4 Engine has a native physics engine which can be used or allows the option for implementing a 3rd party solution instead.


Tools

The C4 Engine ships with basic game development tools required to make a modern game. Each tool is packaged as a plugin module that exists separately from the engine itself. Many tools make use of the comprehensive
graphical user interface The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, ins ...
system provided by the engine so that a consistent interface is presented to the user across multiple platforms.


World Editor

The World Editor tool is a 3D content creation application that is typically used to create game environments for use with the C4 Engine. It provides a large set of drawing and manipulation capabilities that are used to construct world geometry as well as many game necessities such as lights, sounds, triggers, and special effects. The World Editor can import scene information through the
OpenGEX The Open Game Engine Exchange (OpenGEX) format is a text-based file format designed to facilitate the transfer of complex 3D scene data between applications such as modeling tools and game engines. The OpenGEX format is built upon the data structu ...
and
COLLADA COLLADA (for ''COLLA''borative ''D''esign ''A''ctivity) is an interchange file format for interactive 3D applications. It is managed by the nonprofit technology consortium, the Khronos Group, and has been adopted by ISO as a publicly available ...
formats. This enables the use of content from a large number of
digital content creation Content creation is the contribution of information to any media and most especially to digital media for an end-user/audience in specific contexts. Content is "something that is to be expressed through some medium, as speech, writing or any of ...
programs such as
Autodesk Maya Autodesk Maya, commonly shortened to just Maya ( ), is a 3D computer graphics application that runs on Windows, macOS and Linux, originally developed by Alias and currently owned and developed by Autodesk. It is used to create assets for interact ...
or
3D Studio Max Autodesk 3ds Max, formerly 3D Studio and 3D Studio Max, is a professional 3D computer graphics program for making 3D animations, models, games and images. It is developed and produced by Autodesk Media and Entertainment. It has modeling capab ...
.


Script editor

The World Editor tool includes a graphical script editor designed to be accessible to artists and
level designer In video games, a level (also referred to as a map, stage, or round in some older games) is any space available to the player during the course of completion of an objective. Video game levels generally have progressively-increasing difficulty ...
s as well as programmers. The script editor allows the user to place various "methods" into a
directed graph In mathematics, and more specifically in graph theory, a directed graph (or digraph) is a graph that is made up of a set of vertices connected by directed edges, often called arcs. Definition In formal terms, a directed graph is an ordered pa ...
connected by "fibers" representing action dependencies and the order of execution. Scripts support loops through the creation of cycles in the graph structure, and conditional execution is supported by marking fibers to be followed or not followed based on the result value output by the methods at which they start. The engine ships with several standard script methods that perform simple actions such as enabling or disabling a scene node (for example, to turn a light on or off) and more complex actions such as evaluating an arbitrary mathematical expression. New script methods can be defined by the game code, and they appear in the script editor as custom actions that can be used by a level designer.


Panel editor

The World Editor tool includes a sub-editor called the "panel editor" providing for the creation of 2D interface panels that can be placed inside a 3D world. The panel editor lets the user place various types of widgets such as text and images in a panel effect node that is rendered as part of the scene. Panels can also include a special camera widget that displays the scene that is visible to a camera placed anywhere else in the same world. Interface panels are both dynamic and interactive. The engine provides an extensible set of "mutators" that can be applied to individual panel items to induce various forms of animation such as scrolling, rotation, or color change. A character in a game can interact with a panel by approaching it and clicking the mouse inside interactive items. Script can be attached to such items, causing a sequence of actions to occur when the player activates them.


Licensing

The C4 Engine is licensed for $100 per person, and this includes all future updates at no additional cost.


Academics

The C4 Engine has been licensed by many universities in connection with games-oriented software engineering curricula or for special research projects. These universities include
MIT The Massachusetts Institute of Technology (MIT) is a private land-grant research university in Cambridge, Massachusetts. Established in 1861, MIT has played a key role in the development of modern technology and science, and is one of the m ...
,
Georgia Tech The Georgia Institute of Technology, commonly referred to as Georgia Tech or, in the state of Georgia, as Tech or The Institute, is a public research university and institute of technology in Atlanta, Georgia. Established in 1885, it is part of ...
,
Worcester Polytechnic Institute Worcester Polytechnic Institute (WPI) is a Private university, private research university in Worcester, Massachusetts. Founded in 1865 in Worcester, WPI was one of the United States' first engineering and technology universities and now has 14 ac ...
(WPI),
McMaster University McMaster University (McMaster or Mac) is a public research university in Hamilton, Ontario, Canada. The main McMaster campus is on of land near the residential neighbourhoods of Ainslie Wood and Westdale, adjacent to the Royal Botanical Ga ...
, and the University of Kempten. Students in some of these programs are required to create their own games as part of a course using the C4 Engine, and many of these projects have gone on to be entered in the
Independent Games Festival The Independent Games Festival (IGF) is an annual festival at the Game Developers Conference (GDC), the largest annual gathering of the independent video game industry. Originally founded in 1998 to promote independent video game developers, ...
student competition. One particular university research project involved the TactaVest technology developed at WPI, and their use of the C4 Engine was featured in the Discovery Channel Canada television show ''Daily Planet'' airing on May 26, 2006.


Games using C4

Games that use the C4 Engine include: * ''
Fat Princess Adventures ''Fat Princess Adventures'' is an action role-playing video game developed by Fun Bits Interactive and published by Sony Computer Entertainment for PlayStation 4. This game is the second major installment in PlayStation Studios' Fat Princess fr ...
'' for
PlayStation 4 The PlayStation 4 (PS4) is a home video game console developed by Sony Interactive Entertainment. Announced as the successor to the PlayStation 3 in February 2013, it was launched on November 15, 2013, in North America, November 29, 2013 i ...
* '' World of Subways'' * '' City Bus Simulator 2010'' * '' Lego Wolf3D'' * '' Quest of Persia: Lotfali Khan Zand'' * '' The 31st'' * '' Utility Vehicle Simulator 2012'' * '' Bridge! The Construction Game'' * ''
Rolling Rolling is a type of motion that combines rotation (commonly, of an axially symmetric object) and translation of that object with respect to a surface (either one or the other moves), such that, if ideal conditions exist, the two are in contact ...
'' * '' Wingball'' * ''Ludicrous'' * '' Gremlin Invasion'' * '' Gremlin Invasion: Survivor'' * '' 1 Carnaval De Distorções'' * '' Tauchfahrt zur Titanic'' * ''Bounce!'' * '' The Visible Dark'' * '' World Hunter'' * ''Rabbit'' * '' GreySoul''


References


External links

*
C4 Engine
on
Mod DB Mod DB is a website that focuses on general video game modding. It was founded in 2002 by Scott "INtense!" Reismanis. As of September 2015, the Mod DB site has received over 604 million views, has more than 12,500 modifications registered, and ...

C4 Engine
on DevMaster {{Video game engines, state=collapsed Game engines for Linux IPhone video game engines MacOS programming tools PlayStation 3 software PlayStation 4 software Video game development software Video game development software for Linux Video game engines