Good reads for Game Optimization and Theory?

As with many, I’m a solo budding developer just entering the world of game design and development. I’ve got a light programming background, with a heavy 2D design influence. 3D space is all new to me. I’ve played with things like Sculptris and Blender, however when it comes to implementation of models, importing, materials, meshes, properties and the like, I keep finding new things everyday, which is exciting! However it’s also a bit overwhelming. I keep running into the problem of where do I start? I’ve finally chosen a starting point: Level design. My initial goal is to make a working 3D space scaled appropriately to my vision.

Where this post comes in: I know backpeddling and revisions are inevitable in the development scheme of things, but as a developer I also know that it is also time wasted that could be applied anywhere else is… Well, wasted time. Of course I’m doing this as a personal project so I don’t have any deadlines, but still. My objective here is wondering if there are any free resources explaining 3D optimization, I’ve still yet to understand things like polycount and what is too much, what is too little. As I started playing with Land scupling, which is loads of fun, when envisioning buildings I’m at a loss as to where to begin. I sit here thinking: These boulder and rock models are great! I can easily scale them up to build a cave! … Then I think: Wouldn’t it be more resource effective to build the cave with these boulder parts in Blender, then form them to make a static mesh, which I then reimport? Does that matter? Is there a way to have the game not render or not show the parts of the rock at the rendered outside the game space? At it’s core I’m at a loss. I’m looking for best practices, or a theory to optimization. Instead of talking in very specific terms or programs, more of concepts that can be applied to any program. Fundamentals if you will.

My goal: Develop an initial semi-open world level, a foliage populated hilly forest with a village, hopefully with working doors, and if I get really creative, breakable windows. A working Night/Day Skybox, maybe working moon cycles as a stretch goal. Possibility of weather creation, the ability to trigger weather types with code. These are the starting points I wish to work on. I really want to get the environment and theme before I work on any other concepts.

Any suggestions of guides from practical knowledge, guides from other engines which can be applied ( I’ve found translating some concepts from Unity hasn’t been too bad, though I only tinkered with Unity in these same ways ), theoretical knowledge or concepts, my primary focus being learning optimization and best practices only level design in a 3D format. Any help would be appreciated, and yes, I know the UE4 Documentation is great, and I am making my way through it, however it does seem focused on explaining features to their fullest (As it should) rather than giving me any grounds for scalable optimization. I’ve been finding previously made or released Unreal games just sort of examining aspects and proof of concepts, ARK being the most recent. I noticed how massively scalable the content is in the sense of graphical intensity, Low settings being almost like early 90s games, while Epic settings pushed my computer to it’s limits and was visually stunning. It started me thinking that I literally have no clue how to scale these differences, as it was clearly texture and model upgrades not simply turning on/off AA, Bloom and the like.

I crave knowledge and have a lot of time to learn on my hands at the moment, I will gladly appreciate and accept anything you’re willing to throw my way! Bonus points to provide proof of concept examples I can physically tear apart in the engine to see how it ticks.

I’ll see it, very many thanks in advance!

Yes, it can matter, but only if you have a good amount of those objects in the scene, more object will always take longer to render than a single object because of a small amount of initialization that takes place before the actual rendering, the improvement is minimal, but can stack up in milliseconds. I wouldn’t worry too much about that level of optimization for the beginning unless you start hitting performance issues.

The engine already does this to an extend, in 3D space this is called culling. The engine can also completely hide objects entirely that are not visible, but I’m fairly new to UE myself and not sure how exactly to set that up.

There are many articles on optimization you can find online for free, simply by searching “game optimization” or “game optimization theory”.

Hey,

We all been there! hehe. My personal advice to understand how things should work is to look how others work.
The best things you could do to understand how to achive something is to take an existing project that someone else made and take it a part to see how things are made, what’s the polycount of meshes or simply exploring new ways of doing things.

As you will learn in game development objectives can be achived in alot of diferent ways.

What i find nice to do is go around watching videos on youtube of someone else working while i drink a coffè or play some games on the second monitor.
Also keep in mind that’s it’s not a fast process, it will take you time and alot of trial and error until you find your perfect workflow.

Speaking of workflow, i rarely see two developers having the same workflow, that’s something i find to be very personal while you work alone.

I hope it was helpful even though i didn’t gave you any hard evidence or learning material.

For sure, my own workflow is really what I’m trying to understand. Trying to find that sweetspot groove. Conceptual advice is much appreciated as well, don’t worry. I’ve literally downloaded all the free examples I can find in the LEARN or Marketplace sections so far and am starting to dissect.

I’ve definitely done some googling, a lot of the content I’ve found is not very beginner friendly and covers a lot more indepth than simply the 3D gamespace, which is the chunk I’m hoping to assess first. Things like culling are what I’m interested in, things I can apply right away to Unreal just to get a basic environment and gamespace, the content I’m really wanting to work on is combat! But if I don’t know fundamentals of Static 3D models I don’t know how I’ll ever grasp 3D Dynamic models. I guess I’m mainly looking for specifics or concepts to google. My google-fu is strong, but only works when I know what concept I’m googling.