Category Archives: Software

Graphical and Sound API’s- (Open GL, Direct X)

Graphical and Sound API’s-( Open GL, Direct X)

Open GL

Open GL


OpenGL or Open Graphics Library is the most widely adopted 2D and 3D graphics API in the industry, bringing thousands of applications to a wide variety of computer platforms. It is window-system and operating-system independent as well as network-transparent. OpenGL enables developers of software for PC, workstation, and super computing hardware to create high-performance, visually compelling graphics software applications, in markets such as CAD, content creation, energy, entertainment, game development, manufacturing, medical, and virtual reality. OpenGL exposes all the features of the latest graphics hardware.

Direct X

Direct X

Direct X is an application program interface (API) for creating and managing graphic images and multimedia effects in applications such as games or active Web pages that will run in Microsoft’s Windows operating systems.




Graphical and Sound API’s- (Open AL, Java, Sound API)

Sound API- OpenAL, Java, Sound API



Also known as Open Audio Library, this interface software has multiple functions that programmers may use to help to produce high-quality audio output.  Designed to cater for a multi-channel output for 3D sound sources, this platform can because across any platform/ The coding style is similar to that of OpenGL as it uses syntax to function. The basis behind OpenAL is to make it possible to generate audio in 3D space. By doing this it enhances player experience, as mimicking 3D space using audio includes the addition of the Doppler effect by utilizing sound frequencies. This adds a much more immersive experience to video games.

When developer release games that are compatible with the 3D sound developer will have use an API like OpenAL so when the game is being played it produces 3D sound, which is sound output that has multi-channels allowing it to be very high-quality audio. It also gives the developers the control over the pitch, tone, and loudness of audio which gives players a better overall experience with the distance of sound effects to be easily distinguished. OpenAL is also cross-platform so it can be used on several game platforms. The other main sound API used for writing functions for sound output is Java sound API. Java sound API works in a very similar way but is used for Java games on devices like mobile and website games; Java sounds API other functions to developers such as capturing, processing, and playing back audio. It also gives developers access to 8-bit and 16-bit audio data, in mono and stereo, with sample rates from 8 kHz to 48 kHz.



This API is designed to help users write programs, and is a low level API which controls the inputs and outputs of sound, it has an excellent degree of control over audio capability. It is a pretty straight forward API when compared to the others, as it follows the already mentioned conventions.  Java Sound API this is another sound API. The purpose like the purpose of the other API is to help you write programs. Its essential in any game to have a sound API without them the game would be dull and you wouldn’t be able to capture the mood of feel of cut scenes or events you may walk into.  Java sound is low level this affects the controls the input and the output of sounds. It has a really good degree of control over audio capability.

Sound API

Sound API

Pretty much the same as a graphic API, however instead of focusing on visuals, it focuses on audios instead. There are tow main sound API which i will be talking about, and this is OpenAL, and Java Sound API.

Linux & Steam OS

Linux is An open Source OS which has allowed for a variety of different distributions which have different features and functions, below are some of the more Popular Distributions

  • Ubuntu-Debian
    • Ubuntu is an Popular Alternative to windows as it tries to make Linux as accessible as possible while still allowing the more advanced users to use the powerful tools of linux.
  • Mint-Debian
    • Similar To Ubuntu mint also tries to make Linux as accessible as possible by emulating the layout of windows.
  • Arch Linux
    • Arch Linux Is light weight allowing the user to heavily customise the OS and add the features they want, because of this the installation process is rather complex requiring heavy use of the terminal to configure Arch.

Steam OS

Steam OS Logo

In 2013 Steam Released their own Debian Linux Based OS called Steam OS its purpose was to bring PC gaming to the living room and was meant to be used with valve’s Steam machines which were mini PC designed to be used as an living room console.

Steam OS Menu Screen

Steam OS was Not successful mainly due to the limited number of games that have been developed for Linux but also because Steam OS and Steam machines main competitors Xbox and PlayStation provide a wider game selection, cost less and also can be used as media centres


Installing the latest driver for your device is usually the best policy because it has all the latest fixes for your device. However, sometimes using an older driver is better because the same driver files are used for different PC models at times, but things don’t always work as expected.

Graphic Drivers:

  • What they are: Graphic Drivers is a software that is used to control the graphics chip-set that is integrated onto the motherboard. Usually you need to download the graphic driver from the same manufacturer as the graphics card that is being used.
  • What they do: Getting Graphic drivers are usually used to solve display issues like, black or gray screens showing instead of the image being displayed or when the screen displays elements slowly.

Sound Drivers:

  • What they are: Sound Drivers are used to sort out audio devices like headphones, microphones and speakers. Usually drivers for audio devices are downloaded as soon as their plugged in using Windows audio drivers.
  • What they do: Sound divers help make those devices work like getting sound out of the devices. It also helps get the best quality out of the device.


Platform Dependency

Some reason on why games are platform dependent is that want to use exclusives features of the console such as being able to use a touch screen on the controller in the Wii U, it could be that the company has struck a deal that owner of a consoles in which they will only release on their console but they will get funding or it could be that they have specially gone programmed with the consoles spec in mind.  An example of a dependent game would Fire Emblem Awakening which is only for the 3DS which as it use the top screen for map whilst bottom screen is used to show stats of each character at the same time. A tool that is used to make exclusives platforms would be Corona native as it is specially tailored to be for a mobile devices by Apple.

Hardware dependent software is a type of program or programming language which is designed to work on only one type of hardware. For gaming this means that particular games may only work on one device like a console. On most modern day consoles their games are incomparable with each other forcing players to purchase the same game twice if they want it on multiple consoles.

Temp 2

PC gamer do not have to worry about this problem as much because almost all games are available to them and can be ported across all their PC devices, via online game platforms such as steam and Epic Launcher. Games are made to be hardware dependent because game platforms want to entice people to buy their console because of the “exclusive” games, Nintendo are a prime example of this al almost all of their games can only run on their own devices. Recently a very popular game was released on PC and due to its popularity it has subsequently been released on all major platforms, including a mobile version!



An independent game is specifically built on multiple platforms. An example of independent games are PC games would be Call of Duty Black Ops as it able play on Xbox 360, PlayStation 3, Wii, Nintendo DS, OS X and Windows
An advantage of independent games is that it allows gamers across different platforms to play games specifically made for their device. This will make the game more of a success, than compared to games that rely on one platform.
A disadvantage to these type of games is that these games must rely on being played on different platforms, which means there will be more development time and money in order to create the game on multiple platforms.
Another disadvantage would be that each platform has different controller layout. The developers will have keep in mind that each button on the control layout must be universal. E.g. PS4 controller has a touchpad, but an Xbox controller doesn’t support that feature.