How We Scrum
We‘re a small indie company of six. Four programmer/designer hybrids, though each of them proficient in other areas too, one artist/designer and one community manager/marketing/designer. Only half of...
View ArticleThe Crying Game #2 : Less tears
This is part two of a dev diary for a game I’m making in a month with Robert Yang, for the Super Friendship Club’s second pageant. The theme was mysticism, so somehow we decided to make ‘Cult Tycoon’...
View ArticleRobust Inside and Outside Solid Voxelization
While wrapping up my post for generating simplified occluders for Hierarchical Z-Buffer Occlusion Culling, I was pointed to a paper called Complete Polygonal Scene Voxelization. Afterwards I found...
View ArticleMake Your Own Level Editor – Part II
On part 1 of this series, I outlined the basic principles of handling the content pipeline, and how the process should work. To continue, we move on to building the level. As mentioned on part 1, I use...
View ArticleHacking the App Stores
Hey everyone, It’s my first post here on AltDevBlogADay and I wanted to briefly introduce myself. My name is Tyler York and I have grown up with video games my whole life, but only started working in...
View Article5 Things You Might Not Know About Visual Studio
Getting to know your game development tools takes time, but it’s time well spent. By taking one step at a time and learning from each other, we can all become experts. Here’s a few things you might not...
View ArticleManaging Culture Changes
This blog was cross-posted here. Ah, culture change. It happens at many studios- as they grow, as they bring in new management teams, or as they shift in genre focus. In the age of tech art, there are...
View ArticleThe Crying Game #3 : Tantrum
This is the final part of a dev diary for “Super Cult Tycoon 2 : Deluxe Edition” a game I’m making in a month with Robert Yang (now as Altercation.), for the Super Friendship Club’s second pageant....
View ArticleMaking Your Files Merge Friendly
Merging is a fact of life for most of us. Eventually two users touch the same files and a conflict must be resolved. For programmers merging is a daily activity, but what about the content creators?...
View ArticleC++ Events
Motivation All interactive game architectures are, by their nature, forced to be somewhat event-driven. There are various hardware-based events for input, audio and network systems, etc. Furthermore,...
View ArticleCold code – the last bastion of code optimization?
A brief history of code temperature. Since the dawn of the computing age processor speed has been dominated by memory speed, a phenomenon known as “the memory wall”. No matter how many ALUs you throw...
View ArticleSource Indexing is Underused Awesomeness
If you’ve ever had to debug code that was not built on your machine – whether looking at crash dumps or debugging live code – then you need source indexing. If you’ve ever wasted time trying to find...
View ArticleBuilding your tools as a webapp – Part 3
So after 2 posts of build up I missed my last posting slot, sorry about that. Hopefully this will get things back on track. What I’m planning to cover in this post is the architecture we chose for our...
View ArticleOn Data and Models (or, how a talk by Jeff Ward helped me get back on track)
Back in January, I had the pleasure to attend Jeff Ward’s talk “Data-Driven is Half the Battle” (slides) at the Game Forum Germany and— looking back now—it really was an important talk to me (thank you...
View ArticleMechanics and Realism?
In a 2009, Famitsu interviewed director Fumito Ueda, the game “Hito Kui no Oowashi Toriko” (aka The Last Guardian) was being discussed circa the first officially released trailer. The topic of this...
View ArticleThe Many-Worlds Interpretation of Game Development
To any physicists reading: Sorry, there’s going to be next to no quantum mechanics in this post. I’m just riffing on the name of Everett’s theory, and will be using ‘worlds’ in a different sense to...
View ArticleYou Should Be Using Microsoft BizSpark
Microsoft BizSpark (homepage, faq) is a program designed to give Microsoft software to software development start-ups for free. If you’ve never heard of it then you aren’t alone. If you have heard of...
View ArticleIncreased Reliability Through More Crashes
Shipping games that don’t crash is hard, and it’s important to use every tool available to try to find bugs. Static code analysis is one technique that I’ve discussed in the past and for some classes...
View ArticleSetting up your own trac and subversion
So you’ve started your game project but you need a few useful tools such as a version control system and a bug tracker, so here are some basic steps for setting up Subversion (SVN) and Trac (A bug...
View ArticleAbsolutely Crackers!
I have held off posting this solution until the deadline on GCHQ’s website had expired, my hope is that this will help to ensure that those who are “unworthy” (in their view) do not abuse the solutions...
View ArticleWhy On Earth Would We Write Our Own Game Engine?
I’m addicted to building technology. I can’t help myself, it’s just so fun and shiny. Tools, games, and especially engines. Mmmm, game engines. Sound familiar? Why do we feel so compelled to write game...
View ArticleTop Ten Technologies of 2011
It seemed wrong to do a ‘normal’ blog post on December 23rd, and my programming themed “Night Before Christmas” rap medley never quite came together, so instead I’m doing a top-ten list. Well, not...
View ArticleStatic Code Analysis
The most important thing I have done as a programmer in recent years is to aggressively pursue static code analysis. Even more valuable than the hundreds of serious bugs I have prevented with it is...
View ArticleBeyond intrinsics to code idiom
A brief history of SIMD I first encountered SIMD architectures back in the early 1990′s when I was writing MPEG and JPEG codecs for a variety of CPUs. I was asked by a couple of chip manufacturers to...
View ArticleConcurrent World Editing, On the Cheap
Summary A small team with limited manpower, we wanted a low-effort way to use our existing version control system (svn) to facilitate concurrent world editing for our open-world 3D game (i.e. we desire...
View ArticleSkin Shading in Unity3d
I’ve been away from AltDev for a while, a bit longer than I originally expected because after a period of crunch before IGF submission in late October, I went back to the comforts of getting a normal...
View ArticleBe a Deployment Boy Scout
The Boy Scouts have a rule: Leave your campsite cleaner than you found it. We know how to apply this rule when writing code but we often overlook this rule when it comes to installing or deploying that...
View ArticleReplicating TweetBot’s Alerts and Action Sheets
It’s been a while since I don’t write anything in this blog or even in my own blog but yesterday I published a new article open sourcing a component I made for Arrived’s iPhone app. The component...
View ArticleThree options for data correctness
In a previous post, I linked to Rico Mariani’s performance advice for Data Access Layers. On G+, Tyler Good asked: I just read the posts and the linked blogs, I had a question about some specific...
View ArticleGathering and Analyzing Data with Django: Part 3
After an even longer delay here is part 3 of Gathering and Analyzing Data with Django. Apologies to those who were waiting for the rest of the series, as the entirety has been completed for awhile. The...
View Article3ds Max & Unity – the Good & the Bad (and some potential Solutions!)
To begin, I definitely want to mention that I’m far from a ‘Unity expert’ at this point – I’m still learning and doing alot of trial and error at this point, but am at the point where I’m at least...
View ArticleBranching strategy is not a remedy for instability
4 years, 5 branching strategies. First we worked all in one branch. Then we became hyper-branched. Then we consolidated into a couple branches. Switched companies. First we were all in one branch. Now...
View ArticleWhy You Should Be Using Construct 2
Note: I in no way represent the makers of the Construct 2 software. I am merely a fan of the program and simply trying to bring a wider awareness of the software to the general public. For those in the...
View ArticlePython’s documentation at your fingertips
The pain As I mentioned in my last blog post, I started learning Python some time ago and fell in love with it. But, as with any new programming language, I spent a lot of time browsing through the...
View ArticleOxel: A Tool for Occluder Generation
Its been awhile since I’ve done an update to my research into occluder generation. If you need a refresher, take a look at: Hierarchical Z-Buffer Occlusion Culling – Generating Occlusion Volumes...
View ArticleGame Engines for Indies
There’s a lot of choices when it comes to development tools for indie developers. As a new developer, we put a lot of thought into which commercial game engine we would license and choose to focus on...
View ArticleUnlocking our potential
In my last article I looked at how content driven games are made, concluding that any sense of control over the story is, ultimately, an illusion. With this article I aim to open the door and look...
View ArticleSQL Server Performance: Part 1
I first began working with SQL (the SQL-92 dialect) in 1995. At the time I’d only ever used raw disk IO for storage; and SQL was a complete shock. Every bit of data I needed could be stored using a...
View ArticleWhy I went back into the studio……
I LOVE working in the studio, I really do. I love the freedom it affords me. I love trying to create games that I want to play! I also really love having a cerabal cortex, so I left the studio life and...
View ArticleSQL Server: High performance inserts
In order to write high performance SQL code, we need to know more about what’s going on underneath the hood. We won’t need to go into exhaustive details on SQL Server’s internals, but we’ll go in depth...
View ArticleOn Simplexity
I just wanted to write a short note about simplexity. As stated by Anders Hejlsberg: “When you take something incredibly complex and try to wrap it in something simpler, you often just shroud the...
View ArticleUnity, Replayed
Replaying actions in a game is a surprisingly common feature. There are match replays of course, but recorded actions are also used in cutscenes, ‘ghost’ players in racing games, and a variety of...
View ArticleFour Tips for Porting Your Game to the Web with Native Client
When people hear ‘web gaming,’ they usually get the image of a 2D game with bad artwork and simplistic gameplay. With the power of Chrome and Native Client, however, you can bring console-quality...
View ArticleShader Generator
Introduction In the last few weeks, I was busy with rewriting my iPhone engine so that it can also run on the Windows platform (so that I can use Visual Studio in stead of Xcode~) and most importantly,...
View ArticleUsing Chrome://tracing to view your inline profiling data
If you have an inline profiling system, with some slight modifications, you can view that data in the Chrome web browser rather than writing a visualization tool yourself. Having a nice graphical...
View ArticleThe Spector of Game AI
Warren Spector recently gave an interview to Eurogamer that’s circulating pretty widely now about the need for better AI in games. Specifically what he’d like to see is people like John Carmack and Tim...
View ArticleFlow – A Coroutine Kernel for .Net
Introduction This post will present a small library called Flow that abuses .Net’s IEnumerable functionality, providing a Kernel for cooperative multitasking based on the concept of coroutines. The...
View ArticleBuilding an HTML5 Game? Don’t Shrug Off Atlases.
HTML5 is an amazing technology for designing web sites. The general flexibility of HTML5 markup and JavaScript often leads web developers to create their content using individual image elements. This...
View ArticleA Simple System to Patch your Game Content
This article explains why it’s important to have your own patching system, and describes how to implement a simple patching system modeled after the Quake3 file-based patching process. Introduction...
View ArticleA new type of touch screen joystick
This post is going to be a little different to my usual posts, as it’s going to be more akin to how I write a document for a mechanic. The mechanic in question is a challenge I set myself: try and...
View Article
More Pages to Explore .....