Flyinghead
99ee526ac5
gles3 doesn't support noperspective. vk needs higher prec for color/uv/z
...
noperspective not supported in gles 3. Use smooth instead
Vulkan now needs higher precision for colors, UV and z (adreno 630)
2021-11-08 16:53:47 +01:00
Flyinghead
06ef0e5fdc
vk,gl: use w=1 in shaders. Fix translucent modvols
...
Use w=1 to avoid multiply/divide of xy as in dx9
Disable rendering when video output disabled
Use original w value in pixel struct to avoid precision loss (samsptk)
vk oit: missing memory barrier was producing Tr modvol glitches (JSR)
gl oit: Tr modvol needs full vertex shader
2021-11-07 18:21:44 +01:00
Flyinghead
7c53413bc5
vk oit: fix depth-only Tr pass
...
Cosmic smash
2021-11-05 18:36:09 +01:00
Flyinghead
da3ed74c4e
vulkan: moltenvk support on macOS - WIP
...
sdl: save/restore window position in config
2021-11-01 13:05:22 +01:00
Flyinghead
699dcdaf5b
Merge remote-tracking branch 'origin/master' into net-rollback
...
# Conflicts:
# core/hw/maple/maple_if.cpp
# core/rend/mainui.cpp
# shell/libretro/libretro.cpp
2021-09-30 15:03:29 +02:00
Flyinghead
18cecc8d38
gl,vk: use VO_BORDER_COL for clear color
2021-09-27 13:39:08 +02:00
Flyinghead
d75072362a
vk oit: work around adreno 600 driver regression
...
Android 11 adreno 600 driver v502: PixelBuffer.pixels.length() is
returning 0 in some cases.
Issue #361
2021-09-18 18:08:52 +02:00
Flyinghead
117f47e3a2
rend: shader builder utility
2021-07-19 12:49:47 +02:00
Flyinghead
b66e6560ca
libretro: vulkan support
2021-07-08 12:47:00 +02:00
flyinghead
c205a888a9
options: anisotropic filtering, oit pixel buffer size, fast gdrom load
2021-07-06 16:19:12 +02:00
Flyinghead
7f49accc22
Merge remote-tracking branch 'origin/master' into fh/directx
2021-06-07 20:53:31 +02:00
Flyinghead
c3bc5cfc3b
vk oit: use a 2nd depth attachment for subpass 1
...
subpass 1 needs writable depth buffer (see
9f60c5e854
)
2021-05-30 18:20:04 +02:00
flyinghead
7ed68952ba
Merge remote-tracking branch 'origin/master' into fh/directx
...
# Conflicts:
# core/deps/patches/SDL.patch
# core/hw/maple/maple_devs.cpp
# core/rend/gl4/gles.cpp
# core/rend/gles/gles.cpp
# core/rend/gui.cpp
# core/rend/gui.h
# shell/apple/emulator-osx/reicast-osx.xcodeproj/project.pbxproj
2021-05-26 22:38:48 +02:00
Flyinghead
9f60c5e854
rend: PT alpha must be set before shading
...
Fixes Langrisser Millennium intro fmv and title/main screen. Issue #249
vk oit: use depth buffer like gl oit
2021-05-25 14:15:37 +02:00
Flyinghead
408c65fcbf
gl4: pack/unpack pixel colors. pack poly params. share GLSL with vk
2021-05-11 10:38:17 +02:00
Flyinghead
fb38b224f4
rend: get rid of RenderToTextureUpscale option. Use RenderResolution
2021-05-10 20:07:23 +02:00
flyinghead
f9603dc11a
vk: use texture pointers instead of u64
2021-04-17 19:04:00 +02:00
flyinghead
5359e9a09d
allow gpu-handled palette textures to be replaced by custom version
...
Issue #219
Fix incorrect texture size calculation for VQ textures.
Reorder BaseTextureCacheData fields to have hottest on top
2021-04-17 18:40:58 +02:00
Flyinghead
4a8ce39bfd
vk: use a single command buffer for all texture updates
2021-04-08 10:38:26 +02:00
Flyinghead
1abfa19636
set rendering resolution in discrete steps instead of scaling
2021-03-21 18:03:22 +01:00
scribam
913fbef952
clang-tidy: run readability-inconsistent-declaration-parameter-name and improve parameter names
2021-03-15 19:52:54 +01:00
scribam
af0c267d96
clang-tidy: run modernize-use-emplace
2021-03-13 17:28:32 +01:00
scribam
d715836c40
clang-tidy: run modernize-use-override
2021-03-13 17:28:32 +01:00
flyinghead
0e20d5976b
vram texture locks race condition
2021-03-05 18:22:42 +01:00
Flyinghead
c3a95594f9
New option system
...
Fix per-game settings (Issue #115 )
Automatic load/save state (Issue #173 )
Reload Naomi/AW BIOS after per-game settings are loaded to allow
per-game BIOS region. (Issue #96 )
Restrict Soul Reaver widescreen cheat to the EU version (Issue #188 )
Disable UI elements for overridden settings
Clean up/simplify legacy Naomi ROM loading
2021-03-01 10:13:40 +01:00
Flyinghead
a71c897d56
vk oit: crash when rendering to texture
2021-01-31 17:30:34 +01:00
Flyinghead
1727413247
vulkan: fix crash on minimize and resize. clear framebuffer on resize
...
many vulkan fixes related to init/term/reset
2021-01-09 18:16:39 +01:00
Flyinghead
2c8b5aa7f8
vs2019 build tentative fix
2021-01-04 18:56:15 +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
47f262a2c6
vk: use normal pipeline for raw fb display
...
raw fb also needs to be rotated/scaled
oit: draw opaque polys on first frame
2020-11-19 22:29:06 +01: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
fec79624df
gl/gl4: simplify clipping. share code with vulkan
2020-05-11 16:11:31 +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
4bf6802855
Cleanup include headers
2020-03-29 14:26:21 +02:00
Flyinghead
8ada1d5320
pvr: defer index building and strip merging, filter out infinite verts
...
don't reset tileclip_val on each frame (Irides - master of blocks)
spg clean up
2020-03-27 13:03:49 +01:00
Flyinghead
5894992f70
android: don't use storage for default buttons.png
2020-03-24 23:31:34 +01:00
Flyinghead
aff2b9e1af
fix simple texture bleeding case when upscaling. Clean up
2020-03-11 17:55:13 +01:00
Flyinghead
6bfde76514
vk: avoid calling List::head() in loops
2020-02-25 16:34:49 +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
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
49c6a55f24
vulkan oit: pass native blend function values to shader, not vulkan ones
...
Fixes missing texture in Plasma Sword start screen
2020-02-06 11:39:05 +01:00
Flyinghead
b79c074444
axe wchar
2020-01-31 23:51:12 +01:00
Flyinghead
ff69efff48
ignore trilinear filtering if texture isn't mipmapped
...
fixes shenmue snowflakes color
2020-01-21 19:52:09 +01:00
Flyinghead
a6839f57e7
vulkan: only use per-pixel sorting when needed
2020-01-05 23:03:44 +01:00
Flyinghead
d49373b0f9
vulkan: VMU display
...
Reset pipeline when switching per-triangle/per-strip
Adreno workaround test typo
clean up
2019-12-25 13:09:54 +01:00
flyinghead
424a02cdf3
vulkan: workaround for intel driver bug when depth write is disabled
...
backport adreno driver translucent modvol workaround
2019-12-22 17:48:24 +01:00
Flyinghead
29fd406dd8
vulkan: crash on windows when switching from gl to vulkan
...
Destroy and recreate window when switching from gl to vulkan
VkGetPhysicalDeviceProperties2 crash with old nvidia driver (376)
2019-12-14 17:53:01 +01:00
Flyinghead
c683e0ded8
vulkan: push constants when starting render pass to avoid crash (mali)
2019-12-11 22:31:35 +01:00