Monday 20 February 2017

Object Oriented design for computer games

Concepts and principles: simplified understanding; re-usability; maintenance; efficiency; real-world modelling; collaboration and sharing; communication; quality assurance


Simplified understanding: This basically means the simplified version of things created in your game, for example when making a blueprint adding notes onto them to show what each step does or at least tries to do with it.


Re-usability: Re-usability in games design tends to mean reusable game assets. for example tree's and plants are reused a lot when making a game, or even characters in the game are reused a lot as well. obviously every tree in a game cannot be unique because that would take so much time, so instead the game developers simply create a handful of tree designs and sprinkle them throughout the level giving the illusion of a forest with each tree being unique.


Maintenance: When it comes to maintenance, it's more to do with the upkeep of someones work than actual effort put into the work. for example when you're making a level within a game, you would have to make sure to go back and check that everything is working as well as it could be. without doing this you would have a poor quality game overall and when you hand it over to the people in charge of quality assurance.


Efficiency: Efficiency and work ethic kind of go hand in hand in terms of creating something within a group of people, you will always be given a certain time frame for creating something, obviously not the whole project but a certain specific aspect of it, for example texturing a model for someone. that person can't wait forever for the person to texture it because then they would get no where. which links into what i will be mentioning soon.


Real-world modelling: Talking about


Collaboration, sharing & Communication: When working in a group for a big project you need to constantly be working with each other to get the overall vision of the final product. this can be done by talking to everyone and collaborating together on something like modelling a character or getting the layout of a certain level within the game. relaying these visuals to the people working on this and sharing with them the design helps them go on and layer more things onto the product helping everyone in the chain keep the project running smoothly.


Quality Assurance: Like i said in maintenance, quality assurance is the task of making sure that your game is up to scratch with the objective given. and also that any immediate/damaging bugs haven been weeded out before the final product is shipped out to sell.

Game objects

Sprites: Game sprites are more to do with 2D games design, these includes basically everything visual on the screen. These could be anything from the characters themselves to the background of the level.
Image result for game sprites
Characters: Characters within the game are the people you will see within the game, for example like an enemy that you have to fight or an ally helping you within combat, or your actual character that you are playing within the game.
Image result for wise old man osrs

Weapons: The weapons and characters in the game kind of go well together as in these two things interact very well with eachother, for example an enemy in a game could use a gun to try and shoot your player and then your character that you play as could use a sword for example to defend himself against his attacker.
Image result for rune scimitar

Rooms/Walls/Scenery: A level or a "room" in a game is an area usually designed for the player to interact in with other characters/objects. normally all the rooms in a game make up the whole thing, leading from to another typically with loading screens in between each room to load the next one seamlessly. within these rooms you could have some walls and scenery within theme, definitely scenery but walls are optional as it could be a level outside in the open where you would just have scenery and a sky box.

Instances: Instances are essentially game objects given specific rules within a game, these can be copies of another object, copied, and placed anywhere within the game creating things like walls and scenery with there own variables that can be changed at any time

Rewards: Rewards are pretty self explanatory in itself, these are rewards for the player for defeating a tough enemy, doing a crazy task, or just simply progressing through the game. for example an achievement system giving you some kind of title to show to your friends to show off.


Object Properties:

Most of the things within the whole realm of Object Properties are pretty self explanatory again, so i will be summing them all up within one section to keep it short and simple but still explaining them.

All Object properties essentially are are how objects/players/AI, behave/look within the game itself. for example the first one being colours within the game. first of obviously scenes within the game have colour like walls and such differentiating them from the floor or another object within the room itself. but can also have different and more subtle connotations, for example in most games where you have a HUD you will see your life bar/health somewhere. this is normally coloured green, this is pretty significant within most games like this. and when you are damaged this life bar with change colour to maybe amber/yellow when you are or near half health and red when you are quite low on life. maybe even red/blood splatters on your screen like within any call of duty game ever.
Image result for health bar
 next is size and speed which i think kind of go hand in hand together. first of the size of an object is normally trying to make all the things in the game to scale of real life, this is pretty normal within most games. but this can also go for things like characters within games. for example World of Warcraft or most MMO's/RPG's you will find that most boss' you will encounter within those games will be larger than your character normally. this could be a final boss or any boss for that matter in the game. these bosses also have a different speed normally to your character, for example like in dark souls when you encounter a big boss there speed of there attacks/movement is normally rather slow telegraphing there attacks for quite a long time. obviously, movement is included in there with both speed and size, but more prominently within stealth games, as your movement as the character within those games are rewarding to be slow with your movement. like for example in most Metal Gear Solid games.
Image result for dark souls boss

As a separate paragraph to colour/health topic is lives within a game. lives can actually tell you quite a bit about a game. usually within modern 3D games lives isn't really a thing anymore because it has pretty much become redundant. dying in a modern 3D game normally places you at the last checkpoint you where previously at. but with 2D retro/new games you will have (normally) 3 lives to begin when you start the game. increasing when you collect them within levels and decreasing until you die. and losing all your lives reset the game to the beginning, this is very prevalent within obviously Super Mario Bros.

Actions and Events:

the first thing to do with events is mouse and keyboard events, these are pretty simple to understand. when you move your mouse within a FPS game? of course you move your aim/vision around. this is classed as an event, the event tells the game that when the mouse is moved in a certain direction the players view needs to move with it. Another example is in a game like space invaders using the arrow keys/buttons this will move the direction of the ship in the corresponding direction. another example is in World of Warcraft again pressing any of the number buttons will make your character perform an action/attack. and thats essentially it. Next is the create event, like the previous space invader example, pressing the fire button/key will create an instance of a bullet that will fire towards the enemy ship and in World of Warcraft pressing the buttons will create an attack/spell.

Collision occurs whenever a player interects with a solid object keeping the player from passing through and beyond the object. this is most commonly used within wall objects in a level keep the player from falling out the level.

Timer events within a game are triggers throughout a level triggering whenever a certain action or time is reached, for example within a game when you beat a stage a door will open after a certain criteria/time is met.

Scoring is another self explanatory one, this is simply a score within a game normally followed with a leaderboard sharing your score with others allowing you to show your friends or compete for the top score.

Inheritance

Parent in terms of inheritance is the base or the core of the whole system of inheritance itself.

Child is the object or class that takes on the properties of the parent, kind of like an eco system feeding it down the chain. the child will be the one with the properties that can be changed into different actions, allowing new objects to do different types of things within a game. this can also be coupled with Overriding events which overrides the childs behaviour and modifies it slightly to do different tasks within the game.



No comments:

Post a Comment