Here I am again, at the end of a trimester, and I'm about to wrap up everything I need to do. It feels strange, I don't feel like I've done much, but when I look back I can see just how much I've progressed.
There's been a few things that I, as a programmer have learned in the past few weeks. I'd love to share these things with you. But first we have to start with what I've created, my role in them and what I came out of them with.
The freshest project in my mind is Shared House the only major project that I've worked on in the past tri. This project, as described in one of my previous blogs, was rather challenging as both a Project Manager and Programmer. While I didn't do much in the way of programming, what I did do was oversee the introduction of 3rd party plugins and assets into the game. This included the use of VRTK and FMOD, which also required that I become quite intimate with these tools. It was awesome to see that even my basic understanding of these tools could be used to create the game that we wanted out of Shared House.
Looking a little further back, I looked into the creation of Application Programming Interfaces. Which, while my node module is utter dog's breakfast, and I don't want anyone to use it, it was fun to look into and observe the process of creating. With the creation of this API, I was required to learn about NPM commands, Node.js and Python (both with JSON serialisation). Which was really fun to do. There's something about pulling information successfully that just feels good, I might even look into making the module actually viable in the future.
Continuing on from that sort of notion. I branched out from the C++ and C# norm and learned some Node.js with my Discord bot, Loud Pipes. While Loud Pipes is a simple bot, I wanted to use it as the initial learning platform for Node.js, and see what I could do with it. I ended up having a database of Magic: The Gathering cards that you could random, search or make a booster pack from, which worked relatively well, and looked cool too!
Moving further down the timeline, I learned some things about Spatial Partitioning in games, or just in general. It was incredibly useful to learn about quadtrees and all of that jazz, and I might just give it a more detailed shot once this tri is over. Talking about rendering stuff, I also played around a bit with basic shaders, which was fun. Though I didn't make anything too detailed, having that basic understanding of Unity's derivation of HLSL will really help in future projects. Speaking of useful information I also learned about A* pathfinding on a 2-Dimensional plane for C++. it was a hassle, but I got it working, and it worked 'well'.
That's a really long list when I see it.
Though when I think about how I did in relation to all of these things, I don't feel like I did great, I can see that the amount of things that I've learned about in the past 10 or so weeks has been extensive, and it's really useful information in terms of being a programmer. I feel that of all of the tasks that I've set myself thus far in the project, I've come out with something that satisfies what I was trying to do. Perhaps it took somewhat longer for me to do it, but I still did it. Regardless, I still feel proud of myself for doing so.
I believe that this tri I was able to grow, and that feels awesome. Though I still have no real idea of what I want to do in the industry. I think after completing all of these tasks, a generic game play programmer, while a basic and widespread area, that's where I feel most comfortable and that's where I have the most experience at this point in time. It might be interesting to look further into artificial intelligence, particularly looking back to the flocking project I completed some time age, looking into stuff like A-Life and seeing the cogs behind that. But I don't know, I hope that within the next couple of weeks I'll be creating small projects and pumping out games on my itch page.
But until then.