Posts by Year

2022

ChatGPT Killed Fancy Game Namer

less than 1 minute read

I’ve been playing with ChatGPT and it’s kind of incredible. After toying with it for awhile a thought hit me, that this could replace something like Fancy G...

Back to top ↑

2017

Debugging UFunction::Invoke

1 minute read

A few weeks ago Nick Penwarden highlighted several improvements that we made to Unreal Engine 4 while working on Fortnite Battle Royale.

Rendered Image Comparison

8 minute read

For the past several months I’ve been refactoring the automation framework off and on for Unreal Engine 4. One of the things that we wanted to bring to the f...

Back to top ↑

2015

Care and Feeding of Enum Flags

1 minute read

Maybe you’ve been looking at some C++ in the debugger not too long ago and happened across some enum flags on an object in your codebase. However, rather tha...

Cowtastrophe

2 minute read

So for the 2015 Global Game Jam we worked on a multiplayer game called Cowtastrophe. It’s a very silly game, you collect cows, some cows are worth more than ...

Back to top ↑

2013

The Fancy Game Namer

1 minute read

So back in 2012 for the Triangle Game Jam, I threw together a simple PHP script to generate a set of game names based on the pattern Adjective Noun Verb(er) ...

Broken Magic Jumper Online!

less than 1 minute read

I’ve been experimenting with a little project called JSIL off and on, it can take compiled IL code and convert it to Javascript.  Which seemed like an intere...

Undead Man Lover

2 minute read

I should have wrote a post about this months back, but better late than never.  At the Global Game Jam this year my buddy Mike and I teamed up, with some ass...

The Depixelizer

1 minute read

A few days ago Morgan McGuire added a post on his blog about the absence of a good cross platform tool for depixelizing pixel art for higher resolutions purp...

Back to top ↑

2012

Broken Magic Jumper

2 minute read

A couple of weekends ago was the 2012 Triangle Game Jam. Our theme of the jam was to generate game titles by madlibs: everyone contributed a list of 5 adject...

Oxel 1.1

less than 1 minute read

So I’ve posted a new version of Oxel, grab it here.  The new version has several improvements in UI, performance, stability, as well as a brand new re-triang...

Oxel: Source + Version 1.0.1

less than 1 minute read

So I have a new page dedicated to the Oxel project located here: http://nickdarnell.com/Oxel. I’ve also started a new project on BitBucket where you’ll be ab...

Oxel

1 minute read

Oxel is a tool for generating conservative low polygon occluder proxies for 3D geometry that are cheap to render and can be used for occlusion culling in gam...

Global Game Jam 2012 Wrap-Up

2 minute read

The 2012 Global Game Jam is over and it was another year of awesome games in the Raleigh-Durham – North Carolina area.  This week I wanted to put the spotlig...

Global Game Jam 2012: Friday!

less than 1 minute read

I’ve been spending a lot of time lately rebuilding the old Triangle Game Jam website. Now that it’s done I can get back to new articles. The new site is up a...

Back to top ↑

2011

Creating Kinect Controls for Angry Birds

11 minute read

Before I begin let me give you a little background.  About a month ago we decided to try and create NUI (Natural User Interface) or Kinect controls for Angry...

Kinect, Anthropometry and You

4 minute read

Anthropometry (Greek anthropos (άνθρωπος – “man”) and metron (μέτρον – “measure”) therefore “measurement of man”) refers to the measurement of the human i...

Making Your Files Merge Friendly

4 minute read

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 act...

Trip Report: Gamefest 2011 - Seattle

14 minute read

I managed make it out to Seattle this year for Gamefest and figured I’d share my thoughts on some of the different presentations I saw. They are not availabl...

SWIG: Casting Revisited

6 minute read

A while back I wrote SWIG and a Miss, which is a post about several of the problems I’ve encountered with SWIG. At that time I didn’t have a solution for dea...

Project Photofly Experiment

2 minute read

Last week we were sitting around the office wondering if it would be possible to place ourselves in a game world with Autodesk’s Project Photofly.  How cool ...

How I Organize Research

3 minute read

About a year ago I got tired of trying to keep the mounting supply of PDFs and PowerPoint slides I’ve collected over the years organized.  They weren’t searc...

Terraria: The Auto-Saving Server

1 minute read

After beating Minecraft (not really) I thought my addition to these blasted sandbox mining games was satisfied.  Sadly, I was wrong.  I started playing Terra...

SWIG and a Miss

13 minute read

There are so many pitfalls you’ll encounter after using SWIG for any extended period of time or with a large enough codebase.  I thought I would go over some...

Chaining Compute Shaders

5 minute read

My new side-side project with DirectX 11 is something that has been bothering me for awhile.  Chaining compute shaders with variable length output.  Chaining...

Intelligent Character Motion 1.0

less than 1 minute read

Who would of guessed back in 2009 when I wrote this post.  That I would actually end up working on solving those exact problems?

Subsurface Scattering Volumes

2 minute read

I didn’t get to see many sessions at GDC this year.  One I really wanted to see but didn’t make it to was the talk on “Approximating Translucency for a Fast,...

Nsightful

1 minute read

It took several versions before enough kinks got worked out in Nvidia’s Parallel Nsight Graphics/CUDA debugging application before I could successfully profi...

Redneck Cloud Computing

6 minute read

Every now and then I wonder what decisions might be different if I had access to a cloud of machines dedicated to baking game assets or solving other highly ...

Documentation [Easy Mode]

3 minute read

I’ve talked about AtomineerUtils before on my blog very briefly several months back when I first discovered it.  I’ve now been using it pretty much straight ...

Hubert’s Safari Adventure

1 minute read

The Global Game Jam 2011 has ended.  I present to you the labors of me and my team.  The theme this year was “Extinction”, which I’m happy to say I loved.  I...

The Art of the 48 Hour Game

10 minute read

The idea isn’t new, a few people get together one weekend with a common goal; make a game in 48 hours. I have game jams on the mind because the Global Game J...

Triangle Game Jam 2010

4 minute read

The Global Game Jam 2011 happens later this month and I’m really excited.  A few months ago we had our local Triangle Game Jam for the 4th year in a row.  It...

Ambient Occlusion Volumes [Picture Timeline]

less than 1 minute read

One of my hobby projects has been to try and implement Morgan McGuire’s Ambient Occlusion Volume (AOV) approach to ambient occlusion on DirectX 11.  It’s loo...

Heap Inspector

less than 1 minute read

This is a pretty awesome memory tool hobby project Jvander Beek of Vanguard Games is working on.  I’m a big fan of the physical memory layout / fragmentation...

Back to top ↑

2010

C++ VS.Net Context Menu

1 minute read

Awhile ago when I was working on the ShaderEffect Generator I had an idea for another Visual Studio plug-in and quickly got it working.  I finally got around...

WPF/MVVM Hack: ValueChangedEventManager

5 minute read

Anyone that has had extensive experience with WPF and has attempted MVVM knows it’s not perfect.  Over the years I’ve attempted many things in an attempt to ...

German Engineered for Quality

2 minute read

Our PMD CamCube 3.0 arrived over at Activate3D a few days ago, figured I would snap a picture of this bad boy.  This thing is one seriously beefy time of fli...

Activate3D On CNN

less than 1 minute read

I finally got the green light to make a blog post about what I’ve been working on for the past 3.5 months :D Today is a pretty auspicious day for Activate3D,...

Ambient Occlusion Volumes

1 minute read

There’s a pretty cool paper on Ambient Occlusion Volumes I was reading awhile back by Morgan McGuire, the technique actually uses volumes to calculate what p...

WPF ShaderEffect Generator 1.7

less than 1 minute read

I’ve released an updated version of my WPF ShaderEffect Generator tool on Codeplex. The release is fairly minor but I figured I’d update my blog anyway.

Nick ➟ Activate3D

less than 1 minute read

Last week was the start of new things for me.  I’ve moved on from Emergent and joined my good friends and fellow bloggers Dan and Shaun over at Activate3D.  ...

Hierarchical Z-Buffer Occlusion Culling

10 minute read

While I was at GDC I had the pleasure of attending the Rendering with Conviction talk by Stephen Hill, one of the topics was so cool that I thought it would ...

Falcon Punch

less than 1 minute read

We play a lot of Super Smash Brothers Brawl during lunch around here, and occasionally after work there’s additional smashing. I walked in today to find this...

WPF: ViewModel + Attachable Behavior

4 minute read

One of the biggest pain points of MVVM is the boilerplate code that is necessary for it to function.  The code I’m referring to is the code needed to Hook an...

GDC 2010: Rendering With Conviction

less than 1 minute read

One of the good talks I saw at GDC was this one, Rendering With Conviction. Stephen Hill posted his slides for his presentation and you should check them out...

The Toothbrush Achievement

less than 1 minute read

So I was thinking about what [Jesse Schell was saying in his DICE presentation] while brushing my teeth this morning.  About 90% of the way through the prese...

The CLR Team Needs Feedback

less than 1 minute read

So [over at the CLR Team Blog] they’re asking users to send them feedback on what kinds of things they should be focusing on for the next version. Even thoug...

DICE: Design Outside the Box

less than 1 minute read

This presentation from DICE by Jesse Schell is pretty insightful. The talk is about how humanity has become dissociated with reality over the years but becau...

WPF: Heat Maps

3 minute read

So awhile ago I thought, “Wouldn’t it be cool to do heat maps in WPF?”.  Well I started playing around with the idea and immediately was side tracked with ho...

WPF ShaderEffect Generator 1.5

1 minute read

After learning a lot about integrating tools into Visual Studio (2008/2010), I’m happy to announce a new version of my WPF ShaderEffect Generator tool.  (ugh...

Visual Studio: Item Template & Custom Tool

2 minute read

I’m currently working on a project over at CodePlex that I haven’t published yet because I want to make it a little more awesome before I draw back the curta...

Tools of a Tools Developer

2 minute read

No WPF article this Thursday, I’m working on a big one and I keep coming up with sub topics to cover :). So i figured, why not just throw together a list of ...

WPF: How can I debug WPF bindings, visually?

4 minute read

Early on Data-Binding in WPF can be kind of annoying, things aren’t binding correctly, UI isn’t being realized because of it. Searching Google for tips on ho...

Coming Soon: Global Game Jam 2010

less than 1 minute read

The 2010 Global Game Jam starts in just 12 days. I love doing game jams and can’t wait for this one to start. If you’ve ever wanted to break into the game in...

WPF Theme Replacer

3 minute read

I was thinking about the [WPF Theme Replacer] some more and there are a few things you should be aware of when designing your theme to work just like a Micro...

WPF: Adventures in Theming (Part 3)

5 minute read

So in [Part 1] I explained the basics of theming your WPF application and in [Part 2] I provided a more in-depth discussion of how the styles are applied to ...

WPF: ListBox Background Image

less than 1 minute read

One thing I really enjoy doing is duplicating effects in WPF that I’ve seen in other applications. One I like a lot for directory browsers and content browse...

WPF: Adventures in Theming (Part 2)

7 minute read

For this part I wanted to talk about the style lookup system, things to be aware of and some problems with WPF’s “theming” capability in general. Here are th...

Back to top ↑

2009

WPF: Adventures in Theming (Part 1)

2 minute read

I just finished doing a ton of styling/theming work in WPF, after doing so I had many thoughts and experiences on the subject that I thought I would share. S...

The Tale of the Transmogrifier

3 minute read

World Builder has this great little feature (with a good back story) in it that I added in the early days of its development. The idea started with a challen...

WPF: Overlay Control

1 minute read

If you haven’t had a chance to mess around with an AdornerDecorator, I highly recommend that you do.  They’re extremely useful because they allow you to over...

WPF: Kaxaml

less than 1 minute read

I have been using XamlPadX to test out XAML ideas.  But lack of updates had me looking around for a new tool, turns out there is one.  [Kaxaml] has some nice...

WPF: Change TextBox Selection Highlight Color

less than 1 minute read

So if you’ve ever tried to change the selection color of the TextBox in WPF, you’ve probably found out really quickly that it’s not really doable in .Net 3.5...

Gotterdammerung: The Curse of the Dead

less than 1 minute read

One of the best things about my job is getting to see the games users of our tech are creating.  Check out this really cool tech demo from Artifex Mundi.

WPF: The Shapely TabItem

1 minute read

So I wanted to make a really nice looking WPF TabItems and went looking for some examples of how other people have done it.  I really only found one quality ...

WPF: XAML Attribute Order Matters

2 minute read

I think the most annoying thing about WPF is that for any given task everything goes fine, for a few hours, then you do something and you’re stumped why it’s...

MSIL Command 2: The Visualizing

less than 1 minute read

When generating MSIL it’s often very useful to be able to see what you’re doing.  One very handy debugging visualizer I’ve used is Haibo Luo’s DynamicMethod ...

Filters

4 minute read

The two most common filters used in any UI are “Begins With” and “Contains” substring. However, both of these filters are non optimal because they tend to fa...

Problem Steps Recorder

less than 1 minute read

I haven’t actually tried using this in the field, but this little tool comes with Windows 7 and after playing around with it a little it seems really handy. ...

Quis Custodiet Ipsos Threadis

1 minute read

Who watches the threads? Apparently the Visual Studio 2008 debugger. Though, this should come as no surprise to anyone… except for the fact that they watch t...

Natal Arcade

1 minute read

Does anyone remember Nick(elodeon) Arcade? I think they must have used a a physical area for the users to move in, but I wonder if an intrepid game programme...

Project Natal

less than 1 minute read

If you haven’t gotten a chance yet to check out what Microsoft has planned for the 360 in the coming year, you should check out this video about Project Natal.

I ❤️ The Vitality Sensor

2 minute read

The Wii Vitality Sensor was just announced at E3 and I’m thrilled. I’ve wanted this type of peripheral for a long time. Think of what knowing the heart rate ...

Toolbench

1 minute read

We (Emergent) posted a series of demo videos over at our YouTube channel. They are videos we created prior to GDC’09 for customers and such. These videos dem...

World Builder 2040?

less than 1 minute read

This video was getting passed around the office a little while back. Figured I would link it here for posterity. It’s Bruce Branit imagination of what a worl...

Of Users and Tools Developers

2 minute read

Was reading one of the feature articles over at Gamasutra Custom Tools: Environment Artists and Game Editors. Was a good read; from my experience I would hav...

Tick Tock

less than 1 minute read

GDC is nearly upon us and we’re wrapping up the latest release of the product, Gamebryo Lightspeed.  Keep an eye out for updates on the website, or if you pl...

Where would you take it?

1 minute read

There are few things more painful than trying to debug an application in production.  So I was very pleased to run across a little tool today that can be use...

Global Game Jam: Space Fish

less than 1 minute read

This weekend was great fun, I participated in the first annual 48 hour Global Game Jam.  Working on the smash hit, Space Fish.

MSIL Command

1 minute read

MSIL is a fantastic language, but then again I loved programming in x86 assembly back in school .  The problem with programming in MSIL is the same problem y...

Back to top ↑

2008

WPF: Just enough thread to hang yourself

3 minute read

One of the really nice features of WPF is that it comes with a Dispatcher for executing code coming off a thread different from your UI thread.  It’s not sub...

Back to top ↑