What and what not

More than half a year ago I thought I finally got my way into matrices, but apparently it was just the "there's some stuff with effect" part. Exactly: This week I was simply unable to fulfill a task cause I didn't knew how to check a collision between an oriented bounding box and a point. You may think I'm a fool if you're into it. I was never able to imagine matrix and vector operations like I can with classic trigonometry, shape rendering, image/voxel data and so on. It's sorta beyond my understanding if it doesn't fit into my "space of thinking". I think in n-dimensional planes, time shifts and algorithmic whatever but simply can't put matrix and vector operations anywhere in my mind. I may be able to use them as a simply "cause and effect" tool but I can't get creative with it. Thus it's probably no wonder why I always try to reduce collision and rendering problems to axis-aligned boxes and circle cause they present the most simple and optimized with any complexity at all. See, this is bugging me. It always bugged when I couldn't understand something. I strife to understand things in total, not just beeing able to use it as a tool cause I can't stand coding with something I don't understand.. I decided do not bother with it anymore other than as a tool. It's against my believes but what I can't comprehend, I can't. But I'm good at a lot of other things in programming. I've always seen my unability to comprehend something I can't spatially understand as an embarrassing weakness. What if it isn't? What if exactly this "weakness" enables me to think differently? What would be my abilities if I'd be able to comprehend matrix mechanics but not about programming language design? Would I still have been able to immediately identify poorly written C++ libraries? Would I still be able to push C to a level where I can put a full sentinel node based linked list implementation into a single macro expression? Certainly not. The time I didn't spend trying to comprehend something I simply can't where spent with equally valuable experiences. After all, that's what makes our experiences, right? I shouldn't tell myself that I'm not a capable programmer just cause I'm not that into matrices. I was able to solve problems others didn't, I know my way in and around every aspect that's not related to matrices, graphics hardware or networking. Oh and don't tell me that's all what video game programming is about - you'd be surprised what other technical problems emerge during development and what tools and tool chains are needed to work around them. Well, I wouldn't call myself a tool programmer but that's most certainly one of the areas I can fit in easily. Workflow optimization, different complexity layers to take care of, a never-ending set of difficult problems... Yeah, one could say this sounds rather comftable to me. Anyway, I guess I'm over-estimating the role of this part of mathematics in game programming (like usual). So many ingenious games give a shit about it and yet they bloom to glory in their way of being some of the best games ever.

No comments: