Wednesday 12 October 2016

Unit 66: 3D Modelling Unit 67: 3D Animation Unit 68: 3D Environments - james




Unit 66: 3D Modelling Unit 67: 3D Animation Unit 68: 3D Environments

3D Modelling

3D modelling is the creation of assets or objects using programs such as Maya, 3D studio max or cinema 4D, Using polygons in order to bend/shape/morph them into an intended object. Objects created using 3D modelling software can then be used for things such as TV, Film or Video games.

As mentioned 3D modelling has many applications, being very useful for providing the visual effects and CGI of most films and TV shows today, alongside being used to create game characters and objects. One film that uses 3D modelling is star wars, which utilises 3D modelling to create stunning realistic visual effects such as a lazer blast or a spaceship flying away.

Image result for star wars visual effects

Image result for Displaying 3D Polygons animations

As you can see from the image a green screen is used which allows for 3D modelled assets to be added later, such as the ship and the background, creating the illusion that it is really there when it is instead just a 3D model and not the real thing. Also you can see an image from the film Beowulf, an animated film that uses 3D modelling to create characters that mimic their voice actor counterparts.

3D modelling can also be used for educational purposes, for example if a model of a human body is created with the organs and bones in proportion to a real human it can be used to show medical students or kids the key areas of the human body, also being able to take a look at the organs in detail. The same can be said for a car, being able to take a car a part piece by piece virtually will allow mechanics to understand each part much easier, allowing them to see every piece of a car without having to work on a car, allowing them to practice.
Another application for 3D modelling is architectural walkthroughs, which allow users to see a building in 3D virtually either before it is built (for a builder/property developer) or before it is to be explored (archaeologists). Architects are able to create a virtual 3D model of the building before construction, making it easier to make changes or add crucial parts to the building before it has been built. Archaeologists are able to create a 3D model of what they believe to be either a tomb or structure, and then assess with that the best way to tackle digging at it or exploring it.

Image result for house 3d model



Displaying 3D polygon animations

In order to display 3D polygon animations you need an application such as open GL or Direct 3D,
Depending on how many polygons are in an object, determines how detailed that object will be. As you can see by the image below poly counts has increased over the years, making 3D models very realistic, and now characters created are no longer blocky looking.

Image result for Displaying 3D Polygons animations

As well as having more polygons to work with, shading and texturing is a big part of 3D modelling as this adds depth to objects and brings them to life. When using Maya Hypershader is a good tool as it allows to create professionally shaded objects by adding a new material onto the object, and then playing around with the shade used to create a light effect that helps the object to reflect light in the intended direction.

After creating the 3D model it will then be rendered using one of these methods, Rasterisation, Ray-Casting, Ray-Tracing or radiosity.

- Rasterisation - The fastest currently used method of rendering 3D models however does not produce the best quality, this is done by compiling the object from a vector graphics format into a raster image (pixels) to help file size, or to be used for video display.

- Radiosity - Radiosity is another method of rendering using a different algorithm to normal rendering methods, instead of using path tracing, radiosity uses light paths, and allows light to reflect much better. This has been used in games such as battlefield and need for speed.

-  Ray-Casting/Ray -Tracing - Once used together, these rendering methods are distinguished due to ray casting doesn't trace secondary rays of light for reflection whereas ray tracing does. Now used separately.

Geometric theory

Geometric theory refers to the mesh that is created on programs such as Maya, that has various options over the objects, such as vertexs, faces and edges.

Image result for maya mesh

Vertexs - These are the corner pieces of the mesh, for a cube there are 8 corners/vertexs, which means 8 points that you are able to move/extrude however you want to form a new shape.

Edge - An edge is the side line of the shape, for a cube there 12, with the edge you are able to extrude just the length of the edge/face of the object.

Face - The face is the flat space of the object, a cube has 6 faces, if selected each are able to be adjusted or transformed separately to the rest of the object, this can be useful for expanding an object on just one side.

When using Maya there is a coordinates box, this refers to the coordinates of the object, the scale of the object and rotation of the object all in the form of x,y,z. When altering each of the x,y and z it is key to note which one changes what, for example 'y' changes the vertical properties of the object whereas x changes the horizontal.

Mesh Construction


Image result for maya mesh

Rigging - As you can see from the picture there is a skeleton rigging on the object in green lines, this is how an object is animated, animating the parts of the rigging that then goes on to move the corresponding body parts. Rigging is relatively easy for a human character as you add lines where bones would be, however other objects or assets may be harder to rig as their structure will be different to a human, for example a car.

Box modelling is when you take an ordinary shape such as a cube and use it to create something else, as you can see here in this image you are able to take a simple cube and extrude and change it into the object that you want. This is then smoothed over with the smooth mesh tool to give it that realistic look instead of the blocky outcome.


Image result for box modelling

3D development software

When saving assets in Maya you end up with a .mb file type, which is only accessible on Maya, however is normally a small file type, so will not take up much storage space. Other software such as 3D Studio Max has its own file type also, which is 3ds. Again this is a file type that can only be accessed on that software, but it is able to be rendered/optimised and converted into a different file type, or it is able from Maya to be sent straight into unreal with a drop down option making it easier to send over assets into your environment.

Constraints

Polygon Count - As mentioned before polygon count allows for a much better detailed asset than an asset with a low polygon count. This can be considered a constraint as sometimes it is hard to add more polygons to an object, therefore making it harder to give it a detailed look. Another constraint is how long rendering takes, which depending on the size of the asset and the amount of polygons in the asset determines how long rendering will take which is normally a long time.

Tuesday 4 October 2016

Unit 70 P1 P2 - Gaming engines


Unit 70 P1 P2 - Gaming engines

What is a game engine?

A game engine is a piece of software used in the creation of a video game. An example of a game engine would be R.A.G.E, the game engine that is used to create Grand Theft Auto and other Rockstar exclusive games. This is primarily a 3D engine, used for graphic intensive games and has quickly become one of the most advanced engine to date. An example of a 2D game engine is Game maker studios, which has the ability to create 3D games but is built to create 2D games. A game engine helps to create all the components of a game and put them together in order to create the game, these include the objects, characters, weapons and environment used for the game. Alongside being used to create games, Engines have also been known to help create mods for games, which edit some of the core features of games to change or add new things, this normally being done by fans of the game who want to see changes to the game such as different skins for characters or new objects that add new life to a game. A game engine contains the core components of creating a game, such as the character generation and environment creation, however navigating through the intense and advanced UI can become hard and therefor takes some time to get used to.


Physics

A physics engine is used in most game engines to create body movement, collision in a game between two objects. Physics in a game normally abide by the physics that are also in real life, for example if a person jumps they will come back down to the ground due to gravity.

Rendering

Game Rendering allows the user to see what is in the world/game. Each engine has its own way of rendering, some being more advanced than others which results in a better quality of the models used. For example Frostbite 3 (EA engine) uses a powerful rendering system which allows for photo realistic models to be viewed in a game.

Closed and open engines:

A closed game engine means that the engine can only be accessed by members of the company that own the engine, or those who are trusted enough to use it. An open game engine however is open to the public, either for free like MAYA or costing like Unreal Engine, both are good game engines and do the same as the closed engines but have the difference of being able to be used by the general public.



Examples (closed engines):

Frostbite (EA):


Frostbite is the exclusive closed engine for the gaming company EA, it is the engine used to create games such as Fifa, Battlefield, Need for speed, Mass effect and Medal of honor. Arguably one of the best game engines to date, Frostbite is one of the most technically advanced engine's which produces some of the most graphically perfect games on the market. However being a closed game engine means that to work on this engine would require you to work at EA, otherwise you cannot use it.

Now being known as Frostbite 3, first used with the game battlefield 4 the engine has undergone a few changes in order to improve the issues and improve the engines overall quality. Now also being adapted to work as a mobile engine device with Frostbite Go, a new engine that will allow EA to create mobile games too. The unique tool set that Frostbite uses is made up of 3 primary components, these being FrostEd, Backend services and Runtime.

FrostEd is a desktop program used by Artists, designers, Animators and programmers at EA. FrostEd uses a unified interface that allows everyone using it to be creative, and efficiently build high quality products/games.

Backend is the data storage system that Frostbite uses, being able to handle hundreds of thousands of data packets and assets to be stored, this allowing EA to create various game assets at the same time and not worry about storing them before they are optimised in order to reduce space. Within this EA has systems called blizzard and avalanche which handle the storage and the caching of the data, with daily updates to keep the system up to date.

Runtime is what allows EA to diversify their games and code them so that all platforms are able to run the game, this being the final process in the Frostbite engine, allowing games to be compatible with the various platforms such as XBOX 360 and now the next gen being XBOX One and PS4.

Fifa 17

Need For Speed 2015


Battlefield 1




Rage Engine (Rockstar):


Rage stands for Rockstar advanced game engine, created by Rockstar in order to further their game quality for certain franchises such as Grand Theft Auto. First created in 2006 the Rage engine changed the quality of Rockstar games significantly, now producing games with photo realistic graphics that allow the users to fully immerse themselves in the game. Like EA's Frostbite engine the Rage engine is only exclusive to Rockstar employees, meaning it is a closed game engine specifically designed for Rockstar and Rockstar alone. With recent releases such as Max Payne 3 Rage has been compatible with Directx 11 and 3D rendering programs allowing for the best quality in games on the PC platform. This is due to the fine tuning that took place over the recent years whilst Rockstar created GTA 5, allowing for the specific changes to be made in order to create a realistic life like game environment for their games.

Rage uses the Bullet physics system created by erwin coumans, This is what allows GTA to have the realistic physics in game such as collision between cars, people when fighting and gravity when planes are shot down. Bullet has been used in multiple other games such as Trials HD, Toy story the game and diRT the racing game, also being using for visual effects in the films sherlock holmes and hancock.




Grand Theft Auto 5


LA Noire




Red Dead Redemption


Operation arrowhead engine/Day Z Standalone Engine:

Starting off as a mod, Day Z become its own game, however the engine used for the standalone game was taken from the original engine used to create the base game arma 2 which day z the mod was created off of. Now being updated to meet the needs of Day Z by Bohemia interactive who now own the rights to the game, the engine works specifically for the game and is a closed game engine, however the Arma 2 engine is able to be accessed. This primarily being accessible so that content creators are able to mod the game and create add-ons. 

Until 2015 the engine used was virtual reality which as mentioned was the Arma 2 engine, now bohemian who have taken over the production of Day Z have started using their own updated Enfusion engine. This was greatly appreciated by players of the game as it allowed for a more fluid movement and physics system for when characters performed actions or when they collided with objects such as stairs, which previously would make the character bob up and down awkwardly.

This engine is not as advanced as the Frostbite or R.A.G.E engine however it still uses similar features to both of these engines, such as a physics engine and a rendering engine capable of HD image rendering allowing for games to have a crisp photo-realistic look. 

Arma 2

DayZ (The mod)





DayZ Standalone



(Open Engines)

Unreal Engine:

Unreal engine is an open game engine created by EPIC games. Providing users with the appropriate assets in a large library for free, it isnt hard to find scenery, objects and characters that can be used for your games. The engine uses direct X 11 and 12 Rendering which allows for their games to make use of dynamic lighting, light reflection and HDR full scale scenes. As well as dynamic lighting, Unreal uses cascade visual effects which allows the creation of movie quality effects, allowing the creator to add various detailing such as fire smoke and dynamic particles.

Thanks to the unreal engine gameplay framework, artificial intelligence is made easy and also works more fluidly with AI having spacial awareness, allowing for them to judge a situation better and being able to navigate without bumping into walls or other objects. The user interface for Unreal is friendly, and allows an instant game preview in the centre of the screen, allowing for the user to edit things in the game such as buildings, characters or scenery and then simply click the play button to test it to see if it works to their satisfaction. This feature makes testing game easy, allowing for each scene to be tested properly to see if it works all to the users needs.

Unreal has had multiple versions throughout the years, now being known as unreal engine 4.13, there has been 4 versions of the engine, with more updates being added every so often to keep the engine up to date. 

Unreal Engine 1:

First created in 1998 with the game Unreal, the engine was capable of creating 2D and 3D games, however not being able to create as HD environments or large as what it is capable of now. Using the Glide API this engine had good rendering paths for its time, and was later updated for Open GL and Direct 3D.

Unreal Engine 2:

Being released in 2002 with the game Americas army Unreal engine 2 was the updated version of the first engine, being able to produce much better quality games thanks to the new physics engine used which was the rag-doll engine. Still using relatively the same rendering tools as the first engine, the look of the games had been improved slightly but not dynamically. During an update to Unreal 2.5, the engine had improved rendering allowing for better game quality and vehicle physics.

Unreal Engine 3:

Unreal Engine 3 was created in 2004, after the success of unreal engine 2. Being able to use shader hardware it allowed for light to be done per pixel as opposed to per vertex, which improved the immersion and the quality of the light in games. This changed the overall look of games created using unreal 3, one being bioshock infinite which used a photo realistic style. Also having destructible environments and soft body dynamics. As well as being a game engine, UE3 has also helped to create sets and backgrounds for the show lazy town, and has been known to create various visual effects for films and other tv shows.

Conclusion

In my opinion Frostbite or Unreal is the best game engine at this current time, the reason i have chosen 2 is because of how Frostbite is only EA exclusive, so i am not able to work on it unless i have a job at EA. However the technically advanced edge of the Frostbite engine is what puts it at the top of the list, with its storage capacity, and its HD image creation capabilities. Unreal is also at the top for its technical edge, being updated over many years now to create the perfect game engine which has my favourite feature which is the game preview screen that allows for specific scene testing which is helpful as it allows you to edit anything that isnt working properly at that current time instead of waiting for it to be properly tested by other people. It also allows you to see how far along you are in the creation process, and with its soft body animation capabilities i feel that unreal engine is able to create some of the most fluid and graphically pleasing games.