Philip Rebohle
8d3e60c2f1
[dxgi] Cosmetic changes
2018-04-14 12:02:55 +02:00
Philip Rebohle
db541d188f
[dxgi] Added static format mapping table
2018-04-12 17:49:14 +02:00
Philip Rebohle
3405b89494
[dxgi] Rename and move DXGI format lookup related structures
...
This is part of a major refactoring process regarding DXGI->Vulkan
format conversions. Since we don't patch format lookup tables any
longer, we can create a global lookup table.
2018-04-12 15:36:01 +02:00
Philip Rebohle
f5679211cd
[dxgi] Re-implement gamma control functions
2018-04-12 13:38:22 +02:00
Philip Rebohle
c9c3bc12cc
Revert "[dxgi] Create persistent DxgiOutput object"
...
This reverts commit ad7f0971cf
.
Causes crashes in Overwatch due to weird refcount behaviour.
2018-04-12 01:48:57 +02:00
Philip Rebohle
ad7f0971cf
[dxgi] Create persistent DxgiOutput object
2018-04-10 22:07:00 +02:00
Philip Rebohle
83a0eda4f6
[dxgi] Fixed packed 16-bit format mappings
2018-04-08 15:19:26 +02:00
pchome
e9c7dcfc76
[dxgi] Replace MSVC _countof macro with std::size ( #231 )
...
* [dxgi] Replace MSVC _countof macro with std::size
pro: crosscompiler
con: may not work for older clang/gcc/...
http://en.cppreference.com/w/cpp/iterator/size
For example `Run this code` mode produces errors for GCC-5.2(C++17) and clang-3.8(C++17). Local GCC-7.3 and clang-7 versions are ok.
Not tested w/ MinGW64.
* [dxgi] Replace MSVC _countof macro with std::size
2018-04-02 18:49:03 +02:00
Philip Rebohle
2973c18055
[dxgi/d3d11] Remove COM_QUERY_INTERFACE macro, reset pointers
...
May fix some crashes in applications that rely on the returned
pointer being set to nullptr before returning.
2018-04-02 12:52:02 +02:00
Philip Rebohle
77010d96e4
[dxgi/d3d11] Set returned pointers to nullptr before returning
...
May solve issues with applications which check whether the returned
pointer is null rather than checking a function's return value.
2018-04-02 12:04:20 +02:00
Philip Rebohle
ae88f83b86
[d3d11] Introduce D3D11DeviceContainer
...
Refactored DxgiVkDevice, D3D11Device and D3D11Presenter
to behave more like aggregable objects, where the new
D3D11DeviceContainer class is the COM aggregate object.
Fixes the reference counting issue outlined in #210 .
2018-03-28 21:24:52 +02:00
Philip Rebohle
8d3dcba8d5
[dxgi] Renamed private DXGI interfaces
2018-03-28 19:06:00 +02:00
Philip Rebohle
410cde3f17
[dxgi] Move device creation to DxgiAdapter
...
This is better than exporting new functions.
2018-03-28 18:58:53 +02:00
Philip Rebohle
6babc22ec0
[dxgi] Reset pointers before returning an error
...
Also fixes a refcount issue and minor code formatting issues.
2018-03-28 11:56:58 +02:00
notaz
f02b44f440
[dxgi] Fix some argument checks ( #205 )
...
Changed according to wine's tests.
2018-03-26 07:38:37 +02:00
Philip Rebohle
5eedbc0546
[dxgi] Always use 32-bit depth buffers instead of 24-bit
...
Support for 24-bit depth buffers seems poor even on GPUs which support
them, and there seem to be no issues with using 32-bit buffers in practice.
2018-03-22 11:09:23 +01:00
Guy1524
b3cd7547ca
Move Custom PCI ID to DXGI
2018-03-16 19:40:26 -04:00
Mikhail Paulyshka
b17568deba
[dxgi,d3d11] log unknown interfaces GUID ( #154 )
...
* [d3d11] log unknown interfaces GUID in QueryInterface()
* [dxgi] log unknown interfaces GUID in QueryInterface()
2018-03-12 12:05:43 +01:00
Philip Rebohle
e2314cfe58
[dxgi] Fixed R10G10B10A2 format mapping
...
Fixes lighting issues in The Witcher 3.
2018-03-08 16:23:44 +01:00
Philip Rebohle
868e55ede7
[dxgi] Added support for 422 formats
...
Untested, but should fix error messages in some engines.
2018-03-01 10:45:46 +01:00
Clément Guérin
c80488428e
[dxgi] add support for B4G4R4A4 color format
2018-02-24 22:48:40 -08:00
Philip Rebohle
3144a57ade
[dxgi] Added typeless format flag
2018-01-28 18:06:08 +01:00
Philip Rebohle
178a8c7c4b
[dxgi] Removed leftover debug message
2018-01-17 05:34:51 +01:00
Philip Rebohle
ce129d4172
[dxgi] Fixed DXGI_FORMAT_A8_UNORM component mapping
2018-01-17 01:13:46 +01:00
Philip Rebohle
10269876e3
[dxgi] Initial fullscreen support
...
The implementation is highly experimental and may cause issues.
Tested with DXUT-based Microsoft SDK samples and Nier:Automata.
2018-01-13 18:56:15 +01:00
Philip Rebohle
2b5bb16334
[dxgi] Removed SDL dependency from DxgiOutput
2018-01-13 16:32:46 +01:00
Philip Rebohle
1373fe5fcc
[dxbc] Implemented bufinfo instruction
2017-12-30 01:26:37 +01:00
Philip Rebohle
659ec7b59d
[d3d11] Added DXGI format properties
2017-12-20 14:54:24 +01:00
Philip Rebohle
f2587ab1b6
[dxgi] Implemented separate color/depth format tables
...
This is required because in D3D11, typeless formats can be used
to create both depth and stencil images, and color formats can
be used to view depth images. In Vulkan, images and views that
are used as depth-stencil attachments will have to be created
with a depth-stencil format, so we have to take the image's
bind flags into account when picking a format.
2017-12-19 14:47:35 +01:00
Philip Rebohle
2a266eaad4
[general] Added 32-bit support
2017-12-12 12:50:52 +01:00
Philip Rebohle
4a3b04f605
[dxgi] Mapping DXGI's RGBX formats fo Vulkan RGBA formats, needs testing
2017-12-10 19:47:38 +01:00
Philip Rebohle
4a0ff5343a
[dxgi] Added more format mappings
2017-12-09 14:41:37 +01:00
Philip Rebohle
b7e263fc73
[dxbc] Added highly experimental shader input/output interface code
2017-12-07 16:29:34 +01:00
Philip Rebohle
f794d6c398
[dxgi] Fixed SRGB format feature requirements
2017-12-06 23:28:07 +01:00
Philip Rebohle
9fa6592b7d
[dxgi] Added initial support for format conversion
2017-12-04 11:33:04 +01:00
Philip Rebohle
0cdc13d785
[dxgi] Renamed private DXGI interfaces
2017-11-27 15:51:53 +01:00
Philip Rebohle
187c5aa092
[dxgi] DxgiAdapter::GetDesc now returns correct adapter name
2017-11-26 16:18:32 +01:00
Philip Rebohle
f5dd030074
[dxgi] Implemented IDXGIFactory1 and IDXGIAdapter1 extensions
2017-11-26 16:12:11 +01:00
Philip Rebohle
f924931d2d
[general] Removed TRACE calls for now
2017-11-26 14:01:41 +01:00
Philip Rebohle
c095fab1c9
[dxvk] Fixed interface queries
2017-10-15 21:50:45 +02:00
Philip Rebohle
5d99a37d69
[dxgi] Implemented DxgiDevice
2017-10-11 15:31:36 +02:00
Philip Rebohle
bed6d23e7f
[dxgi] Implemented some DXGI classes
2017-10-11 03:09:04 +02:00