Friday 8 March 2013

Functions and componments in game engines



AI

AI Agents
AI are in a range of different games such as Gta 4, in Gta 4 the AI react to a range of different things such as weather, gun fire, cars heading towards them, explosions and much more they way they do this is by say it was sunny the AI would be happily walking along but then it suddenly started to rain the AI would get raincoats and umbrellas out, Also AI in some games have their own life cycle for example they might do something at a certain time/point in the game like walk behind a building or go talking to a other character. Npc's in game help alot for example Call Of Duty in the single  player you play along side Npc's and you also fight them Npc's work around FPS and have more accurate shots than a human. 

AI Behaviours

Bodily behaviors are high-priority things like resting, sleeping, eating, pooping, etc. These are chosen randomly, which also selects an action a large proportion of the time. When the bodily behaviors fail, the root selector falls back to the active behaviors. These are walking around, running, etc. When the active behaviors fail, the next fallbacks are passive behaviors. For example, this involves sitting, lying, standing idle, etc. This is another probability selector, but this one never fails since there is no more fallbacks.Most behaviour-based systems are also reactive, which means they use relatively little internal variable state to model the environment. For instance, there is no programming in the robot of what a chair looks like, or what kind of surface the robot is moving on - all the information is gleaned from the input of the robot's sensors. The robot uses that information to react to the changes in its environment.

World Navigation
       World navigation is basically getting from one point of the map to the other, it is usually in games with big open world enviroments such as minecraft or Arma, in Arma you are given a mini map to navigate around the map and help you get to your destination or checkpoint, but it does not tend to give you the quickest root that is for you to find out. Fuzzy logic can be used in many different ways it can be used to control bots or NPC's or it could help prevent an attack of a player.

Animation Systems in Game Engines


Path-Based
A path based animation is basically the movement of a character for example and how long and how many frames it would take to get from one point toanother,path based animation usally stays the same size once in movement but it can change sizes but rarely does,any object that is going to be used in a game such as a chair or a car has to be simple and basic this helps with animateing it, most NPC's if not all are animated using path based animation.

Kinematics
Kinematics is the motion of bodies without taking in to much force,mainly their are 2 different spaces used in kinematics, altogether there are 4 main point but with just two if them they can be transformed into a rotation, there are a number of different ways to show rotation such as euler angles

Forward Kinematics

Forward Kinematics is basically mapping out from joint space Q to Cartesian space W,Forward kinematics problems are not complexity deriving the equations this is why there is
always a forward kinematics, in forward kinematics Singularities and nonlinearities  make a problem more harder to solve.

Inverse Kinematics

Inverse Kinematics is the completely oppiste from forward kinematics this is because it is mapping out from W to Q and not Q to W,Inverse Kinematics is a much more harder problem to solve than forward kinematics,The inverse kinematics problems of the serial manipulators has been studied for many decades. It is needed in the control of manipulators.


       Partical Systems 
       Particals in games are used for a range of different things such as smoke, fires, water etc... they are used to make a game look visual amazing and can create some amazing effects in games such as in the game arma 3 in this game the water looks really nice and also fires and smoke look really realistic.
h
Graphic Rendering In Game Engines


Anti Aliasing
 Anti Aliasing in games is basically objects or environments that are jagged are made smoother to make the game look more realistic and to make the game look that bit more great.but there is a down side to using this because the game will be more higher rendered the frame rate of the game will drop which could then effect the game play.   

Shadowing
In games shadowing is basically light that is shining onto a object or a character resulting in a shadow, this makes the gaming experience that much more better basically making the game more realistic, but the higher the shadow quality the slower the frame rate and the poorer the game play.  

Level Of Detail
In games the level of detail is how something looks within the game if this something was at a high quality then naturally the game would perform slower,this is why graphical rendering is applied when the character is far away from the object it wont render to a high quality untill the character is closer to the object.  

Ray Tracing
Ray tracing is trying to get an image by tracing the source of light through pixels  this makes a great effect and is the one of the best ways because the image at the end of it is to a very high stranded. 

Radioisty
Radioisty is an object like glass that illuminates a light source then creating shadows onto other objects giving the game a more realistic approach, this makes the game a more high quality but because of this the game will run slow. 

Depth-Testing
Depth-testing is a process used by game engine's to help the player indicate which objects are visible to them and which are not because they’re behind other objects.Games in the recent years render a lot more than they did a few years ago depth testing has become so much more advanced. 

The Graphics Pipeline
The Graphics pipeline is something that turns a 3D image into a 2D image,
some of the stages are:
•       Bus interface/Front End,
•       Vertex Processing,
•       Clipping.
this has been developed further in recent years because of the high demanding games and the high standers games are made at. 
                                              
Pixel shaders and Vertex shaders 
A pixel shaders is not to a high detail like vertex but it is a GPU that can be programmed to operate on a per pixel basis. a vertex shader is much more complex it can allow that can allow a cartoony look to somthing even though it use's the same things as pixel shaders 

Fogging
Fog in games allows objects to be hidden away or barely visible but fog doesnt just allow that it also allows a scary feel to the game and can also provide cover just like in the game Guns of Icuras in this game dust/fog allows the ship to stay in cover for a certain amount of time.  


Textures
Textures are applied to an object like a character a texture can also be applied onto a 2D shape but it wont have the same effect as a 3D shape, Texturing allows a object to have color instead of being one set color. 

 Lighting
In games lighting can create a lot of different effects in games like in Mario it is all bright a colorful and everything seems happy but in a game like batman everything is dark and serious this lighting effect allows gamers to feel for the game and be apart of it instead of just playing it. 

 Back face culling
because meshes are hollow not solid objects, The backside of the object will mainly be facing the camera so like the ios game temple run there is no need to draw face's because all you have to see is the backside of the character.

 Contribution culling
In games often their are images that are that far away from the camera that there is no need for them in the game but if they are displayed on a small screen they are not shown up at all.

 Occlusion culling
Items or objects behind somthing might be culled, it helps the rendering side of the game and stops the frame rate from going down because the game does not have to render the item as such yet.

Systems in Game Engines
Physics
The physics engine play's a massive part in the game because it allows the gaming experience that much better, the physics engine lets the game provide such things as grass moving in the wind or water moving down a river, in such games as Fifa physics play a different part in them sort of games, in Fifa physics works by the ball control, the shot/goal and it should help where the ball will end up if a player kicks it.

Limitations on Physics Engines 
In the game industry at in the moment of time physics engines have developed so much that sometimes there can be very funny hiccups like a player falling trough the map or an object not working.These effects can be prevented but it takes an extensive amount of CPU to process these calculations.

Effects – Subsurface Scattering
Subsurface scattering, here are a few engines that have surface scattering, cry engine 3,Confetti RawK etc... these engines use a thing called Space Subsurface Scattering or SSS for short, this allows light to travel through objects.

Caustics
Caustics is an addon to  rendering that calculates photons of light that is staring at a light source which can be reflected, refracted, bounced of mirrors. basically caustics allows light or reflections to rebound of things like mirrors.

Networking
Networking is a range of different computers that allows something to run on it, without the networking nothing will work, networking plays a massive part in all of the game engine its self, networking gives of information that allows things to work within the engine. 

Sound
Sound is very important within a game engine, it can be used in different ways such as background music and this can sell a game for example Halo this has to have one of the most famous music sound tracks of all time but its not all about background/start up music there are many other ways sound can be used like sound effects example guns,explosions etc.. an example of a game would be Guns of Icarus in this game there are alot of great sound effects of the guns being fired and the boat being repaired, but that's not all with sound in some games there are things like button sound like if someone clicks a button it would make a sound this is also a very nice feature to games and it can make games that much better. 

Networking in game engines
A Network is basically a group of engines that allows people to play online like such game halo call of duty, god of war insetion, these games are all mmo type of games and networking allows this to happen in game. 
Middleware

Middleware is computer software that provides services to software applications that are beyond  those available from the operating system. Middleware is described as software glue.Middleware is like the thing that brings everything together that is why it is sometimes referenced as glue. 

No comments:

Post a Comment