Commit Graph

278 Commits

Author SHA1 Message Date
Adam Sawicki
33a596f18f Minor improvement: Additional protection with asserts in Allocation::PackedData setters. 2020-03-16 16:40:29 +01:00
Adam Sawicki
38f53e8e4f Add internal structure Allocation::PackedData with bit fields to optimize memory size of Allocation class. 2020-03-16 16:36:37 +01:00
Adam Sawicki
4d27d19b4c Add automatic usage of D3D12_HEAP_FLAG_ALLOW_SHADER_ATOMICS and configuration macro D3D12MA_EXTRA_DEFAULT_TYPE_HEAP_FLAGS. 2020-03-16 16:10:47 +01:00
Adam Sawicki
c7f78c8c08 Add support for small texture alignment
Added configuration macro D3D12MA_USE_SMALL_RESOURCE_PLACEMENT_ALIGNMENT.
2020-03-11 16:48:40 +01:00
Adam Sawicki
0249a894cb Add The Forge to the list of projects using this library 2020-03-06 11:31:55 +01:00
Adam Sawicki
f1e1c1b8d2 Update date in copyright header comments to year 2020 2020-02-07 15:38:52 +01:00
Adam Sawicki
1d4143fd50 Refactoring: Use constructor and destructor in Allocation class
PoolAllocator supports that. Needed to only use parameter pack to pass arguments to constructor.
2020-01-31 14:48:41 +01:00
Adam Sawicki
b706d13cb8 Fixes in documentation 2020-01-27 17:34:49 +01:00
Adam Sawicki
658e3dd6b7 Rebuild binary using Visual Studio 2017 instead of 2019
Added information about Microsoft Redistributable installer to README.md.
2020-01-24 12:32:16 +01:00
Adam Sawicki
2a210dbf13 Fix documentation of Allocator::AllocateMemory function 2020-01-23 13:24:28 +01:00
Adam Sawicki
9cd14c31dc Allocate Allocation objects using PoolAllocator 2020-01-22 16:33:39 +01:00
Adam Sawicki
dc7ca4d26f Implement initial version of D3d12maDumpVis visualization script
Also a minor fix: Add missing mutex lock to BlockVector::IsEmpty.
2019-11-27 14:10:37 +01:00
Adam Sawicki
0db8cd41e4 Add big feature of budget management - struct Budget, Allocator::GetBudget, ALLOCATION_FLAG_WITHIN_BUDGET, ALLOCATOR_DESC::pAdapter.
Added macro D3D12MA_DXGI_1_4, D3D12MA_D3D12_HEADERS_ALREADY_INCLUDED.
Some bug fixes and improvements.
2019-11-20 14:07:21 +01:00
Adam Sawicki
87528d084a Update documentation with a warning about memory containing garbage data not zeros 2019-11-05 16:29:45 +01:00
Adam Sawicki
9586dbdced Fix major bug with dangling pointer after failed resource creation 2019-11-05 15:33:07 +01:00
Adam Sawicki
d6769572f8 Update README.md 2019-10-24 13:18:07 +02:00
Adam Sawicki
6deedf96b5 Add ALLOCATOR_FLAG_ALWAYS_COMMITTED, remove debug macro D3D12MA_DEBUG_ALWAYS_COMMITTED
Also fixed nasty bug with uninitialized member of Allocation class.
2019-10-23 15:21:21 +02:00
Adam Sawicki
42693ff059 Improvements in JSON dump - now prints Flags, Layout, CreationFrameIndex, more detailed Type.
Added function Allocator::SetCurrentFrameIndex.
2019-10-11 16:20:45 +02:00
Adam Sawicki
5855a7ffd1 - Added Allocation::GetResource. Allocation now remembers associated ID3D12Resource and keeps reference to it.
- Added Allocator::BuildStatsString, FreeStatsString for generation of a dump of internal library state, including list of all allocations and their parameters, in a JSON format.
- Added Allocator::AllocateMemory to allocate a piece of heap without any associated resource. Useful for aliasing.
2019-10-11 11:11:28 +02:00
Adam Sawicki
40a205aee1
Merge pull request #1 from Silveryard/master
Fixed compilation error in Vector::reserve
2019-09-30 14:36:36 +02:00
Adam Sawicki
8341ef44a4 Add Allocator::CalculateStats, structure Stats, StatInfo 2019-09-30 14:31:13 +02:00
Sebastian Bischlager
f794a64c57 Fixed compilation error in Vector::reserve 2019-09-21 12:52:34 +02:00
Adam Sawicki
2764c221dc Release v1.0.0. 2019-09-02 13:23:41 +02:00
Adam Sawicki
164d7f2afd Release v1.0.0. 2019-09-02 13:10:53 +02:00
Adam Sawicki
9548aad552 Release v1.0.0. 2019-09-02 13:05:22 +02:00
Adam Sawicki
d9b594b0fb Prepare initial release 2019-07-23 13:21:08 +02:00
Adam Sawicki
eb4b1716aa Prepare initial release 2019-07-23 12:44:28 +02:00
Sawicki, Adam
e359bafd23 Initial commit 2019-05-20 11:26:33 +00:00