Category Archives: Uncategorized

A Unity Programmer in Unreal Engine’s Court: Editor GUI Programming

Time for a snapshot of the kinds of details that video game programmers often have to fuss over when learning a new system. This time it’s a comparison of Unity and Unreal’s editor GUI frameworks.

In Unity3D, the editor GUI system is quite well-documented and understood. You fill an OnGUI function with all the functions that display your GUI.


Source: Unity Script API reference, Editor.OnInspectorGUI page

This is called an Immediate Mode GUI. Every frame that the GUI is displayed it looks at all of the functions being called as instructions on what to draw, what not to draw, and how the GUI should behave. It’s all fairly well-documented via Unity’s script API, which makes it fairly easy to learn the basics of how to create new editor GUIs.

So, what’s Unreal’s equivalent?

… Time to vent for a little bit.

Continue reading

A Unity programmer in Unreal Engine’s Court: Introduction

By Mike

Well, I have a lot of updating to do here. That tagline in the “About” section, knocked off from Mythbusters, hasn’t been accurate for a long time.

As of now I have five years of game development experience, inclusive of the outside-of-classroom projects I did while I was in my last year of grad school. Adam has exited the games industry entirely for the tech sector, although he’s still exploring games on his own time and regularly there for me to bounce thoughts and ideas off of. For both of us the days when we were in school are so far in the rear-view mirror as to be irrelevant.

In those years I’ve worked at WayForward Technologies, Stompy Bot Productions, and NostalgiCO, and I’ve contributed to a couple of other independent game projects. I’ve worked on three published projects based out of Unity 4.x, going on a fourth with Cryamore coming sometime early 2017. I worked with Unreal 4 for about a year prior to its public release, and recently worked on an Unreal 4 VR project for Gear VR. I’ve wrapped my arms around a wide array of systems, including localization, UI, save data, combat, game state management, animation, input management, and a variety of eccentric Android systems, not the least of which was the Fire Phone and the illustrious Madcatz Mojo.


Here’s a build target everybody wants on their resume.

Yeah… I’m a little different than when I started this blog. Currently I’m one of the most-read Quora writers in game development. I’m writing a lot more regularly about game development topics, so I figure it’s way past time for me to update this blog.

I’m embarking on a bit of a personal project, which hopefully I’ll be revealing soon. As the majority of my professional experience has been with Unity to date it seemed like the decision of what engine I’d build it in would be a no-brainer, but as I’ve had the time to do some research the decision has become less and less clear. As an experiment I’ve been implementing some preliminary systems in each engine, and I felt it forthcoming to share the experience so far.

Continue reading

Tabletop 101: Sci-fi vs. Fantasy — A Problem of Abstraction

By Mike

I’ve been working on designing a tabletop RPG in my spare time for a little while now, based on an original sci-fi setting I’ve been working on for the past few years. In the time since I’ve started working on this system I’ve found that sci-fi has some odd bumps in the road compared with a fantasy RPG. The main issue at hand is abstraction.

A fantasy RPG is very easy to run and develop, mainly due to the conceit that a fantasy game will typically take place in a setting that, apart from concessions made for magic, is less advanced than our own. The idea behind a tabletop RPG is that if players can think it, they can do it, and 90% of people can most certainly think of most of the possibilities at hand in a medieval setting.

By contrast, sci-fi demands abstraction, owing to far future technologies and complex knowledge bases that players, in all but a few rare cases, can’t be expected to understand. It leads to a lot of knowledge and skill rolls in place of the players actually understanding what their characters are doing or thinking. Someone does an engineering roll — is the ship fixed? Yes/no. Someone does a piloting roll — did they dodge another ship? Yes/no. Someone does a biology roll — can they identify that animal? Yes/no. Making the game feel exciting is a big problem, and it’s easy for all too many things to feel like a coin flip.

Continue reading

The half-man, the legend himself: Dante.

Diary of a Hermit: Devil May Cry 3: Dante’s Awakening

-By Adam

Welcome to Diary of a Hermit, a new column about games I should have played already, but haven’t!  Today I’m going to talk about Devil May Cry 3: Dante’s Awakening.

HERMIT-FRIENDLY version!  For people who don’t like spoilers or reading:

Devil May Cry 3 is a hardcore, fast-paced, 3D beat-em-up action game about a white-haired guy named Dante who beats the shit out of monsters because it’s cool.  Featuring over-the-top action and challenging, tightly-designed gameplay, this game is a must-play for game designers interested in the brawler genre.  Just… trust me on this one.  That said, this game comes from the old-school philosophy of “harder is always better”, and is downright infuriatingly difficult at times.  If you are easily discouraged, you may miss out on some of the best that the game has to offer.  It’s a shame that Devil May Cry 3 can be too hardcore for its own good, but overall it’s worth it.

The following is for NON-HERMITS!  This article may contain SPOILERS!

Continue reading