Thursday, 29 October 2015

Guide: Downloading and Installing Unreal Engine 4 Project Browser

Lets take a look at the process one must go through to gain the ability to create a project Unreal Engine 4. I will go through this step by step.

Step 1: Go to the Unreal Website and click "Get Unreal"
Link: Unreal Engine Blog
Step 2: Create an Epic Games Account!
You can skip this step if you've already got one.


Step 3: Click download, and download the installer. You'll need to click "Save File"

Step 4: Choose an Install Path

Step 5: Sign in with your Epic Games Account
Step 6: Click "Install Engine" - Yes, the big golden one on the top left of the launcher

Step 7:  Initiate Download and wait.

Step 8: Click Launch!

Step 9: Congratulations, You just installed the basic tools needed to create an Unreal Engine 4 Project. There are many plugins and options available to you from here. You can even choose a template to work from.

I hope you found this tutorial useful.
 Farewell, for now.

Wednesday, 28 October 2015

Unreal Engine 4 - Unreal Capabilities

Unreal Engine is one of the most popular engines used in video game development these days.

So what is it?
Well lets see what Epic, the creators of Unreal Engine have to say on the matter.

"Unreal Engine 4 is a complete suite of game development tools made by game developers, for game developers. From 2D mobile games to console blockbusters and VR, Unreal Engine 4 gives you everything you need to start, ship, grow and stand out from the crowd."  
I intend to delve quite a bit deeper into Unreal Engine, its history and its uses in game development over the years. I thought it would be good to start with a general over view first. Many AAA games have been made using Unreal Engine, particularly 3. Batman Arkham series, Gears of War, Mass Effect just to name a few.
The momentum seems to be continuing with UE4 and the current gen systems, however many developers are currently opting to  use heavily modified versions of UE3 over switching wholesale to UE4. MKX, Batman Arkham Knight, are two games that do this.
I do believe that as the years go on, UE4 itself will see a lot of use.

Epic have adapted a very progressive pricing model.
It is free to use and make things with.
If you sell your product there is a "5% royalty on gross product revenue after the first $3,000 per game per calendar quarter from commercial products".

Here is a quick video tech demo on some of the features of Unreal Engine 4.
 
 Games using Unreal Engine 4 include Epic's own Fortnite and the little known upcoming fighter from Capcom; Street Fighter V

Unreal Engine 1 was first implemented in Epic's own game Unreal, released in 1998. Its prime targets were integrated rendering, collision detection, Artificial intelligence, visibility, networking, scripting and file system management into one complete engine. All things which are still of great importance today.
Interestingly enough, the company had intended to create a steady base that could be iterated on for years right from the get go.

See this quote from Tim Sweeney from 1998:
"The big goal with the Unreal technology all along was to build up a base of code that could be extended and improved through many generations of games".

I don't know which is more impressive, having such an ambitious vision, or achieving the fact that it has come to fruition. Throughout the years, Unreal has gone from strength to strength.
Particularly with Unreal Engine 3, with many games now using the engine.
Above is a great visual representation on the jumps that Epic have made over the years from 1998 to 2007. This technology is still improving!

I'll leave it there for now. If you wish to know more about Unreal Engine or Epic, please go to their website for more: What is Unreal Engine 4

For the full interview with Tim Sweeney: Maximum PC interview with Tim Sweeney (1998)


Array Lists - A Revelation

I've recently started using Array Lists when programming in Java.
Why? Well, first of all, one can implement them in the same way they would use regular old arrays.
However, Array Lists give one a few useful abilities that separate them from the pack.

So how do you declare them?
Simple
You'll need to make sure that you have imported "Java.util.ArrayList"
If you're using an IDE such as Eclipse, then you'll probably get a notice and it will do it for you. IDE's are great like that, they do a lot of the work for you.

To declare an Array List you just follow these guide lines:

ArrayList <Object> myList = new ArrayList<Object>();

You can set the object you want the Array List to contain, not unlike regular arrays. Fill it with Strings, or create a custom class and fill it with that!

The best thing about Array Lists is that they are dynamically sized.
You can add and remove to them, which will update the size as you change it.
This differs from arrays where they must be of a fixed size.
If you want to add to an array you must create an entirely new array that copies everything over. Not the case with Array Lists.
Here is some sample code, creating an ArrayList and then adding to it.

ArrayList <String> myStrings = new ArrayList<String();

myStrings.add("Funkadelic");
myStrings.add("Coolarific");
Okay, so I've filled it with gibberish, but you get the idea.
you can get the size of an ArrayList easily too. Not using .length as with arrays though!

myStrings.size();

If you wish to remove an element from the array, you simply do the following:

myStrings.remove(0);

This will remove the item at that index of the array list.

So there you have it. If you've ever wanted to be able to change the capacity of an array, here is your solution.

I am still experimenting with Array Lists. I intend to find out more about what else they can do. So keep your eyes peeled for updates in future blog posts.

Until then, array with you.

Apologies for that horrible pun.




Saturday, 24 October 2015

The Fox Engine

Keeping  the theme of my previous post, I thought I'd post a small bit about another type of engine used in video game development.

The Fox Engine video game engine designed and developed at Konami's premier studio "Kojima Productions". One of the engine's primary goals was achieving photo realism.

In 2013, Digital Foundry of Eurogamer posted a very detailed article on how the Fox Engine set out to achieve its goals. It is quite a technical article, but its a very interesting read and contains a few interesting videos embedded too.

Read it Here: http://www.eurogamer.net/articles/digitalfoundry-tech-analysis-mgs5-fox-engine

MGSV implements the Fox Engine
Looking back at what Kojima Production's intended for the Fox Engine and where it ended up is quite sobering. One of the other aims of Fox Engine was to reduce the difficulty and shorten the development time of video game projects for multiple platforms.

Was the Fox Engine the right solution? Well Metal Gear Solid V was almost five years in development before it shipped, with a budget of about $80 million.
On the other hand, Kojima Productions shipped the game on five platforms - More than any other project from the studio before that. Metal Gear Solid 4, for example was only developed for Playstation 3.

I have no idea what will happen to the Fox Engine technology, with Kojima's apparent departure and Konami's gradual shift from Triple A video game development to mobile(as well as their slot machine business and health clubs). One does start to feel that we may never see the Fox Engine utilized to its full potential.


Tuesday, 20 October 2015

Havok - What is it? Why did Microsoft Buy it?

Havok is a software technology company formed in Dublin in 1998. The company specialises in creating middle ware that incorporates physics and all of the wonders that includes into various technologies, mostly video games.
If you've played a video game in recent years, there is a high chance that Havok's physics engine is incorporated somewhere in the code. In fact, its been in over 600 video games.

Above is a recent example of Havok technology that has been developed, uploaded on the official Havok channel itself.  As you can see it is quite impressive, incorporating brittle fracture and plastic deformation in a single interconnected vehicle.

So it should come as no surprise that Microsoft have decided to acquire the company (who were previously acquired by software giant Intel in 2007).

It could cause panic for some video games fans, who might assume that this means the end of the use of Havok in many multi-platform video games. However, Microsoft assured people;

 “We will continue to license Havok’s technology to the broad AAA games industry,"

For more, check out IGN's article on the matter: Microsoft Buys Havok From Intel.

With software development budgets, and particularly video game budgets increasing exponentially this day in age, it is hard to imagine any companies suddenly throwing out their dealings with Havok over this acquisition. There are many middle ware solutions, but Havok has proved a very popular engine for many developers.

Microsoft seem keen on further developing these relationships with third party companies as well as implementing it in their own games and technology. They referenced Crackdown 3 by name.

At any rate, I don't think we'll see this have any major affect in the short term, at least from a consumer perspective. Havok will keep doing what they do best; Try to develop realistic and detailed physics.

 

Blog Introduction

Hello and welcome to my blog. Here is a brief video about me and my blog. Thank you!