* cmake: work around GCC bug when compiling Jolt
* cmake: add build flags for using AVX2 etc.
On linux, AVX2 was used by default for compiling Jolt,
buy not in other parts, which clang doesn't like
(specifically inlining functions using a disabled instruction set)
So now, we just define some compile time options to enable/disable
AVX2, AVX, AVX512 etc. and make the compiler use the code for
everything, not just Jolt. By default, AVX2 is used.
Furthermore, the CMakeLists files were slightly refactored to be
a bit less messy.
* silence GCC warnings
* fix clang build on window
* disable another gcc warning-turned-error
* spring initialization fix
* size_t initializaed to 0 instead of -1
* remove initialization
---------
Co-authored-by: Turánszki János <turanszkij@users.noreply.github.com>
Co-authored-by: Turánszki János <turanszkij@gmail.com>
* custom implementation for wi::vector
* fix
* sdl vulkan fix
* linux fix
* fix
* vector fix
* shader compiler and job system will be initialized automatically on first use
* vector improvements
* updates
* update
* network and audio will be auto initializing on first use only
* fix
* for now, use std::vector
* vector refactor minor
* backlog: access safety
* shader clearcoat fix
* gui initialization on demand
* initializer updates
* job system will be explicitly initialized
- namespace refactor (example: wiGraphics:: -> wi::graphics)
- provided namespace compatibility macro for old user code: WICKEDENGINE_BACKWARDS_COMPATIBILITY_0_59
- resource manager will return `Resource` instead of `shared_ptr<Resource>` objects
- MAD shader optimizations
- implemented alpha to coverage with alpha tested materials when MSAA is enabled
- alpha testing fix with transparent shadow maps
- TLAS and scene buffers will be recreated less frequently when things get added/removed from the scene
- std container replacements for vector, unordered_map, unordered_set
- unordered_map and unordered_set replaced with ska::flat_hash_map
- vector replacement is still std::
- unordered_map performance test (std:: vs ska::)
- backlog improvements
- wiArchive improvements
- editor: added option to dump scene to C++ header file
- common improvements, refactors