I would like to discuss with you a complex topic: architecture design of the game engine.
Requirements for the 3D game engine:
- Cache-friendlyness
- High utilization of CPU cores
- Good extensibility
- All logic, rendering techniques, etc. must be in separate external files
Also made the assumption that the game can contain constituent game objects, such as a tank (tower + trunk + tank tracks + ...).
I really want to hear your opinion. How would you design the architecture of the engine?
External logic presupposes the existence of a scripting language. How to organize a multi-threaded processing of scripting logic? As I know, in the case of LUA, here is no real threads (whatever it's called "coroutine", yeah?).
I guess I'm very arrogant man... But I would be very grateful if you share with me your experiences! ^^
P.S. Sorry if my english is bad. It's not my native language, I'm russian.
Thank you in advance for your help! I appreciate it very much