Computer Game Engine Research
Here is a good description I found of what exactly a computer game engine is:
"A game engine is a system designed for the creation and development of video games. The leading game engines provide a software framework that developers use to create games for video game consoles, mobile devices and personal computers. The core functionality typically provided by a game engine includes a rendering engine (“renderer”) for 2D or 3D graphics, a physics engine or collision detection (and collision response), sound, scripting, animation, artificial intelligence, networking, streaming, memory management, threading, localisation support, and a scene graph. The process of game development is often economized, in large part, by reusing/adapting the same game engine to create different games, or to make it easier to "port" games to multiple platforms."- This information was found on wikipedia under the search "Game Engine" on 28/11/2013
Some game engines are designed for specific things, such as lighting or physics. I believe games back in the day used a number of game engines, where as now we have game engines that can handle all these things. It still remains that some game engines are better for certain things than others, that being particular game features such as lighting, but also whether they're more tailored to 2D games or 3D games. Although while researching different game engines, I cannot seem to find any information on what these game engines particularly excel in and where they're lacking as their sites generally seem to have listed that they're very good at every aspect of a game engine.
"A game engine is a system designed for the creation and development of video games. The leading game engines provide a software framework that developers use to create games for video game consoles, mobile devices and personal computers. The core functionality typically provided by a game engine includes a rendering engine (“renderer”) for 2D or 3D graphics, a physics engine or collision detection (and collision response), sound, scripting, animation, artificial intelligence, networking, streaming, memory management, threading, localisation support, and a scene graph. The process of game development is often economized, in large part, by reusing/adapting the same game engine to create different games, or to make it easier to "port" games to multiple platforms."- This information was found on wikipedia under the search "Game Engine" on 28/11/2013
Some game engines are designed for specific things, such as lighting or physics. I believe games back in the day used a number of game engines, where as now we have game engines that can handle all these things. It still remains that some game engines are better for certain things than others, that being particular game features such as lighting, but also whether they're more tailored to 2D games or 3D games. Although while researching different game engines, I cannot seem to find any information on what these game engines particularly excel in and where they're lacking as their sites generally seem to have listed that they're very good at every aspect of a game engine.
Here are a couple tables looking into many different factors of computer game engines - found on wikipedia under "Game Engine" on 28/11/2013:
Name | Primary programming language | Scripting | Cross-platform | SDL | 2D/3D oriented | Platform | Notable games | License | Notes and references |
---|---|---|---|---|---|---|---|---|---|
3D Rad | C# | AngelScript | No | No | 3D | Windows | wRace | Custom | 3D physics-based engine, no scripting required. |
Adventure Game Studio | C++ | AGSScript | Yes | No | 2D | Windows Linux | Chzo Mythos, The Blackwell Series | Artistic License 2.0 | Mostly used to develop third-person pre-rendered graphical adventure games, one of the most popular for developing amateur adventure games. |
Aleph One | C++ | Lua, Marathon markup language | Yes | Yes | 2.5D | Windows LinuxOS X | Aleph One (Marathon remake) | GPL | FPS engine |
Allegro library | C | Ada, C++, C#, D, Lisp,Lua, Mercury, Pascal,Perl, Python, Scheme | Yes | Yes | 2D | Windows LinuxOS X DOS | zlib | Graphics and audio | |
Angel2D | C++ | Lua | Yes | No | 2D | Windows LinuxOS X IOS | BSD | Angel is a cross-platform 2D game prototyping framework based on OpenGL and C++. It provides a broad set of basic game functionality in a lightweight fashion, and is designed to make it easy to get your game ideas up and running as quickly as possible. | |
Anura | C++ | Yes | Yes | 2D | Windows LinuxOS X iOS AndroidBlackBerry 10 | Frogatto & Friends | GPL | It is a fully-featured, cross-platform game engine. | |
Ardor3D | Java | Yes | No | 3D | cross-platform | zlib | Fork of jMonkeyEngine 2.0 | ||
Axiom Engine | C# | Yes | No | 3D | Windows LinuxOS X Solaris | LGPL | [1][2] | ||
Blender | C++ | Python | Yes | Yes | 3D | Windows LinuxOS X Solaris | Yo Frankie!, ColorCube | GPL | 2D/3D game engine packaged in a 3D modeler for quick and intuitive use; fully integrated Bullet physics library. |
Build engine | C | No | No | 2.5D | Windows LinuxOS X DOS | Duke Nukem 3D, Shadow Warrior, Blood | Custom | FPS engine, 2.5D (2D grid base geometry.) | |
Cafu Engine | C++ | Lua | Yes | No | 3D | Windows LinuxOS X | GPL orproprietary | Full game engine; graphics, audio, physics, scripting, networking, and map editor.[3] | |
ClanLib | C++ | Yes | Yes | 2.5D | Windows LinuxOS X | zlib | Self-described "toolkit", provides most game engine functionality and extensive GUI programming. | ||
Cocos2d | C++, Python,Objective-C | JavaScript, Java | Yes | No | 2D | Windows LinuxOS X IOS | Hardest Game Ever 2 | MIT | Ported to Linux, Mac OS X, iOS, Windows. iOS port uses Objective-C and integrates with Box2D and Chipmunk physics engines. Android port binds to Java. Cocos2d-x is multi-platform and uses C++. |
Construct Classic | Event Based | No | No | 2D | Windows | Minitroid | GPL/ BSD | ||
Core3D | Objective-C | Yes | Yes | 3D | Windows LinuxOS X IOS | CoreBreach | 3D EngineMIT, Source Code GPL v2 | The 3D engine powering CoreBreach, an anti-gravity racing game.[4] | |
Crystal Space | C++ | Java, Perl, Python | Yes | Yes | 3D | Windows LinuxOS X | Keepsake, The Crystal Scrolls, Yo Frankie! | LGPL | Graphics, audio, physics |
Cube | C++ | Yes | Yes | 3D | Windows LinuxOS X | AssaultCube, Cube | zlib | Previous generation (means it has a successor), 2D grid-based system, optimized for outdoor rather than indoor maps. | |
Cube 2 | C++ | Cubescript | Yes | Yes | 3D | Windows LinuxOS X | Cube 2, Red Eclipse | zlib | Efficient 6-directional height map based geometry (versus traditionalPolygon soup model), hence the name Cube, FPS engine. |
Delta3d | C++ | Python | Yes | No | 2.5D | cross-platform | LGPL | Uses modular libraries. | |
Dim3 | C++ | JavaScript | Yes | No | 3D | cross-platform | MIT | 3D game engine for the Mac (although finished games are cross-platform). | |
DimensioneX Multiplayer Engine | Java | Java, VBscript | Yes | No | 2.5D | cross-platform | Underworld Online | GPL | Produces browser games with pseudo-3D views, sounds and music. Games can be turned into Facebook Apps. Intended for beginners. Free support and hosting. |
Dreemchest | C++ | Lua | Yes | No | 2D | Windows, OS X,Android, iOS,Flash | Match them All | Custom | Cross-platform 2D engine. Box2D physics, WYSIWYG editor, Adobe(R) Flash(R) UIs, Localization System, Streaming, and DLC. |
Duality | C# | Plugin-based | No | No | 2D | Windows | Honourbound | MIT | General-purpose game development framework. Comes with WYSIWYG editor. |
Eclipse Origins | Visual Basic 6 | Windows only | No | 2D | Windows | Crystalshire, yoomxWorld | GPL | A 2D MMORPG engine with a very large community. Includes NPCs, maps, resources, dynamic sprites, animations, skills, a bank, player chat, items, and more. | |
ENIGMA | C++ | EDL | Yes | No | 2D | Windows LinuxOS X | GPL | A compiler for Game Maker projects that runs cross-platform. | |
Env3D | Java | Yes | No | 3D | cross-platform | GPL | 3D game engine that creates a simple interface for dynamically adding EnvObjects. Built on jMonkeyEngine 2.0. Intended for educational use in teaching computer science. | ||
Exult | C++ | Yes | Yes | 2D | Windows LinuxOS X BSD | GPL | Free software re-implementation of the Ultima VII game engine. | ||
FLARE | C++ | Yes | Yes | 2D | Windows LinuxOS X BSD | GPL | RPG engine that supports isometric and orthogonal perspective. | ||
Flexible Isometric Free Engine | C++ | Python | Yes | Yes | 2D | Windows LinuxOS X BSD | Unknown Horizons | LGPL | 2D game engine optimized for RTS or RPG games. |
Flixel | ActionScript | Yes | No | 2D | Various games by Gregory Weir | MIT | Boiler-plate code for flash games. | ||
GameKit (OgreKit) | C++ | Lua | Yes | No | 3D | Windows LinuxOS X android | MIT/zlib/BSD | Has Blender integration similar to BGE. Integrated Bullet physics library. | |
GamePlay3D | C++ | Lua | Yes | No | 3D | Windows LinuxOS X iOSBlackBerry 10Android | Apache 2.0 | Aimed at the indie game developer ecosystem with similar features to cocos2d-x. | |
Gamvas | JavaScript | JavaScript | Yes | No | 2D | HTML5 | MIT | Html5 canvas game engine with Box2D integration. | |
Grit | C++ | Lua | Yes | No | 3D | MIT | Optimized for Open world games like GTA. | ||
Haaf's Game Engine (HGE) | C++ | C, Go | Yes | Yes | 2D | Windows LinuxOS X | Hammerfight | zlib | Hardware-accelerated 2D library with particle effects, sprite and animation handling, GUI controls, distortion, font, and resource handling. Go binding[5] Windows version ported to Haaf's Game Engine(HGE) for UNIX (hge-unix). |
HGamer3D | Haskell | No | No | 3D | Apache 2.0 | A Windows game engine for the Haskell programmer, including bindings to Ogre, CEGUI, Bullet, enet, SFML for Audio, Network, 3D Graphics, GUI and Input Device functionality. | |||
Horde3D | C++ | Yes | No | 3D | Windows | EPL | Horde3D is a small 3D rendering engine designed for large crowds of animated characters. | ||
HPL 1 engine | C++ | AngelScript | Yes | Yes | 3D | Windows LinuxOS X | Penumbra: Overture,Penumbra: Black Plague,Penumbra: Requiem | GPLv3 | HPL is a cross-platform game engine which is compatible with the OpenGL, OpenAL, and Newton Game Dynamics libraries. One of the engine's defining features is its ability for advanced object interaction through the use of Newton's physics code. |
id Tech 1 (Doom) | C | ACS | Yes | No | 2.5D | Windows LinuxOS X | Doom, Doom II, HeXen,Heretic, Strife | GPL | 2D-based geometry, sprite and particles, uses clever methods to emulate 3D graphics. |
id Tech 1 (Quake) | C | QuakeC | Yes | No | 3D | Windows LinuxOS X | Quake | GPL | First true 3D id Tech engine. |
id Tech 2 | C | C | Yes | No | 3D | Windows LinuxOS X | Quake II | GPL | Better known as the Quake II engine. |
id Tech 3 | C | Game Data {PK3 } | Yes | No | 3D | Windows LinuxOS X | Quake III Arena | GPL | Better known as the Quake III engine. |
id Tech 4 | C++ | via DLLs | Yes | No | 3D | Windows LinuxOS X | Doom 3, Doom 3: BFG Edition,Quake 4 | GPL | Better known as the Doom 3 engine with a set of good tools andMegaTexture. |
Indielib | C++ | Yes | Yes | 2.5D | Windows LinuxOS X | LGPL | Includes entity system, sprite animations, collision detection, bitmap/TTF fonts, parallax scrolling, 3D objects, 2D Cameras, 3D Cameras, timers, alpha blending, shaders, and image filters. | ||
ioquake3 | C | Yes | Yes | 3D | Windows LinuxOS X | Urban Terror | GPL | ||
IwGame Engine | C++ | Yes | No | 2D | Windows LinuxOS X iOS Android | GPL(requires license to commercial Marmalade SDK) | IwGame is built on top of the Marmalade SDK. | ||
Jake2 | Java | Yes | No | 3D | Cross-platform | GPL | Java port of the Quake II game engine. | ||
JGame | Java, Actionscript 3 | Yes | No | 2D | J2ME Android | BSD | |||
jMonkeyEngine | Java | Yes | Yes | 3D | Cross-platform | BSD | A community-centric project that is used by several commercial game studios. | ||
Jogre | Java | Yes | No | 2D | Cross-platform | GPL | Designed to be equivalent to websites such as Yahoo! Games. Used by many schools as part of the course work. | ||
jPCT and jPCT-AE | Java | Yes | No | 3D | Java Android | SpaceCat, SkyFrontier, Max the flyer | Free for personal and commercial use | jPCT-AE is an a port of jPCT to Android. OpenGL, transparency, key-frame animation, shader support, built-in primitives, lens flares support.[6] | |
Kobold2D | Objective-C | Lua | Yes | No | 2D | OS X iOS | MIT | Based on Cocos2d with integrated Lua, Wax, cocos2d-iPhone-extensions, cocos3d, Box2D, Chipmunk, Chipmunk SpaceManager, Google AdMob, and ObjectAL libraries. | |
Libgdx | Java | Yes | No | 3D | Windows LinuxOS X iOS AndroidHTML5 | Bumbledore, Apparatus, Clash of the Olympians, Ingress | Apache 2.0 | A cross-platform game development library used in several commercial games.[7] | |
LWJGL | Java | Yes | Yes | 3D | Minecraft | BSD | The Lightweight Java Game Library | ||
LÖVE | Lua | Lua | Yes | Yes | 2D | Windows LinuxOS X | Mari0, Journey to the Center of Hawkthorne | zlib | |
Maratis | C++ | Lua | Yes | No | 3D | Windows LinuxOS X iOS Android | Save Our Souls | zlib/GPL | |
melonJS | Javascript | Javascript | Yes | No | 2.5D | HTML5 | Alex4 WE,Bitzz,Neverwell Moor,Escape from Minimars | MIT | A lightweight (cross-browser) HTML5 game engine integrating the Tiled map editor format. |
Moai SDK | C++ | Lua | Yes | Yes | 2D | Windows OS XiOS Android | Crimson Steam Pirates | CPAL | |
Multiverse Foundation | Jython and Java | Python | No | No | 3D | MIT | Open source MMO and Virtual World Development Platform. Download includes starter assets and fully functional online world to play around with. Currently optimized for third-person RPG games. | ||
Nebula Device | C++ | Java, Python, Lua, Tcl/Tk | Yes | No | 2.5D | Windows Linux | Urban Assault, Drakensang: The River of Time | MIT | A real-time 3D game engine developed by German game studio Radon Labs. |
NetGore | C# | Yes | No | 2D | Windows Linux | MIT | Open source multiplayer online RPG engine (MMORPG). | ||
NME | Haxe | Yes | No | 2D | Windows LinuxOS X iOSAndroidBlackBerry | MIT | A game and application framework used to create many commercial mobile and web games.[8] | ||
nxPascal | Object Pascal | Delphi, Lazarus | Yes | No | 3D | MIT | |||
OpenSimulator | C# | LSL | Yes | No | 3D | BSD | A server platform for hosting virtual worlds that is compatible with Second Life clients. | ||
ORX | C/C++ | Custom | Yes | Yes | 2.5D | Windows LinuxMac OS X iOSAndroid | Le Magasin des Suicides | zlib | 3D accelerated |
Oxygine | C++ | Yes | Yes | 2D | Windows LinuxMac OS X iOSAndroid | Elements Battle,BattlePaint(mobile),Match3Quest | MIT | Modern hardware accelerated 2D C++ framework for mobile and PC platforms. Features: OpenGLES 1/2, compressed textures, atlases, complex animations/tweens/sprites, scene graph, fonts, event handling, build tools, and others. Can be built on top of SDL2.0 or Marmalade SDK. | |
Panda3D | C++ | Python | Yes | No | 3D | Windows LinuxOS X iOS | Toontown Online, Pirates of the Caribbean Online | BSD | |
PixelLight | C++ | AngelScript, Lua,Python, Javascript/V8 | Yes | No | 3D | Windows LinuxAndroid | MIT | [1] OpenGL & ES 2 and D3D 9 & 11 renderers, OpenAL & FMOD sound, physics, Database, & GUI. | |
PLIB | C++ | Yes | Yes | 3D | Windows LinuxOS X | LGPL | |||
Polycode | C++ | Lua | Yes | Yes | 3D | Windows LinuxOS X | MIT | A self-described "Framework for creative code" | |
Pyrogenesis | C++ | JavaScript | Yes | Yes | 3D | Windows | 0 A.D. | GPL | A modular engine designed for RTS games.[9] |
Retribution Engine | C++ | No | No | 3D | Windows | GPL | A 3D game engine that is used to make first person shooter games. | ||
SFML | C++ | Yes | No | 2D | Zlib | Game engine tool kit providing access to graphics, audio, scripting, and networking. | |||
Sge2d | C | Yes | Yes | 2D | cross-platform | MIT | A framework for programming 2d games | ||
Spring | C++ | C, C++, Java/JVM,Lua, Python | Yes | Yes | 3D | Windows LinuxOS X | Balanced Annihilation, Zero-K | GPL | RTS, simulated events, OpenGL |
StepMania | C++ | Lua | Yes | No | 3D | cross-platform | In the Groove, Pump It Up Pro | MIT | A rhythm video game and engine that was originally developed as a simulator of Konami's DDR. |
Stratagus | C | Lua | Yes | Yes | 2D | Linux | Bos Wars | GPL | A 2D real-time strategy game engine |
Torque3D | C++ | TorqueScript | No | No | 3D | Windows LinuxOS X | Tribes 2 | MIT | |
Turbulenz | TypeScript | JavaScript | Yes | No | 3D | HTML5 | Polycraft, Save the Day, Score Rush | MIT | Designed to create 2D and 3D HTML5 games. |
Wire3D | C++ | Yes | No | 3D | Windows Wii | LGPL | |||
WorldForge | C++ | Lua(client), Python(server) | Yes | Yes | 3D | GPL | MMORPG framework consisting of Libraries, Server, Client, and Media. | ||
ZenGL | Pascal | C, C++ | Yes | No | 2D | GNU/LinuxWindows, MacOS X iOS Android | zlib | Cross-platform game development library written in Pascal, designed to provide necessary functionality for rendering 2D graphics, handling input, sound output, etc. | |
ZGameEditor | Delphi | Custom | Yes | No | 3D | Windows LinuxOS X Android | MIT | A lightweight game engine and IDE. | |
Name | Primaryprogramming language | Scripting | Cross-platform | SDL | 2D/3D oriented | Platform | Notable games | License | Notes and references |
Unity game engine
Due to what is available to us here at the college, we will be using Unity for both our 2D game and 3D game.
"The fully integrated and extendable Unity Editor is the interface in which you create your game. You import all your assets to and arrange them in the Editor. This is where you build your scenes with terrains, lights, audio, characters, physics and more; it’s where you add interaction via scripting, simultaneous play test and edit your game, and deploy to your chosen platforms. There are different views, or windows, in the Editor that contain the tools and workflows for creating your game." - www.unity3d.com 28/11/2013.
"Every scene in your game begins with adding empty containers, called GameObjects, that can be turned into anything. By attaching Components to a GameObject you create behavior and movement, and define appearance. Lights, meshes, special effects, audio, cameras, and particle emitters are examples of Components. In turn, each Component has its own set of adjustable properties—range and intensity for a light, for example—that you can tweak in the Inspector." - www.unity3d.com 28/11/2013.
'"Play' mode in Unity is an incredibly powerful development tool for rapid iterative editing while you play your game. Press Play and instantly you are inside of your game, playing and previewing how it will look in its platform-specific final build. Pause it, and alter values, assets, scripts and other properties, and instantly see the results. And, you can step through your game frame by frame for easy debugging." - www.unity3d.com 28/11/2013.
I hear that you can put import work from Cinema 4D (software I have previously used) into Unity. As you edit your creations in Cinema 4D, it'll alter it in Unity also. Because of this, I plan to put in my creations and animate them to be interactive characters in my game which I create using Unity.
You can arrange the different Views to suit your individual preferences and drag and drop elements from one View to another.
Here is a video showcasing some of the creations using Unity:
The Unreal 3 engine has a navigation mesh system. It provides an accurate representation of an AI's traversable space via a connected graph of convex polygons:
Audio: Unreal engine allows users to immerse themselves with 3D location-based sound. It supports all the latest compression schemes and gives you complete control over pitch, levels, looping, filtering, modulation and randomisation. From the information I can find on the Unreal engine, the audio seems somewhat limited to the rest of the engine's features. However, this doesn't necessarily make it worse than other audio systems in other engine's. Maybe audio isn't Unreal's forte.
Cinematics: "Unreal Engine 3 provides mature tools for creating visually stunning in-game cinematics and cut scenes. Unreal Matinee provides movie director-class control over all of the objects in a scene, as well as cameras and cuts, plus it includes an in-engine, real-time preview feature that plays back all the visual effects of a cinematic. Unreal Matinee injects film-style scenes into your game, enabling you to place every camera, object and explosion within the world and even play it back in real time." - http://www.unrealengine.com/en/features/cinematics/ - 05/12/2013
Unreal 'Kismet':
Here is a video showcasing some of the creations using Unity:
http://www.youtube.com/watch?v=rYBaZyqiYZo
Scratch
Scratch is nice and simple for beginners to coding, as the actions are already there which you put into a flowchart, rather than typing up the script yourself. The simplicity of it is purposeful as Scratch is designed for children between the ages of 8-16, however, it is used by all ages. "With Scratch, you can program your own interactive stories, games, and animations — and share your creations with others in the online community. Scratch helps young people learn to think creatively, reason systematically, and work collaboratively — essential skills for life in the 21st century." - http://scratch.mit.edu/about/ - 05/12/2013. From what I've seen and experience of using Scratch myself, it is tailored towards 2D games as opposed to doing 3D like Unity does.
As well as games, people can make: Animations, Art, Music, Stories, etc.
Unreal game engine
"Every aspect of the Unreal Engine toolset is designed to ease of content creation and programming in mind, empowering artists and designers to develop assets in a visual environment and giving programmers a highly modular, scalable and extensible framework for shipping games in a wide range of genres." - http://www.unrealengine.com/en/features/ - 05/12/2013
Animation: Unreal 3 engine's 3D modelling is driven by an AnimTreem. It is a tree of animation nodes including:
- Blend controllers, performing an n-way blend between nested animation objects
- Data-driven controllers, encapsulating motion capture or hand animation data.
- Physics controllers, tying into the rigid body dynamics engine for rag-doll player and NPC animation and physical response to impulses.
- Procedural skeletal controllers, for game features such as having an NPC's head and eyes track a player walking through the level.
- Inverse Kinematics, solver for calculating limb pose based on a goal location (e.g. for foot placement).
- Group animations, handling notifications for the whole group. Synchronise all or a subset of them.
- Morph target animation, allowing the control of morph target blend weights from animation data, with support for material control as well. Morph animation can be authored in Maya and morph data can be exported via ActorX. Skeletal animation can now control vertex and material animation, with preview in AnimSet Viewer.
- Plus, there are no restrictions on the number of animations playing at the same time, number of blends, or post-processing operations.
The Unreal 3 engine has a navigation mesh system. It provides an accurate representation of an AI's traversable space via a connected graph of convex polygons:
- Less nodes means less time fixing up cross-level pathing information.
- Pathfinding times go down as the density of the graph being searched shrinks.
- Better representation of the world results in better pathing behaviour.
- Paths are automatically generated.
Audio: Unreal engine allows users to immerse themselves with 3D location-based sound. It supports all the latest compression schemes and gives you complete control over pitch, levels, looping, filtering, modulation and randomisation. From the information I can find on the Unreal engine, the audio seems somewhat limited to the rest of the engine's features. However, this doesn't necessarily make it worse than other audio systems in other engine's. Maybe audio isn't Unreal's forte.
Cinematics: "Unreal Engine 3 provides mature tools for creating visually stunning in-game cinematics and cut scenes. Unreal Matinee provides movie director-class control over all of the objects in a scene, as well as cameras and cuts, plus it includes an in-engine, real-time preview feature that plays back all the visual effects of a cinematic. Unreal Matinee injects film-style scenes into your game, enabling you to place every camera, object and explosion within the world and even play it back in real time." - http://www.unrealengine.com/en/features/cinematics/ - 05/12/2013
- Movie director-class control over all of the objects in a scene, as well as cameras and cuts.
- Track-based, non-linear style editing system with support for controlling object movement and animation, playing audio, cutting between cameras, toggling particles, field of view, and more.
- Easily created key frames for actors and objects, which can be manipulated directly in the editor.
- Post-processing effects such as fades, depth of field, bloom and colour filtering effects can be easily animated and fine-tuned for each camera shot.
- Ability to animation interactive, physical objects in the game such as doors and platforms.
- High resolution frame-dumping allows for saving out pre-rendered source images to create game cinematics that can be played offline or converted to a standard video format.
- Robust user interface with support for loop ranges, key/time snapping, playback speed controls, colour-coded tracks, automatics key reduction, as well as the standard copy/paste and undo/redo.
Unreal 'Kismet':
- Unreal's visual scripting system gives artists and level designers virtually limitless control over how a level will play without touching a single line of code. (Sounds good for people like me who aren't good with coding).
- Allows connecting simple events and actions, created by programmers, to quickly assemble everything into actual gameplay prototypes.
- Lets programmers easily extend and create their own game-specific actions and events.
I could go on in detail about every aspect of the game engine but that seems a bit "over-kill" so I will list what remaining features the Unreal game engine has:
- Lightmass - an advanced global illumination solver.
- Terrain - Unreal 3 engine makes creating terrains and levels easy.
- Networking - Offers full LAN and direct IP connectivity for online play.
- Physics - Physics in Unreal 3 engine are powered by NVIDIA's PhysX.
- Real time shaders - A powerful visual interface comparable to the non-real time functionality of XSI and Maya.
- Rendering - Unreal brings Gemini, the mutli-threaded rendering system.
- Unreal Script - A simple high level programming language that gives complete scripting control.
- Unreal Swarm - Multi-core support with a distributed computing system.
- User Interface - Create menus, UI elements, and 2D graphics for modern 3D games.
Here are even more features!:
Destructible Environments - "Build a gorgeous world and then let your players crush it to pieces. Unreal Engine 3's fracturing tool and runtime enable you to take virtually any existing mesh, slice it up into as many fragments as desired, and destroy structures." - http://www.unrealengine.com/en/features/more_features/ 09/12/2013. The engine supports the destruction of everything from metal to cloth, brining more realism and interaction to your environments.
SpeedTree Foliage Editor - Model and render beautiful, realistic, animated trees and plants in real-time. "The game and simulation industry's premier tool for creating foliage. Unreal Engine 3 features a full integration with SpeedTree, which includes powerful rendering features and numerous terrain and grass engines." - http://www.unrealengine.com/en/features/more_features/ 09/12/2013.
FaceFX Facial Animation - "Create realistic facial animation from audio files with the FaceFX tolls included with Unreal Engine 3. Batch process thousands of sound files, add expressions to a single animation without ruining lip-synchronisation, and tweak animations to perfection." - http://www.unrealengine.com/en/features/more_features/ 09/12/2013.
This all sounds very well and good for professionals but for me personally I think it might be a bit complex with there being so many features (too complex to make the most of the Unreal Engine). Especially as on their site, they use the words "simple" and "easy" a lot, as if they're trying to stress this fact to cover the complexity of it? Maybe what they say is true, either way, luckily I'll be using Unity.
This video shows of some of these features mentioned in the Unreal Engine across multiple different platforms: http://www.youtube.com/watch?v=pVJ31jkr5zc
Look! I'm learning! I got the ball rolling, in Unity! [exclamation mark]:
theballcannowjump.jpeg
ballmovementcoding.jpeg
I'm learning! and here's the proof!:
theballcannowjump.jpeg
ballmovementcoding.jpeg
thecameranowfollowstheball.jpeg
Iamlearningandcodingatthesametime.jpeg
No comments:
Post a Comment