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
537c2a4ed6
pvr: reset face and offset colors when not set in poly param
...
Fixes black ice in NHL 2K2 and black players in NHL 2K
Clean up
Don't build soft renderer
2019-09-21 22:53:09 +02:00
scribam
49b7e0682b
Cleanup
2019-09-07 20:36:13 +02:00
scribam
e0fb50488d
deps: Update xxhash integration
2019-09-06 21:05:19 +02:00
scribam
bdf2029e99
Simplify libpng/zlib integration
2019-09-04 19:59:51 +02:00
Flyinghead
7ff225bfa0
PVR: detect direct FB writes in non-interlace. Fix packed 888 FB format
2019-08-09 12:03:09 +02:00
Flyinghead
a9dbbccf93
Unprotect VRAM before switching system. Fix texture cache clean
2019-07-28 17:06:12 +02:00
Flyinghead
60ec054b59
support for VQ compressed paletted textures
2019-07-12 15:34:10 +02:00
Flyinghead
2c8094f987
renderer,sdl: use new logging
2019-07-01 17:41:15 +02:00
Flyinghead
99778a7715
per-pixel renderer: RTT might need bigger buffers than screen
2019-06-27 22:41:16 +02:00
Flyinghead
ad5ab6240b
refactor vram lock/unlock code into new vmem.cpp functions
2019-06-19 14:49:14 +02:00
Flyinghead
47bb509f02
Add horizontal screen stretching option
...
fix scissor test when scaling/stretching
fix infiniloop when starting a game fails
2019-04-08 00:21:06 +02:00
Flyinghead
4b7e4f4677
custom textures: fix race conditions
2019-04-06 19:38:00 +02:00
Flyinghead
1ef8caff88
include TCW in HD texture hash
...
Soul Calibur has textures sharing the same data but with different
formats
2019-03-26 21:14:39 +01:00
Flyinghead
3a847bf4da
use GL_UNSIGNED_BYTE instead of GL_UNSIGNED_INT_8_8_8_8
2019-02-19 23:15:34 +01:00
Flyinghead
054b4662fd
getting rid of `#ifdef GLES` to use the same code for all envs
...
Added latest GL 4.6 header files
2019-02-19 21:40:21 +01:00
Flyinghead
9526fada5e
Added RenderLastFrame() to Renderer interface
...
implement screen scaling for per-pixel renderer
fix output FBO not being freed/recreated when GL context is reset
refactor DrawQuad on per-pixel renderer
2019-02-19 11:36:59 +01:00
Flyinghead
810182c4fe
Scale down native resolution setting
2019-02-19 00:49:24 +01:00
Flyinghead
e2c839dde3
GLES: detect gl extensions and use packed depth/stencil buffer for RTT
2019-02-18 17:42:07 +01:00
Flyinghead
2ff6d1b819
Fix render to texture buffer alpha channel for 1555
...
Saturate alpha when strictly greater than threshold, not >=
Don't put rendered texture in cache if rendering to texture buffer
(VRAM)
Fixes Skies of Arcadia start menu
Restore VRAM lock if null
2019-02-03 17:53:02 +01:00
Flyinghead
15fa475f8a
Move DumpTexture() to CustomTexture and other fixes
2019-01-02 09:33:19 +01:00
Flyinghead
9a3dd1c2d1
build fix
2018-12-30 19:44:18 +01:00
Flyinghead
3f98c2ba3c
Don't delete a texture when async load is pending
2018-12-30 19:19:27 +01:00
Flyinghead
e7fee139e4
build fix
2018-12-30 18:50:24 +01:00
Flyinghead
dd280ee24d
Custom textures loading and dumping
2018-12-30 18:42:55 +01:00
Flyinghead
93436c5ec1
Partially revert previous commit as it causes problems with RTT
2018-11-30 18:15:47 +01:00
Flyinghead
284dcf35a7
Add StrideSel to texture cache key as well
2018-11-30 18:06:32 +01:00
Flyinghead
63337d5178
Add ScanOrder to texture cache key
...
Fixes corrupted title screen in Grandia II
2018-11-30 17:56:57 +01:00
Flyinghead
6177a5b33a
Clear texture cache on exit
2018-10-29 18:02:47 +01:00
Flyinghead
3f791d6f04
Merge OIT renderer into master
2018-10-04 10:29:23 +02:00
Flyinghead
df61073c39
Clip textures that extend past the end of VRAM.
...
Only load the valid portion of it.
Fixes Shenmue Space Harrier mini-arcade game.
Disable verify on non-square twiddled textures for Quake 3.
2018-09-18 12:01:16 +02:00
Flyinghead
e54ac36544
Texture cache optimization for frequent palette updates
...
Some old 2D games change palettes very frequently, which causes the
texture to be updated for each render.
This change uses a hash of the palette to detect changes, and include
the palette type in the cache key to distinguish textures of different
depth.
2018-09-06 12:11:55 +02:00
Flyinghead
e59d7eaf3d
Direct framebuffer writes support
2018-08-26 16:58:10 +02:00
Flyinghead
31d8c1f091
Backport texture upscaling with xBRZ
2018-08-01 19:43:01 +02:00
Flyinghead
07a36ee256
avoid named struct initializers
2018-07-24 11:22:56 +02:00
Flyinghead
e637dcf8f9
reinstate line deleted by previous commit
2018-07-18 16:07:17 +02:00
Flyinghead
cc8569fcf8
Fix 8888 high-quality textures on GLES/arm
...
GLES doesn't support uint 8888 so bytes must be swapped on little endian
architecture.
2018-07-18 16:01:40 +02:00
Flyinghead
0284d635d2
Upscale rendered-to textures
...
Increase the size of RTT textures by a given integer factor. Defaults to
1.
This gives much better quality textures, particularly visible when used
fullscreen for transition or pause screens.
2018-07-16 16:28:48 +02:00
Flyinghead
87f8c5194f
Better fix for texture cache key needing StrideSel
...
StrideSel and ScanOrder are no longer part of the texture cache key
since that breaks RTT texture matching. But they are updated at lookup
time so they will be used if the tex is updated later.
Fixes RTT-based xfade screens in Skies of Arcadia.
2018-07-11 22:08:10 +02:00
Flyinghead
889f722e73
Fix PAL4 textures
2018-07-09 19:20:33 +02:00
Flyinghead
18b2d8273f
Improve paletted and YUV texture quality.
...
Paletted textures using a 32-bit palette and YUV textures are now
converted to 8888 format, which results in a lossless conversion.
Fixes background texture quality in Alone in the Dark.
2018-07-09 14:59:53 +02:00
Flyinghead
7ecd384612
StrideSel is now part of the texture cache and must be set by RTT
2018-06-29 19:03:43 +02:00
Flyinghead
f18aa63a67
Add stride and scan order to texture cache key as they are used to update the texture
...
Fixes glitchy FMV title screen in Bomberman Online
2018-06-29 11:59:48 +02:00
Flyinghead
846d02d9d2
Optimize RTT to VRAM. Add US version of THPS2 to per-game settings.
2018-06-25 16:55:22 +02:00
Flyinghead
3256e02813
Workaround for Virtua Tennis ball color problem.
...
There's a texture corruption of the tennis ball and other textures,
notably the players' bags in the first intro sequence. The corruption is
due to render to texture squashing existing textures. Not sure what's
going on but this avoids the texture corruption. The original problem
remains.
2018-06-25 15:53:28 +02:00
Flyinghead
23a2af0a28
Add setting for THPS2. Move RenderToTextureBuffer option to rend
...
section.
2018-05-22 15:34:33 +02:00
Flyinghead
80c193b3de
Cache texture parameters. Fixed exclusion volume modifiers.
2018-05-16 19:34:45 +02:00
Flyinghead
e73d11d0ab
glHint nicest->fastest, and just once
2018-05-15 22:37:40 +02:00
Flyinghead
de046c4620
Use OpenGL state cache. Allocate texture ids in bulk. Avoid modifier
...
volumes entirely when not needed.
2018-05-15 15:22:26 +02:00
Flyinghead
b30f715796
Fix paletted textures mismatch in texture cache
2018-05-14 16:14:15 +02:00
Flyinghead
717ee0b3ce
Make rendering to texture buffer optional
2018-05-11 19:33:17 +02:00
Flyinghead
43c125c208
Better texture cache: avoid duplicate. Attempt to put the RTT texture in
...
the cache to avoid copy to/from vram.
2018-05-11 15:29:24 +02:00
Flyinghead
b77843b927
Handle RTT texture stride (VT)
2018-05-09 15:08:13 +02:00
Flyinghead
c13a42611b
Implemented other RTT format conversions.
2018-05-09 13:04:48 +02:00
Flyinghead
5710aa08ed
Remove all vram locks before reading back RTT buffer. Use RGBA/ubyte
...
format when RGB/565 is not available.
2018-05-09 12:28:38 +02:00
Flyinghead
2e4ec3a1ed
Added RTT support
2018-05-08 18:47:00 +02:00
Stefanos Kornilios Mitsis Poiitidis
af01baae75
linux/softrend: Optional via makefile, sse4.1 detection
2015-12-14 02:40:23 +01:00
Stefanos Kornilios Mitsis Poiitidis
5e377399d3
linux/softrend: builds & runs, doesn't push to screen yet
2015-12-13 14:00:25 +01:00
Stefanos Kornilios Mitsis Poiitidis
eeeb2d6a62
texcache: Correctly compute size for STRIDE PLANAR textures
2015-08-12 03:09:44 +02:00
Stefanos Kornilios Mitsis Poiitidis
91039911ce
softrend/gltex: Fix non-windows builds
...
_mm* are windows only, and so is softrend for now
2015-08-11 16:12:18 +02:00
Stefanos Kornilios Mitsis Poiitidis
3e9431b2b7
softrend: billinear filtering, perspective uv, alpha test, ARGB1555
...
- Texture pixels are predecoded and expanded to quads for filtering
- bilinear input ordering might be wrong
2015-08-11 00:26:02 -04:00
Stefanos Kornilios Mitsis Poiitidis
e6a9d3e661
softrend: Resembling a pixel pipeline, textures, sort, cull
...
- Basic pixel pipeline, a bit better triangle tests, specialized render handlers
- Textures w/ point filtering. Not very smart is it goes 32 -> 16 -> 32 bpp, but works.
- The texture cache is shared rather inelegantly w/ OpenGL one
- Culling
- PParam sorting (shared w/ GL)
The texturing and color blending paths are ugly and slow
2015-08-11 00:26:02 -04:00
Stefanos Kornilios Mitsis Poiitidis
8cce1a4976
rend/soft: Import the experimental core from nulldc/drkpvr, better renderer modularization
...
- Adapted for indexed, async rendering, shared ta decoder
- This blits via a quick-and-hacky GDI blitter for now
- SSE/MMX intrins based, so not very portable
- A rather not good "reference" implementation
- At least, it's not terribly slow though
- GetTexture moved to Renderer interface
2015-08-05 02:43:40 +02:00
Stefanos Kornilios Mitsis Poiitidis
09caf4a55e
Lock the entire texture, not just the pixel array.
...
Fixes #49
2014-12-17 08:45:19 +01:00
Stefanos Kornilios Mitsis Poiitidis
a1dfeb19e1
Partial port to opengl.
...
I forgot how much opengl sucked, so I figured I might try a port.
Nvidia doesn't draw (must be some fragment binding issue?, randomlulz returns GL_INVALID on glAttribPtr as well)
Intel doesn't compile the shader (and the error message makes no real sense. wut?)
Amd driver simply crashes (wheehaa)
All and all, doesn't look like much has changed in opengl the past 10 years, apart from even uglier initialization and more fragmented specs ~
2014-06-25 22:47:39 +03:00
TwistedUmbrella
9639e47802
Compatibility with compilers on non-Ubuntu platforms
2014-05-08 00:18:48 -04:00
Stefanos Kornilios Mitsis Poiitidis
f1ef4877b8
Cleanup textures after they are dead for a while
2014-05-08 04:29:14 +03:00
MrPsyMan
183d08a922
Enable VMU support by default.
...
Fake Bump Mapping handling until we take the time to do it fast+properly.
2014-01-01 07:42:49 +02:00
Stefanos Kornilios Mitsis Poiitidis
f5d29677b3
Merge branch 'androidui'
...
Conflicts:
core/hw/pvr/spg.cpp
core/hw/sh4/interpr/sh4_interpreter.cpp
reicast/android/src/com/reicast/emulator/MainActivity.java
2013-12-28 22:28:50 +01:00
Stefanos Kornilios Mitsis Poiitidis
7ef9de3cae
Moving code around, cleanups
2013-12-28 22:20:08 +01:00