Year 2 Block B - Advanced Programming Concepts
November 2021 - February 2022
Overview
This block emphasized advanced programming techniques, system design patterns, and professional development skills. I continued to build upon my graphics programming knowledge while expanding into broader software engineering practices.
Key Focus Areas: Advanced C++, System Design, Professional Development
Weekly Progress Highlights
Progress Report Must be updated every week Students report what they have done each week. It shows in-progress work, provides links to the work, and summarizes the feedback on progress made. Section C – Summary of ILO evidence Must be completed in week 8 Students summarize their evidence for each of the Intended Learning Outcomes of this block, and self-assess based on the provided detailed rubric. Section D – Block Reflection Must be completed in week 8 Students reflect on their progress during the block, and set learning goals going forward.
Section A Plan A
Find your dream job Master’s degree in computer science (engineering school or similar education) with at least 4 years of experience Perfect mastery of C/C ++ Excellent level in Mathematics Excellent knowledge of: Various rendering techniques such as: SSAO Deferred Shading techniques Shadows Global Illumination Particles , etc. Strong relationship skills and desire to follow the evolution and the use of your code from its design, to its use. Adaptability, rigor and reliability. Analysis and synthesis skills You show initiative and are proactive. Your creativity and practicality help you find and apply the best solutions to move forward. You want to be involved in high added value innovative projects
A
Link
Self-study goals UE4 C++ Implementation
To implement the majority of my features in C++ in Unreal this block by strengthening my understanding of Unreal from the C++ perspective. Exploring UE4 Materials in more depth
I want to learn in more depth how to manipulate the UE4 materials system to create unique systems in games.
A
Section B Weekly Progress Report B
Week 1
What went well? I got along well with my team and we thought through a great deal of concepts to arrive at one we all somewhat agreed with What didn’t go so well? We weren’t completely happy with our chosen concept so we took some time on Thursday to rework it into something that we were happier with based on the feedback we received What did you learn? I learned that when coming up with concepts in small teams we can use input from all disciplines as I initially assumed that concepting was mainly done by designers Action points?I think in future we need to make a lot of concepts to then slowly narrow them down into the one we prefer rather than choosing the first best one we come up with What did I do this week
Monday Section A Getting reacquainted with UE4 Tuesday Meeting team Concepting first game with team Presenting game concept Wednesday Setting up P4 for team Researching level streaming Thursday Reworked chosen concept Implemented basic level streaming Friday UE4 Guild UE4 C++ exploration and testing
Week 2
What went well? I worked a lot in C++ in UE4 which went quite well considering it is not something I have worked much with before. What didn’t go so well? Sublevel transformation during load-time is taking longer to implement than planned. What did you learn? I learned how to create UE4 BP function libraries Action points?I think for the next game I should try to get my features fully working in BP and if time is left start converting my BP work to C++ What did I do this week
Monday Created system for designers to set level entry and exit for sublevels Tuesday Converted level transformation BP mostly to C++ Wednesday Got sublevel rotations working Thursday Refactoring C++ code in UE4 Helping with controller support Friday C++ guild Finished converting sublevel transformation blueprints to C++
Week 3
What went well? Our game concept turned out quite well. I did well during the presentation of our game What didn’t go so well? Procedural generation was left out of the build because we decided that it did not fit with the type of game that we ended up making in the end.What did you learn? I learned that in the concepting phase you might find that certain things do not fit well with the game in which case you can remove/rework Action points?It would be good for the next game to make the PR constraint a more key part to the concept What did I do this week
Monday Combining work with other PR on team (Stefan) Tuesday Got sublevel transformations fully working Set up Itch.io page Wednesday Setting up builds with DP Thursday Lecture Team communication Presenting concept Friday C++ Guild UE4 experimentation
Block Reflection
Must be completed in week 8 Students reflect on their progress during the block, and set learning goals going forward.
Technical Skills Developed
- Programming Languages: C++, C#
- Graphics APIs: DirectX 12, OpenGL
- Tools & Frameworks: Custom engine development, The Forge framework
- Methodologies: Agile development, SMART goal setting
- Collaboration: Multi-disciplinary team work, technical communication
Key Takeaways
This block provided valuable experience in advanced c++, system design, professional development, contributing to my growth as a game developer and preparing me for industry challenges.
This project page is part of my ongoing portfolio documentation. For more details about specific implementations or to discuss this work, feel free to contact me.