Commit graph

42 commits

Author SHA1 Message Date
ReinUsesLisp
905cc250a4 video_core: Silence implicit conversion warnings 2019-11-08 22:48:50 +00:00
ReinUsesLisp
1589a146ed shader/node: Unpack bindless texture encoding
Bindless textures were using u64 to pack the buffer and offset from
where they come from. Drop this in favor of separated entries in the
struct.

Remove the usage of std::set in favor of std::list (it's not std::vector
to avoid reference invalidations) for samplers and images.
2019-10-29 20:53:48 -03:00
ReinUsesLisp
cea1214e5a video_core/textures: Remove unused index entry in FullTextureInfo 2019-10-28 00:14:38 -03:00
ReinUsesLisp
93a5cdecbb textures: Fix texture buffer size calculation 2019-07-18 01:07:08 -03:00
Fernando Sahmkow
7afd5d2367 surface: Correct format S8Z24 2019-06-20 21:38:34 -03:00
ReinUsesLisp
91b16d383a maxwell_3d: Partially implement texture buffers as 1D textures 2019-06-20 21:36:12 -03:00
ReinUsesLisp
1d10810d2b video_core: Use un-shifted block sizes to avoid integer divisions
Instead of storing all block width, height and depths in their shifted
form:

block_width = 1U << block_shift;

Store them like they are provided by the emulated hardware (their
block_shift form). This way we can avoid doing the costly
Common::AlignUp operation to align texture sizes and drop CPU integer
divisions with bitwise logic (defined in Common::AlignBits).
2019-06-20 21:36:12 -03:00
ReinUsesLisp
3466bf45e8 maxwell_to_gl: Use GL_CLAMP to emulate Clamp wrap mode 2019-05-30 13:21:01 -03:00
Lioncash
44d91d561a video_core/texures/texture: Remove unnecessary includes
Nothing in this header relies on common_funcs or the memory manager.

This gets rid of reliance on indirect inclusions in the OpenGL caches.
2019-04-06 00:03:35 -04:00
bunnei
5e4baabe78 Merge pull request #2229 from ReinUsesLisp/vk-sampler-cache
vk_sampler_cache: Implement a sampler cache
2019-03-14 21:22:34 -04:00
ReinUsesLisp
3288b12a28 video_core/texture: Fix up sampler lod bias 2019-03-13 00:45:54 -03:00
ReinUsesLisp
a9c05dfcd7 vk_sampler_cache: Implement a sampler cache 2019-03-12 20:20:57 -03:00
ReinUsesLisp
1fc1607e10 video_core/texture: Add a raw representation of TSCEntry 2019-03-12 16:56:29 -03:00
ReinUsesLisp
d949475417 gl_rasterizer: Encapsulate sampler queries into methods 2019-03-09 04:35:57 -03:00
bunnei
af54c6770a Merge pull request #2042 from ReinUsesLisp/nouveau-tex
maxwell_3d: Allow texture handles with TIC id zero
2019-02-06 20:19:20 -05:00
ReinUsesLisp
c1e8fe0067 video_core/texture: Fix BitField size for depth_minus_one 2019-02-05 04:32:06 -03:00
ReinUsesLisp
04fe4a72b9 maxwell_3d: Allow texture handles with TIC id zero
Also remove "enabled" field from Tegra::Texture::FullTextureInfo because
it would become unused.
2019-02-03 04:58:24 -03:00
FernandoS27
b509890e4c Implemented Tile Width Spacing 2018-11-26 09:05:12 -04:00
Rodolfo Bogado
23a2acdf61 fix sampler configuration, thanks to Marcos for his investigation 2018-11-17 19:59:34 -03:00
Rodolfo Bogado
6233b6b235 set sampler max lod, min lod, lod bias and max anisotropy 2018-11-11 16:31:00 -03:00
Rodolfo Bogado
1670155ee2 Implement sRGB Support, including workarounds for nvidia driver issues and QT sRGB support 2018-10-28 01:13:55 -03:00
FernandoS27
1a70753709 Propagate depth and depth_block on modules using decoders 2018-10-13 15:25:18 -04:00
FernandoS27
020cee90ef Fixed block height settings for RenderTargets and Depth Buffers, and added block width and block depth 2018-10-09 21:14:32 -04:00
FernandoS27
57301b3e1d Implemented Depth Compare and Shadow Samplers 2018-10-06 11:27:54 -04:00
bunnei
84375d04ee gl_rasterizer_cache: Implement render to cubemap. 2018-09-30 14:31:58 -04:00
bunnei
d30f69d1af gl_rasterizer_cache: Track texture depth. 2018-09-08 02:53:38 -04:00
bunnei
772c408826 gl_rasterizer: Implement texture border color. 2018-07-23 23:34:42 -04:00
Lioncash
bdfd46e192 video_core: Use nested namespaces where applicable
Compresses a few namespace specifiers to be more compact.
2018-07-20 18:23:54 -04:00
Subv
d97b2711ac GPU: Support changing the texture swizzles for Maxwell textures. 2018-06-06 18:36:15 -05:00
greggameplayer
4786f69570 add all the known TextureFormat (#474) 2018-05-28 19:26:17 -04:00
Subv
110515404c GPU: Implemented the A1B5G5R5 texture format (0x14) 2018-05-27 09:02:05 -05:00
Subv
abd66a9a33 GPU: Implement the A2BGR10 texture format. 2018-04-21 17:32:25 -05:00
Subv
e9f62cb1bb GPU: Implemented the B5G6R5 format. 2018-04-18 18:16:45 -05:00
Subv
102251cb37 GPU: Allow using a configurable block height when unswizzling textures. 2018-04-18 12:52:51 -05:00
Subv
67c9964675 GPU/TIC: Added the pitch and block height fields to the TIC structure. 2018-04-18 11:38:39 -05:00
bunnei
d4dcd3e720 texture: Add missing formats. 2018-04-17 21:41:36 -04:00
Subv
cb3ca1d4cf GPU: Assert when finding a texture with a format type other than UNORM. 2018-04-06 20:44:46 -06:00
Subv
d9e067fad6 Textures: Added a helper function to know if a texture is blocklinear or pitch. 2018-04-06 20:40:23 -06:00
Subv
c8425b1af4 GPU: Added the TSC structure. It contains information about the sampler. 2018-03-26 15:45:05 -05:00
Subv
0255cad30c GPU: Added more fields to the TIC structure. 2018-03-26 15:44:20 -05:00
Subv
bc03dc4793 GPU: Added a method to unswizzle a texture without decoding it.
Allow unswizzling of DXT1 textures.
2018-03-24 11:30:56 -05:00
Subv
d09097276f GPU: Preliminary work for texture decoding. 2018-03-24 11:30:56 -05:00