-
Cutting Your Teeth on FMOD Part 6: Recording and visualizing sound card output
In this article, we’ll take a look at how to intercept and record the output from a sound card. Our primary focus here will be to create a visualizer that reflects the output sound using the frequency analysis technique discussed in part 4, however you can of course use the recording code for any purpose…
-
LightSwitch for Games Part 3: Creating a Web Interface for your Users
NOTE: Although this series is aimed at small game developers, it is equally applicable to anyone wishing to learn how to use LightSwitch. In this article, I present a fast crash course in a raft of commonly used LightSwitch techniques. You will learn: how to make your web site base URL re-direct to your LightSwitch…
-
Tetris: Adding gamepad support
In this article, we will look at how to add gamepad support to a game using our Tetris clone as an example. Simple2D 1.11 includes gamepad support using XInput – the new replacement for DirectInput in DirectX 11 – and makes it ridiculously easy to add support to existing games as we shall see here.…
-
XInput Tutorial Part 2: Mapping gamepad buttons and analog movement to Windows keyboard events
In part 1 of this mini-series we looked at the basics of the XInput API and how to read the state of all the analog and digital buttons on a gamepad, then wrapped it up into a simple Gamepad class. In this article, we shall look at how to translate button pushes and analog stick/trigger…
-
XInput Tutorial Part 1: Adding gamepad support to your Windows game
In this game development tutorial we will look at how to add support for gamepads to Windows games written in C++, using the XInput API introduced in DirectX 11. XInput replaces DirectInput from previous DirectX versions and greatly simplifies the task of working with game controllers, as long as they are XInput-compatible. If you don’t…
-
C# DirectX API Face-off: SlimDX vs SharpDX – Which should you choose?
A question I often see asked by beginning game programmers on the internet is: I want to code my game in C#. Which DirectX wrapper API should I use? As with most such things, all choices have their pros and cons. Here I will look at the two frameworks most currently in use at the…
-
Visual Studio 2013 Preview: Get rid of the all-caps menu bars
I don’t believe it. The Visual Studio 2013 Preview build still uses all-caps menu bars. That just won’t do. To eliminate this UI design monstrosity from your desktop, open Windows PowerShell (if you don’t know how to do this, open a command prompt, type powershell and press Enter), and type: Set-ItemProperty -Path HKCU:\Software\Microsoft\VisualStudio\12.0\General -Name SuppressUppercaseConversion -Type DWord…
-
C++: Polymorphic cloning and the CRTP (Curiously Recurring Template Pattern)
A common problem in C++ occurs when you have an object of an unknown derived type and want to make a copy of it. Consider the following code: You can’t just use new Vehicle in this situation because only the base class elements (those from the Vehicle base class) will be available in the copy. So what…
-
C++11: Multi-core Programming – PPL Parallel Aggregation Explained
In the first part of this series we looked at general multi-threading and multi-core programming concepts without getting into the meat of any real problems, and in the second part we looked at the theory and application of the parallel aggregation pattern using either C++11’s standard thread library or Boost using classical parallel programming techniques. In…