Fernando Sahmkow
53e9e3966a
texture_cache: General Fixes
...
Fixed ASTC mipmaps loading
Fixed alignment on openGL upload/download
Fixed Block Height Calculation
Removed unalign_height
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
f46a979f19
gl_texture_cache: Add fast copy path
2019-06-20 21:36:11 -03:00
ReinUsesLisp
3b430b5605
gl_texture_cache: Initial implementation
2019-06-20 21:36:11 -03:00
ReinUsesLisp
3466bf45e8
maxwell_to_gl: Use GL_CLAMP to emulate Clamp wrap mode
2019-05-30 13:21:01 -03:00
Lioncash
d6db5ebae2
video_core/textures/astc: Remove unused variables
...
Silences a few compilation warnings.
2019-05-09 18:33:36 -04:00
Fernando Sahmkow
aebe67fac7
Fix Layered ASTC Textures
...
By adding the missing layer offset in ASTC compression.
2019-04-30 23:02:31 -04:00
Fernando Sahmkow
56c2b0ea86
Apply Const correctness to SwizzleKepler and replace u32 for size_t on iterators.
2019-04-16 12:00:46 -04:00
Fernando Sahmkow
15368c6070
Implement Block Linear copies in Kepler Memory.
2019-04-15 21:22:16 -04:00
Lioncash
053aae66c1
video_core/textures/convert: Replace include with a forward declaration
...
Avoids dragging in a direct dependency in a header.
2019-04-06 00:14:36 -04: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
d3f26c1546
video_core: Refactor to use MemoryManager interface for all memory access.
...
# Conflicts:
# src/video_core/engines/kepler_memory.cpp
# src/video_core/engines/maxwell_3d.cpp
# src/video_core/morton.cpp
# src/video_core/morton.h
# src/video_core/renderer_opengl/gl_global_cache.cpp
# src/video_core/renderer_opengl/gl_global_cache.h
# src/video_core/renderer_opengl/gl_rasterizer_cache.cpp
2019-03-16 00:38:48 -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
ReinUsesLisp
3989075e5f
gl_rasterizer_cache: Move format conversion to its own file
2019-02-26 20:08:27 -03:00
ReinUsesLisp
64612bf940
decoders: Minor style changes
2019-02-26 20:08:27 -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
David Marcec
1dfb0a513a
Fixed uninitialized memory due to missing returns in canary
...
Functions which are suppose to crash on non canary builds usually don't return anything which lead to uninitialized memory being used.
2018-12-19 12:52:32 +11:00
FernandoS27
b509890e4c
Implemented Tile Width Spacing
2018-11-26 09:05:12 -04:00
bunnei
e84cceb645
Merge pull request #1717 from FreddyFunk/swizzle-gob
...
textures/decoders: Replace magic numbers
2018-11-18 20:13:00 -08:00
bunnei
3418342724
Merge pull request #1693 from Tinob/master
...
Missing ogl states
2018-11-18 19:59:10 -08:00
Frederic L
d2dd9cfc1d
Eliminated unnessessary memory allocation and copy ( #1702 )
2018-11-18 19:53:03 -08:00
Rodolfo Bogado
23a2acdf61
fix sampler configuration, thanks to Marcos for his investigation
2018-11-17 19:59:34 -03:00
Frederic Laing
9d588877ef
textures/decoders: Replace magic numbers
2018-11-17 01:55:28 +01:00
Frederic Laing
8dcfc75e4e
textures/decoders: Minor cleanup
2018-11-15 21:04:17 +01:00
greggameplayer
ec188ec832
Implement ASTC_2D_10X8 & ASTC_2D_10X8_SRGB ( #1666 )
...
* Implement ASTC_2D_10X8 & ASTC_2D_10X8_SRGB
( needed by Mario+Rabbids Kingdom Battle )
* Small placement correction
2018-11-12 18:34:54 -08:00
Rodolfo Bogado
6233b6b235
set sampler max lod, min lod, lod bias and max anisotropy
2018-11-11 16:31:00 -03:00
FernandoS27
82d04c5e99
Fix ASTC Decompressor to support depth parameter
2018-11-01 19:22:12 -04:00
FernandoS27
fe596b4c6e
Fix ASTC formats
2018-11-01 13:08:19 -04:00
FernandoS27
be78be20dc
Fixed mipmap block autosizing algorithm
2018-10-28 19:00:05 -04: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
bunnei
6bf7e0d83d
Merge pull request #1524 from FernandoS27/layers-fix
...
rasterizer: Fix Layered Textures Loading and Cubemaps
2018-10-25 00:29:18 -04:00
Lioncash
a3c2defab1
decoders: Remove unused variable within SwizzledData()
2018-10-23 23:51:13 -04:00
FernandoS27
88ff802e1a
Fixed Layered Textures Loading and Cubemaps
2018-10-23 14:27:36 -04:00
bunnei
fa24c17b95
decoders: Introduce functions for un/swizzling subrects.
2018-10-18 22:41:43 -04:00
bunnei
7ce1c004c4
Merge pull request #1488 from Hexagon12/astc-types
...
video_core: Added ASTC 5x4; 8x5 types
2018-10-14 14:44:24 -04:00
FernandoS27
39ba6950b8
Shorten the implementation of 3D swizzle to only 3 functions
2018-10-13 20:58:00 -04:00
FernandoS27
92e9faba25
Fix a Crash on Zelda BotW and Splatoon 2, and simplified LoadGLBuffer
2018-10-13 16:11:11 -04:00
FernandoS27
1a70753709
Propagate depth and depth_block on modules using decoders
2018-10-13 15:25:18 -04:00
FernandoS27
8b1e913058
Remove old Swizzle algorithms and use 3d Swizzle
2018-10-13 15:25:17 -04:00
FernandoS27
2650e33c48
Implement Precise 3D Swizzle
2018-10-13 15:25:16 -04:00
FernandoS27
8b32bd526b
Implement Fast 3D Swizzle
2018-10-13 15:25:15 -04:00
Hexagon12
f50514b25b
Added ASTC 5x4; 8x5
2018-10-13 17:10:26 +03:00
FernandoS27
eec2311ec1
Implemented helper function to correctly calculate a texture's size
2018-10-12 14:21:53 -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