Rendering and Simulation in an Off-Road Driving Game
This paper describes some tech details in Spin Tires, a game about a big truck driving through mud/water, crushing trees and everything else on its path. You can download playable demo (100 Mb) and see...
View ArticleOpenGL Instancing Demystified
When I tried to implement instancing some time ago, I found that nearly 0 tutorials/articles were written about it. Much like everything a bit beyond OpenGL 2.1, this seems to be a bit of a taboo among...
View ArticleAdvanced Python Part One: List Comprehensions
This is an extension of my blog article about list comprehensions and the first part of an advanced python series. We will cover List Comprehensions, Lambdas, Functional Programming, Map / Reduce /...
View ArticleDesigning Parametric Animation Systems
Due to the presence of different people with different skills in a game development process, game developers try hard to increase the level of abstraction base on the view of the people working on...
View Article#include Little Toolkit
What can we do with file including in C++? Do we need to put all the other header files of the project (plus third party libraries) in every file all the time? For sure there have to be some rules to...
View ArticlePerformance: Why did I just lose 100 FPS by drawing one triangle/sprite?
Once, tasked with making the best game ever, a young programmer spent the day getting the game window to display on-screen. Once displayed, he was eager to know how fast it was rendering at and so...
View ArticleAxonometric Projections - A Technical Overview
Abstract This article discusses how axonometric projections may be used in computer graphics, multimedia applications and computer games. It compares the axonometric projection, or parallel...
View ArticleUsing XML Technologies for Enhancing Log Files
Welcome to this article on using XML technologies for, what you might consider as, a relatively trivial part of a software library. Whilst this is a game development book, the content discussed herein...
View ArticleCross-Platform Game Development with Xamarin and MonoGame
FourBros Studio has been continuously developing Taptitude with weekly releases for over two years. Creating and testing updates at such high frequency has been a major challenge for us during this...
View ArticleC++ Include test: full matrix
Finally I am able to present some include experiment results! Previously I wrote about Code Generator and now I can actually run this tool and get some numbers out of it. I compared VC11.0 (Visual...
View ArticleA Closer Look At Parallax Occlusion Mapping
IntroductionParallax occlusion mapping is a technique that reduces a geometric model’s complexity by encoding surface detail information in a texture. The surface information that is typically used is...
View ArticleHLSL: Greyscale Shader Tutorial
In most modern games, colour rendering is definitely the best way to portray the richness of the 3D graphics and lighting effects achievable on current hardware. However, as games such as L.A. Noire...
View ArticleUSB Base Custom Hardware Interface for Unity3D
This is a simple project to demonstrate the USB custom hardware interfacing with Unity3D game engine on top of Microsoft Windows operating system(s).The custom hardware unit used in this demo is build...
View ArticleGentle Introduction to Google Analytics for Flash
IntroductionBeing able to check out how many players play your game, from what countries, for how long, on which levels they have problems, how much points do they score, even do they ever visit your...
View ArticleGetting Started with Duality
All beginnings are difficult. Taking first steps in the realms of a new software library can be pretty rough, especially when you're new to programming or your development environment. This tutorial is...
View ArticleReinforcement Learning for Games
Neural networks are often overlooked when considering game AI. This is because they once received a lot of hype but the hype didn't amount to much. However, neural networks are still an area of intense...
View ArticleBuilding a First-Person Shooter: Part 1.3 Keyboard Inputs
Having a player that just stands watching the world go by isn’t much of a game so let’s add in some movement. We will start by adding a few new variables to the constructor: move = 0.0; strafe = 0.0;...
View ArticleBuilding a First-Person Shooter: Part 1.4 Mouse Inputs
Now it’s time to let the player look around using mouse movements. We start again by adding variables for mouse controls into the constructor: sensitivity=1.0; cameralooksmoothing = 2.0;...
View ArticleBuilding a First-Person Shooter: Part 1.5 Running, Jumping, & Crouching
At this point making the player run at a faster speed is a simple two step process, we need to detect if the shift key is hit and then multiply movespeed. We start off by adding in two variables to...
View ArticleVirtual Texture Terrain
The Leadwerks 2 terrain system was expansive and very fast, which allowed rendering of huge landscapes. However, it had some limitations. Texture splatting was done in real-time in the pixel shader....
View Article