- font renderer DPI scale change handling
- Editor: user fonts will be loaded from fonts folder, config.ini can override default font, removed yumin embedded font, added NotoSans CJK font to support Chinese, Janpanese and Korean characters with one file
* PE: fixed - Crash on debug BVH visualizer is no raytracing is available.
* PE: fixed - black dots issue. ( https://github.com/turanszkij/WickedEngine/issues/450#issuecomment-1143647323 )
* PE: Another way to check if BVH is active is needed.
* PE: fix - Check if debug BVH is possible. or it will crash.
* PE: changed bug fix to a general Workaround function, depending on current backend.
* Fixed - Crash when creating screenshot without a folder.
* PE: Another way to fix black dots issue single call to workaround. ( https://github.com/turanszkij/WickedEngine/issues/450#issuecomment-1143647323 )
* PE: EventBegin for Workarounds.
* PE: workaround cleanup , removed enum and getbackend.
* PE: Disable DX12 workaround on linux.
* subresource download, upload improvements, ktx2, basis convert: using mipmap data from GPU
* bush and tree terrain assets: mipmap coverage fix
* refactors
* comments
* 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
* common refactors:
- DirectXMath only included in wiMath.h instead of CommonInclude.h
- cleanups in CommonInclude.h
- lua math refactor
- generic allocator refactor
* FLT_MAX to numeric_limits
* linebreak
* comment fix
* allocator fix
* more math refactors
* removed wiContainers, renamed wiAllocators to wiAllocator, moved ThreadSafeRingBuffer to wiAllocator
* Mark concrete graphics device classes as final - they should not be inherited from further.
* Apply consistent snake_cast naming (which has been used in more recent additions) across wiGraphics structs
* Make 'CommandList' type safe so that calling graphics device functions is less error-prone.
* Decouple wiProfiler from wiRenderer by passing the device instance to functions instead of using wiRenderer::GetDevice().
* Bump minor version for graphics refactors.
* Decouple wiHelper screenshot/saveTexture* functions from wiRenderer by providing the graphics device as a parameter.
* Convert wiGraphics.h enums to use enum class (except a couple of raytracing flag enums which seem best left)
* hdr fix
* Documentation updates for enum class.
* Revert "Decouple wiHelper screenshot/saveTexture* functions from wiRenderer by providing the graphics device as a parameter."
This reverts commit fd70249554.
* Revert "Decouple wiProfiler from wiRenderer by passing the device instance to functions instead of using wiRenderer::GetDevice()."
This reverts commit 69b5326cfc.
* Fix debug build
* Fix gcc build (hopefully). Move bitmask operator defs to end of file outside of wiGraphics namespace.
* Remove 'to_underlying' and replace with casts
* graphics device access decoupled from wiRenderer, now should be accessed from wiGraphics::GetDevice()
* minor refactors, comments
* dx12 assert fix
* fixes
* commandlist refactor
* commandlist initial value
* commandlist refactor
* graphicsdevice comments, GetActivePipelineCount() function
* has changed to has_flag
* just rename a thing
Co-authored-by: Turánszki János <turanszkij@users.noreply.github.com>
* Vulkan: Implement pipeline cache support, verifies and loads cache validation.
* wiHelper: Add GetTempDirectoryPath and use it in vulkan cache lookup.
version 0.57.0:
- DX11 removed, DX12 is default now on Windows
- graphics interfaces improved:
- Bindless descriptor support is now assumed
- GPU Buffers with USAGE_UPLOAD and USAGE_READBACK will be persistently mapped after creation
- Removed Map/Unmap
- added BindDynamicConstantBuffer helper function
- improved AllocateGPU helper function
- GPU Queries resolving can be done directly into GPUBuffer
- UpdateBuffer now doesn't synchronize internally, this allows batching updates
- removed support for bindless constant buffers (uniform buffers)
- BindConstantBuffer will accept offset
- RESOURCE_STATES refactor, they can be combined now in the barriers
- many other refactors
- gbuffer normals removed, implemented visibility buffer
- bindless decals, bindless lightmaps, bindless hair particles, bindless software path tracing
- hair particles path tracing support
- path tracing eye adaption supported
- Surfel GI (experimental)
* SDL2 and Unix fix
SDL2 keyboard input, Unix filesystem fix, and SDL2 editor window config, CMake cache gitignore
* Adding comments to the SDL2 keycode fix
For a better understanding
* Slimming down SDL Unix path translation
* Static pathfile compile fix
More pathfile code fix for the compile to work
* Re: Static pathfile compile fix
* sheen and clearcoat
* updated material wnd
* clearcoat works
* sheen updates
* sheen working
* environment reflection alwyas from probe
* restore comment sheen energy conservation
* fixes and gui for sheen and clearcoat
* sheen fix
* ocean, rt reflection fix
* material wnd update
* updated features list