Command Line Calculator Source
This is a command line calculator program, serving to demonstrate OOP and TDD concepts. Calculator forms token trees and evaluates them recursively.
Simple Unity Editor Shortcuts Tools Collection source available
This is a small collection of simple tools to help in scene editing workflows. Duplicating, parenting and renaming are a big part of what we do when editing scenes, so it is worth automating as much as possible. All shortcuts are relevant for Windows systems.
NUnit 2 Cheat Sheet for Unity developers
Unity 5.5 ships with NUnit 2.6. It is accessible through the Window menu, Editor Test Runner. The documentation on NUnit 2 is good, but admittedly isn't very accessible. I will provide my collection of most important attributes and assertions, also with my comments (taken at the time of Unity 5.5 release), saving you the trouble of having to click through the whole documentation. My comments are shown in italic.
UnityTips: ScriptBehaviour predictions
Unite 2016 was full of interesting presentations for upcoming features. One of the things that was especially exciting to me was the Roadmap presentation part where Lucas Meijer talked about the efforts related to C#, GC and the upcoming ScriptBehaviours.
UnityTips: How to use interfaces in Unity scripts (part 3)
To me, engineering is for the most part about getting the desired result with the tools that we have available. It is not about theory, not about being exceptionally clever, it is about creating a system with the available resources and constraints that are present. It is also not about cobbling it up together, it is about advancing your craftsmanship and improving your skills and work ethic with regards to the big picture.
UnityTips: Rename Refactoring without changing your prefabs values (part 2)
We already know values held in our prefabs are serialized values of fields saved on disk. Unity saves data about the field - its name, type, value. This can create some issues with renaming fields.
UnityTips: One change in code that could inadvertently change your prefabs: Enums (part 1)
I show a simple distinction about Unity serialization that could save you a lot of debugging and prefab-modifying time. If you thought changing code in your scripts is safe for your data, you might be mistaken.
Ring Buffer Data Structure + Source Code
RingBuffer is one of those simple, useful data structures that you don't get in the .NET Framework (or not quite the way we want it) and can be useful in certain situations within game development when we want to pack the data tightly.
AI architecture proposition (DEAT)
There are quite a few well known techniques in the modern world of AI for games. There are decision tress, finite state machines, hierarchical finite state machines, behavior trees, 2nd generation and event-driven behavior trees, goal oriented behaviors, goal oriented action planning, hierarchical task networks to name the most prominent ones in order of complexity. The decision which one to use comes down to weighting complexity vs. benefit, and the availability of libraries for some developers. I have been researching the topic recently and have decided to make my own AI model for fun and practice. It is not meant to be the best, most perfect thing ever, it is one solution to the problem. The major benefit is simplicity and speed in all aspects. What is it and how to do it? Read on!
VS Code Syntax Coloration for Unity
Since Unity Technologies is now closely collaborating with Microsoft, it's relatively easy to set up Visual Studio Code editor to work with Unity Engine. You do get Intellisense and advanced debugging capabilities, but you don't get syntax coloration properly like in full Visual Studio. The highlighter in VS Code is not context aware, it does not have semantic highlighting. The highlighting is based on regular expressions, upon which a chosen textMate theme is applied. This means your own types, Unity types, all fields and method calls will simply be white. It also seems roslyn (OSS compiler) already has the required API capability to implement this and it is a matter of time when Code will get it. Well, it's been about a year and we still didn't get it... Even the
prettyprint on my site that you can see below has better syntax recognition!