At Playgroundsquad I learned a lot about game development and programming some of the things that I learned are shown here. I also learned a bit about game design and ethics and morals in games and a lot of programming and problem-solving mostly because we write in our in-house engine called Tengine.
This helped me a lot with my programming because I was dependent only on myself and my teachers, I was not able to google the answer following tutorials on youtube or copy pasting code from stackoverflow.
The assignment/smaller projects I show here are only a few.
I believe ones that I learned a lot from and enjoyed most and got a good understanding of how my code worked and how I solved my problems.
C#
C++
In game projects I often focus on programming game mechanics and UI elements. I also like to read books about computers and programming.
computer math/programming math
computer graphics
how to think like a programmer ?
A bit from C++ and C# books
We got a task to make shaders we learned to write shaders in HLSL it was hard at the beginning to understand what was going on but after reading about shaders and how they work it got easier and easier and I was able to create passthrough, diffusion, specular, normal mapped and textured shader.
The biggest challenge I faced when trying to learn about shaders in HLSL was how to code buffers/samplers in Tengine and make them work with the shader files, also debugging was well pretty hard it was hard to know if it was my shader or engine code but at the end, I managed to make it work.
We got a task to implement PhysX to our application using our in-house (Tengine) this was an interesting challenge because I have never before used any of their tools or libraries.
One of the first things I needed to do was to establish a connection between our engine and the debug PhysX application to be able to debug objects in the game world.
After creating the connection it was time to create a scene that was supporting PhysX and objects, later on, I created objects that had materials that were physics-based. Later on, we got a task to create a simple game using PhysX components I used physics-based materials, triggers and actors.
This was a pretty fun task and I found it pretty enjoyable because this was my first time making something that was a little bit more engine-related even if I prefer coding UI functionality and gameplay functionality.
Entity component system was an interesting task to solve this was my first time working with template classes in C++ I have used them before in C# but the implementation was a bit different. I used template classes to create components like for example Unity.
For our engine and the task we were doing, we needed to create a health component, shooting component, model component, and some others.
This is where we learn how to create code that we can reuse without doing any copy-paste programming simply writing more clean and organize code.
So, for example, I wanted to make a player with health so I just added a health component or I wanted a turret that can shoot and have health I added both of those components.