Great series, especially the AvP one. Really made me think about how the average game is made these days. Due to the complexity of art creation, physics, and everything else, it seems that there's little room for exploration and happy accidents to happen along the way, like how it happened to them. I dream of the day (which I think is very near), when mid sized teams can make relevant and groundbreaking games again (and I mean games with actual gameplay, not interactive movies like Senua )
Probably the best channel for anything Unity (he always has up to date tutorials on the latest features and goes straight to the point)
I've been learning a lot about data oriented programming (as opposed to object oriented, the standard paradigm) and this shit is fascinating. It allows for much more optimized and reusable code. Unity is also transitioning from Object-oriented to data-oriented, and by the looks of it, this will probably be the new standard at some point.
The best advantage of making things this way, is that instead of referencing other gameobjects in your code, you reference data sets. For example, if you follow any Unity tutorial on how to make a Health bar HUD, they will hook up that system to a gameobject (usually a gamemanager), that has to always exist in the scene (singletons), and creates horribly interconnected code, that at some point becomes almost impossible to know what each object is doing.
He offers another solution, instead of hooking up gameobjects to one another, you simply dump the data you need to scriptable objects (data files), and then you can write behaviors that utilize that data. This way, your objects will not reference one another, but simply the same data set. This makes it much easier to create new objects and experiment with gameplay, since you can just use that existing data in creative ways.
If you are interested about this mindset, I really recommend this talk. Even though he uses Unity, these concepts can be adapted to any engine (I suppose).
It's a huge paradigm shift in how we make games, and the more I learn about it there more I believe it will unleash a new batch of highly creative and unique games, free from the tyranny of the old (and bad) ways that we have been making stuff And as a trivia, we use a similar approach on Overwatch to organize our data:
And by transitioning to data oriented programming, you will be able to leverage all the insane performance from Unity's DOTS system: