• Physical Technical Art

    Over the next couple of posts I’m going to be writing mainly on the topic of the emerging field of Physical Technical Art. So… what does that mean you say? Game Development in most parts is a software exercise; once concept art and motion capture has been digitized the remainder of production is mainly dedicated to DCC’s, Assets Pipelines and Code. Development can be fraught with unforeseen hurdles and challenges, some of these problems require a team to think outside the software box and this is where Physical Technical Art implements a solutions. In addition to solving hardware problems Physical Technical Art also aims to improve the human-computer interface (NUI), human to human interface and game interaction methods through the use of technology.

    A great example of a hardware solution is the XBox 360 Controller Monitor. This custom hardware enables the capture of the controller’s inputs (buttons and joysticks) and then displays the values on a small board. This board is then framed with the vision from the game and filmed, giving the reviewer a clear connection between the input and the time taken for it to be displayed on screen.

    The following video is a Tear Down of this hardware, a brief overview of the electronics used and how it captures and displays its data:

    Xbox 360 Controller Monitor (Tear Down)

    Latency is an important concern when developing a game, it changes how the game is played and if it’s too high the user may get frustrated ruining the experience. The Xbox 360 Controller monitor is a practical and simple solution to this important focus. Yes, input latency can be calculated within the devkit; but having a hardware solution ensures no overheads and enables testing for unprofileable games.

    Ben Heck’s Controller Monitor Intro Video

    Ben Heck’s Website

    Uno32 (Ardunio) Code: Macro_Controller.Zip

    Fair Child 8Bit Shift Register DataSheet

    If you use something like this or any other physical solutions in your studios, I would love to hear about it. You can contact me via the contacts tab or just leave a comment.


  • Shader Toy – GLSL ES Online Editor, Compiler & Previewer

    Digging around the web the other day looking for GLSL ES info and I came across this site, it’s a nifty online editor, compiler and previewer.

    It comes with some examples of 2D, 3D and Plane Deformer shaders and it can take input from Time, Mouse(LMB with current pixel and clicked pixel), Viewport Resolution and 4 Texture(sampler2D) channels.

    Happy Shading!


  • Shift dragging files into Maya 2012

    Shift dragging files into Maya 2012 can be a risky business; it turns out that it will delete your file.

    So if you are after new ways of off-loading some of those pesky files that clutter your hard-drive simply shift drag them into Maya and all your dreams will come true. This works for even for Maya native files, they are imported then deleted from the source location. A simple restore from the recycling bin will cease your soon to be heart attack.

    Happy Undeleting!

  • Modifying project files in Visual Studio during pre-build




    So it turns out that Visual Studio uses the application’s cache if a file is open at build time instead of loading the file off disk…ok so this is good, when you want to save memory and speed up the build process. BUT when you are editing a source file that is being created/modified during the Pre-Build step, then you are in a little bit of trouble. Read the rest of this entry »

  • Perforce: Force update missing workspace files



    Q: So I’ve accidentally deleted some random local files and I have no idea which ones. How do I get the files back when Perforce thinks they are still in my local workspace? I don’t want to force update all the files, that would take way too long.

    A: Force update will do the trick, but it will take forever to pull the files down. With a little bit of digging in the documentation there is a way to diff your workspace against the Depot.


      p4 diff -sd //Depot/path/... > UpdateList.txt
      p4 -x UpdateList.txt sync -f

    Read the rest of this entry »