mirror of https://github.com/PCSX2/pcsx2.git
Destroyed TODO List (markdown)
parent
282f9ddef8
commit
ab40b94344
78
TODO-List.md
78
TODO-List.md
|
@ -1,78 +0,0 @@
|
||||||
# A collection of ideas to improve GSdx OpenGL
|
|
||||||
|
|
||||||
The list is already too long! Various items require investigation. There are several potential bad ideas.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
Uniform improvement (AKA Constant Buffer)
|
|
||||||
- [ ] Merge all VS/FS cb into a single buffer
|
|
||||||
- [ ] Move TextureScale uniform from VS to FS CB
|
|
||||||
- [ ] Replace vs_cb.Vertex_Scale_Offset by a glUniform call
|
|
||||||
- [ ] Or merge vs_cb into fs_cb (reduces binds, but increases the size of the uniform buffer slightly)
|
|
||||||
- [ ] Investigate the packing of FS uniform. Cost extra multiplication on shader, but can help to use other APIs possibility (glUniform, pre compute WH). Low priority.
|
|
||||||
* Fog Color
|
|
||||||
* Aref
|
|
||||||
* Fbmask?
|
|
||||||
* TA
|
|
||||||
* Af?
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
Texture upload improvement:
|
|
||||||
- [ ] Create a dedicated path for palette (create/upload)
|
|
||||||
* Allow to use 1D texture (save 2/8(LTF) move instructions in shader)
|
|
||||||
* PBO is probably not efficient for a small size
|
|
||||||
- [ ] Create a pool of palette texture to avoid driver synchronization
|
|
||||||
- [ ] Or uses a big texture buffer (in conjunction of TexBufferRange)
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
Texturing improvement:
|
|
||||||
- [ ] Absolute coordinate
|
|
||||||
* WMS/WMT >= 2 | all?
|
|
||||||
* TexelFetch vs Renormalization?
|
|
||||||
- [ ] clamp(x, 0, 1) is free on shader, so we could use 2 textures sampler (linear/nearest)
|
|
||||||
- [ ] Interpolation factor (upscaling context)
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
Texture Cache improvement:
|
|
||||||
- [x] Handling of AEM
|
|
||||||
- [ ] Bypass texture lookup for Read-Write RT effect
|
|
||||||
- [ ] Improve mimpap support
|
|
||||||
- [ ] Support area notion instead, to rely only on the start block address
|
|
||||||
- [x] Detect 8 bits shuffling (1 page and @RT == @TEX). Note: It seems pages are consecutive, try to do it in one pass (save 100 draw call by effect).
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
Depth effect improvement:
|
|
||||||
- [x] Conversion of 16 bits depth into 16 bits color
|
|
||||||
- [x] Allow to read back depth from GPU to EE memory
|
|
||||||
- [x] Allow to sample Depth from TFX shader rather than to do a preliminary conversion
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
Anti-aliasing
|
|
||||||
- [ ] Remove custom resolution
|
|
||||||
- [ ] MSAA vs adaptive MSAA/SSAA vs full SSAA (upscaling)
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
GLSL4 improvement
|
|
||||||
- [ ] Mix between integer => GL_EXT_shader_integer_mix
|
|
||||||
- [ ] Bit field operation (bfe/bfi) => GL_ARB_gpu_shader5
|
|
||||||
- [x] Output both uv & st from the VS (to reduce shader permutation)
|
|
||||||
- [ ] Unscale point in GS (avoid scaling issue with point rendering)
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
General architecture
|
|
||||||
- [ ] GL3 / GL4 separation?
|
|
||||||
- [ ] Global variable for s_n (greatly help debug)
|
|
||||||
- [ ] GLES3.2 investigation status (might worth to wait Mesa)?
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
Future
|
|
||||||
- [ ] ARB_shader_stencil_export to support accurate DATE
|
|
||||||
- [ ] ARB_fragment_shader_interlock to support accurate DATE/blending?
|
|
Loading…
Reference in New Issue