Tuesday, 8 March 2016

Unit 71 Object-Oriented Design for Computer Games

Object-Oriented Design for Computer Games

  • Simplified Understanding: Object-Oriented Design is the process of planning a system of interacting objects for the purpose of solving a software problem. It is one approach to software design. A state is what kind of state the object is in, for example a door is blue. A behavior is if the piece of furniture can be used in the correct way.
  • Re-usability: This system can be re-used as it is not a physical thing therefore it can be used in multiple different projects as it is not easy to point out or even figure out if it is used or what it exactly does. There are games that re-use old assets from their previous games like on Half-Life where on both HL1 and 2 they still use the healing sounds despite them sounding a bit old and low quality. Those games were released 8 years apart. Unreal Blueprints can be re-used in different projects just as much as the models, textures and animations that go with them, this is very handy and saves a lot of time and effort.


  • Maintenance: The maintenance required on videogames and their design is necessary as without maintenance the game is a bit of a mess unless it is somehow flawless from the beginning. Maintenance is more common with MMO games as their life expectancy is long. Maintenance usually is updates and patches that are released for games which improve the game and add new features, fixing bugs and performance issues. In Unreal you can do maintenance on your map by compiling your blueprints which makes sure that everything works as you intend it to, if not it will tell you and you will have to modify it a bit. This is very handy because back in the old days it was not easy to fix a game unless you knew what was the problem. Now it will tell you the problem and how to fix it. 
  • Efficiency: Efficiency is what is needed to get the job done as if you cannot be efficient you cannot get things done quick enough. A good way of efficiency is procedural generation in your game. As long as it will work well with the game it is good because you do not have to worry as much about level designing. Blueprints in Unreal are very efficient because it means you can code things a lot faster than before, making the job a lot easier and giving you more time to put extra things in.

  • Real-World Modelling: They use machines to create models by scanning a person into the game, this is why in some videogames such as NBA the players in it look much like the real people. This is used often in animated films and is very common in the gaming industry as it is more efficient and effective than doing animations by hand. Real world modelling is also used on vehicles so they can get a lot of cars into the game very quickly without much hassle.
  • Collaboration and Sharing: There is a lot of collaboration between others in the same company as they want to share ideas and get things out there so they might be used in a game. The most common way of collaboration is collaborating with famous directors such as Guillermo Del Toro to create big popular videogames, as the budget for games increase, the more interested big time movie stars are in being in the games. People like Troy Baker and Nolan North have been in many videogames and are big time A-List celebrities.

  • Communication: People have to communicate with each other about the direction they want to take the game in and this is absolutely imperative as without communication there is nothing. Communication is used mostly between developers to find out what each other are working on and what needs to be done. You can also have blueprints communicate with eachother by connecting different things together that both use blueprints and that will improve your game and make it work better. This is best used on characters and enemies to make them react in certain ways depending what happens to them.

  • Quality Assurance: This is where you test a videogame to ensure it is quality, this is a big thing that needs to be done for a videogame to be released. There have been a lot of games in the past that have not been tested extensively enough and have been released with backlash from the gaming community for the developers poor job at testing their game. Without quality assurance there probably wouldn't be videogames as they wouldn't work at all or be very broken.

  • Inheritance: Inheritance is usually a child blueprint which is like a side-blueprint that adds to the main or parent blueprint so it can do more things and can specifically interact with the environment in a different way to the rest of the blueprints such as picking up items. There are also child actors which are similar to child blueprints except these usually physically affect a character and has their own blueprints.


No comments:

Post a Comment