Every programmer should know about Yoda conditions and Ninja comments! My favorite term:
The process of taking a well-designed piece of code and, through a series of small, reversible changes, making it completely unmaintainable by anyone except yourself.
@notch, the forth Twitter Digest is all yours!
@notch 12:19 PM – 16 Jun 12
Sometimes when I play a game, the screen goes dark and I see my own reflection in the monitor, and wonder what I’m doing with my life.
Then the next level starts. WOO!!!
@notch 4:07 PM – 13 Jun 12
Spent a few hours implementing the Bullet physics lib into 0x10c today. Works well, but it has the sinking into floors issue I hate.
Physics suck and nobody likes them and also they smell.
@notch 11:46 AM – 6 Jun 12
Free history lesson: Today is the national day of Sweden, so I guess something happened today many years ago. I don’t know what.
@notch 8:49 PM – 17 May 12
I would totally eat healthy food if it had any flavor.
@notch 3:52 AM – 10 May 12
Middle of night, very tired. Some kind of bird. You go away, bird, nobody cares, it’s four am.
Preparing this year’s version of my Introduction to the Unreal Development Kit, I got reminded of Epic having integrated Recast in February this year: Recast is an open-source library for automatic generation of navigation meshes. Although nav mesh generation has been part of the UDK for almost two years now, Epic finally decided to switch to Recast, gaining an almost ten times performance boost.
I highly recommend reading the corresponding CritterAI article in case you’re interested in that topic: Stephen Pratt explains the whole generation process from heightfield generation to region generation to contour generation to convex polygon generation. Many detailed explanations and elaborate illustrations make this article really worth reading. What are you waiting for?
Recently I found this little jewel in some commercial UI plug-in for the Unity3D engine:
if (m_ctrlState == CONTROL_STATE.ACTIVE)
else if (ptr.evt == whenToInvoke)
Now don’t tell me you couldn’t do this in any other way, knowing that the Invoke jump label isn’t used anywhere else.
Fun fact: Visual Studio doesn’t even know how to deal with that – Find All References of Invoke returns a stumped “Search found no results.” 😉