CatDogEngine
CatDogEngine copied to clipboard
Codes/Performance/Memory Improvement
trafficstars
To improve coding details:
- define FORCEINLINE macro explicitly to force some methods to compile as inline.
- force all string hash to be executed in the compile time.
- Only init logics will use runtime hash now.
- std::move -> MoveTemp similar to UE so that we can get static_assert if the parameter is a
constor alreadyrvalue.- Engine side needs to replace. But it will include many header files?
To adopt modern cpp features:
- C++ 20 std::span helps to reduce code size
To add basic infrastructure:
- add allocator classes to improve memory layout.
- std::unique_ptr needs to write a customized deleter class for it to free memory by ourselves
- JobSystem to support multiple threads
- SIMD Math