Flyinghead
ac7bd2a6a0
free()/delete[] mismatch
2021-01-04 21:21:35 +01:00
Flyinghead
7a889803fd
renderer: mipmapped textures render as black when dumping textures
...
Issue #144
2020-12-26 22:59:20 +01:00
Flyinghead
632731bede
vmem: map area 4 access to vram
...
pass DDT0101 diag test
fix vmem handler bug with >= 8 handlers
ch2-DMA: use SB_LMMODE1 for upper mirror
dmac: update SAR and DAR according to CHCR.SM and CHCR.DM
use function templates for vram 32b handlers
clean up
2020-12-20 17:25:28 +01:00
Flyinghead
3f1326a3ac
rend: read framebuffer as non-interlaced when possible
2020-12-16 14:40:11 +01:00
Flyinghead
c03cf8eb45
rend: multi-render, delay swap, refactor main ui loop
...
move ui loop out of hw/pvr
vk: implement multi-rendering, delay swap. Load fb before render pass
fps counter now counts frames, not renders
vk: force ignoreTexAlpha for 565 texture in case the supporting texture
has an alpha channel (RTT). Fixes Alone in the Dark cinematic scenes.
pvr: better detection of frame swapping (FB_R_SOF/FB_W_SOF)
pvr: synchronous rendering now always waits for render in progress
(speed measurement not reliable, render skipped when multi-rendering)
vk: limit swap chain size to 2
2020-12-15 15:09:42 +01:00
Flyinghead
8905410aa4
clean up
2020-11-30 21:59:13 +01:00
Flyinghead
93dc87f17f
rend: fix race condition when clearing texture cache
2020-11-25 23:22:45 +01:00
Flyinghead
4ecf43a08d
vulkan: revert to using 3 swap images. fix crash when switching gl/vk
...
Fix Hello Kitty crash with empty first TR polygon
Fix Test Drive Le Mans crash on invalid textures
Fix wldkickspw crash with invalid TA data
2020-07-11 17:38:41 +02:00
Flyinghead
1713124711
vulkan: linear tiling for small texs. don't track in-flight texs
...
Linear tiling is faster for small, frequently updated textures
When lots of textures are updated each frame, a skipped frame will
destroy/recreate all textures, causing another skipped frame, etc. So
in-flight texture tracking is disabled, except for RTT textures
Limit swap chain to 2 images
Refactor base and oit renderers to avoid code dup
2020-07-10 18:50:53 +02:00
Flyinghead
7449230af8
handle some palette textures on the GPU
...
get rid of PixerPacker templates
no need for GLSL precision qualifier in GL4
2020-07-08 18:17:15 +02:00
Flyinghead
fee28194fb
savestate: save sq_remap, save aw cart state, fix lr aw format
...
save AW cart state
save sq_remap used for mini-mmu with store queues
allow loading lr aw savestate. upgrade to v11
aica: saturate EG register
savestate: save current TA data
texcache: fix race condition when deleting a texture
handle 1x1 YUV tex as 565
2020-07-06 16:28:53 +02:00
Flyinghead
786c8e7744
get rid of libpng and use stb_image_write instead. OSX: static link SDL
2020-04-08 15:34:21 +02:00
scribam
5b60e3e47b
Load custom textures with stb_image exclusively and remove loadPNGData function
2020-04-07 19:17:16 +02:00
scribam
0077bbe295
Remove unused deposterize code
2020-04-03 18:55:02 +02:00
Flyinghead
ca3c2a2387
rend: use original palette data to compute palette hash
2020-04-01 17:12:55 +02:00
scribam
769770ab81
Replace cMutex by std::mutex
2020-03-30 23:00:43 +02:00
scribam
a155282fd0
Cleanup compiler warnings (mostly sign-compare)
2020-03-30 23:00:43 +02:00
scribam
e99aac3575
Remove "using namespace std;"
2020-03-30 23:00:43 +02:00
scribam
9a420b0093
Remove macros EMUERROR
2020-03-30 22:18:44 +02:00
scribam
4bf6802855
Cleanup include headers
2020-03-29 14:26:21 +02:00
Flyinghead
c5a42a57bc
limit maple schedule time, allow vram 8-bit reads, minor changes
2020-03-28 12:19:36 +01:00
scribam
3ccd8c624f
libpng: use the public api to retrieve io_ptr
2020-03-25 18:15:32 +01:00
Flyinghead
5894992f70
android: don't use storage for default buttons.png
2020-03-24 23:31:34 +01:00
Flyinghead
54261b69c9
renderer: handle mipmap D-adjust param (convert to lod bias)
2020-03-18 18:51:34 +01:00
Flyinghead
e3313d27b2
custom texture: stop loader thread before loading state
2020-03-13 18:01:33 +01:00
Flyinghead
03f096384b
generate mipmaps for custom textures when needed
2020-03-09 22:49:05 +01:00
Flyinghead
0ff22ed0a6
custom tex: disable mipmapping when dumping textures
2020-02-21 16:16:54 +01:00
Flyinghead
75bfd25224
custom tex: support v1 (content+pal) and v3 (...+format) hashes only
2020-02-19 18:48:56 +01:00
Flyinghead
e2b3ef147d
custom tex: recreate gl/vk texture when loading custom tex. vk crash
2020-02-19 14:31:35 +01:00
Flyinghead
84ba8afe0f
Ignore tex address and stride in texture hash
2020-02-09 23:08:11 +01:00
Flyinghead
3f7ea1fda9
fix crash for 1x1 TW textures
2020-02-07 20:41:59 +01:00
Flyinghead
391cbdc044
restore previous twiddle table for non-square tex
2020-02-07 19:13:23 +01:00
Flyinghead
9826afa063
upload all texture mipmap levels to gpu
...
implemented for gl/gl4/vulkan/oit
don't auto-generate mipmaps in vulkan
simpler/smaller detwiddle table
use std::lock_guard with cMutex
2020-02-07 16:55:32 +01:00
Flyinghead
78987074a6
renderer: add 32bpp conversion routines for bump map textures
2019-12-10 16:15:14 +01:00
Flyinghead
3b86c57d0e
texture corruptions with some wince games
...
vram wasn't protected in some cases
Worms World Party, Tomb Raider - Final Revelation, Hundred Swords
2019-12-09 13:17:58 +01:00
Flyinghead
09f5d25133
vulkan: automation screenshot. less code duplication
...
fix assert on exit due to not released vmem
fix crash when resizing window
2019-11-13 20:08:14 +01:00
Flyinghead
86818389ac
move texture cache to a template class. vulkan: OSD on android
...
store texture in the cache map instead of the heap
make related functions member of the class (CollectCleanup, killtex ->
Clear)
refactor common OSD stuff into rend/osd
vulkan support for OSD
2019-10-21 16:39:16 +02:00
Flyinghead
d28a7f45c5
vulkan: android support
...
align uniform buffers according to physical device requirements
destroy old swap chain before creating new one
some drivers don't support some 16-bit texture formats for optimal
tiling
2019-10-15 16:49:20 +02:00
Flyinghead
fb52b38ac3
texture upscaling was missing some paletted alpha channel formats
...
Fixes dark pixels on edges when using xbrz upscaling (Capcom vs SNK 2)
2019-10-14 15:15:20 +02:00
Flyinghead
06e1456d4f
vulkan: memory allocator
2019-10-12 13:48:41 +02:00
Flyinghead
38f50c1b5a
gles: refactor rtt vram writeback out of gles
2019-10-09 21:14:31 +02:00
Flyinghead
751f30003d
rend: fix stride regression introduced in 24b973f7
...
Fix YUV textures corruption
2019-10-06 14:16:12 +02:00
Flyinghead
27e9acaac6
rend: refactor ReadFramebuffer() out of gles
2019-10-05 16:06:07 +02:00
Flyinghead
b1defae3f7
vulkan renderer - WIP
2019-10-05 11:50:14 +02:00
Flyinghead
8202ac420b
pvr,rend: more refactoring out of gles. Change texture id to 64b
2019-10-04 13:33:08 +02:00
Flyinghead
24b973f763
rend: refactor texture cache and poly/triangle sorters out of gles
2019-10-04 12:22:18 +02:00
Flyinghead
6ab8b185c8
Protect vram pages only when needed. Use lambda for xbrz paralleliz.
...
Each vram page is now protected only once.
Get rid of std:function and std::bind and use lambda expressions.
2019-09-30 15:31:06 +02:00
Flyinghead
8b949e1dca
Get rid of time_sync timer. Clean-up
2019-09-11 15:09:23 +02:00
scribam
e0fb50488d
deps: Update xxhash integration
2019-09-06 21:05:19 +02:00
Flyinghead
2015d9a696
rename and clean up
2019-08-30 23:35:10 +02:00