Commit graph

77 commits

Author SHA1 Message Date
fleroviux
9b1ed2084f [GPU] Implement initial support for multi-texturing 2023-06-20 00:01:12 +02:00
Wunkolo
6ee3f73335 Bisect TextureFmt and ColorFmt
Makes framebuffer-formats unrepresentable from texture formats while
allowing them to alias each other. Add utility functions as well that
just re-use the `TextureFmt` ones.
2023-06-18 08:22:14 -07:00
Wunkolo
838d3f27f9 Migrate PICA-types into PICA namespace
Rather than prefixing these types with `PICA`, a namespace is used instead.
2023-06-17 18:23:47 -07:00
Wunkolo
78a3f9fa23 Add PICA texel-format and topology types
Slowly stepping the codebase towards having renderer-agnostic types and keeping the translation of PICA-types to OpenGL/VK/DX/Software/etc to the renderer-backend.
2023-06-17 12:26:41 -07:00
fleroviux
3aeef23b2e Merge branch 'bottom-screen' of github.com:fleroviux/Panda3DS into pica-tev-emulation 2023-06-17 12:38:33 +02:00
fleroviux
b854367676 [GPU] Move TEV uniforms update into its own method 2023-06-17 01:58:30 +02:00
wheremyfoodat
7b859ad602 Merge branch 'master' into bottom-screen 2023-06-17 02:19:30 +03:00
wheremyfoodat
936302da2a Raise clang-format column size, make std::span support in opengl.hpp version-dependent 2023-06-16 22:06:59 +03:00
Wunkolo
553d23974a Use std::span to pass vertex data
Starts utilizing
[std::span](https://en.cppreference.com/w/cpp/container/span) to
indicate a non-owning view of a contiguous array of elements rather than
`T* data, usize count`.
2023-06-16 07:28:35 -07:00
fleroviux
2e85f30c10 [GPU] attempt to emulate the previous TEV color buffer 2023-06-16 01:34:11 +02:00
fleroviux
525890bff7 [GPU] Upload configuration for all texture combiners to the shader program
Upload the configuration register values for the remaining texture combiners to the
shader program's uniforms. This is in preparation for emulating those texture combiners next.
2023-06-15 23:27:33 +02:00
fleroviux
4322ebda2c [GPU] Start texture combiner implementation
This commit first implements experimental and incomplete
texture combiner support. Currently only the first texture combiner
is implemented. Many sources and combine modes are not implemented yet.
2023-06-15 22:45:13 +02:00
wheremyfoodat
8e90b8a103 [GPU] Bottom screen stub 2023-06-13 22:47:01 +03:00
wheremyfoodat
517d1abee8 [Renderer] Temporarily bump texture cache to 256 textures 2023-04-17 14:24:58 +03:00
wheremyfoodat
4bef096f04 [FS] Add directory stuff, clean up 2023-03-29 00:23:55 +03:00
wheremyfoodat
3ca324350b Fix derp 2023-03-26 20:45:51 +03:00
wheremyfoodat
e69e95af69 [FS] Implement SaveData sort of. 2023-03-12 03:19:46 +02:00
wheremyfoodat
f25bc2dd89 [PICA] Attempt depth offset/scale and depthmap enable 2023-03-04 03:42:01 +02:00
wheremyfoodat
eaab13b264 [PICA] Depth buffering v1 2023-03-03 00:59:55 +02:00
wheremyfoodat
3912fd4779 [PICA] Add blending, proper toggle between vertex colour & tex 2023-02-28 02:41:44 +02:00
wheremyfoodat
e80679fe77 Geometry pipeline v2
Co-Authored-By: Sky <skylersaleh@gmail.com>
2023-02-26 20:41:33 +02:00
wheremyfoodat
51130b295a [PICA] More textoor 2023-02-01 00:34:58 +02:00
wheremyfoodat
ce72368f01 [PICA] Texture cache v0.1 2023-01-31 22:59:37 +02:00
wheremyfoodat
dd17b2ecb8 [PICA] Start working on textures 2023-01-31 21:34:42 +02:00
wheremyfoodat
3ce9dc1d7b Surface cachin' again 2023-01-05 20:41:09 +02:00
wheremyfoodat
ecbb33b906 [GPU] Surface cache vol 1 2023-01-02 15:01:17 +02:00
wheremyfoodat
57ef4e25e7 Separate renderer and PICA completely 2023-01-01 22:06:54 +02:00