Supermodel/Src/Graphics/New3D
Ian Curtis 0e07f29f80 Amend ambient fog logic
Should stop the sky flashing in lemans24, and the background totally disappearing in sega rally after a game. The logic here is still not totally understood but works well enough for the games.
2023-12-27 12:42:32 +00:00
..
GLSLShader.cpp Upgrade the glsl shader class a bit. Add a const char* comparitor so we can use a map with a simple "string" key. Fine to use when performance is not critical. 2022-10-16 21:03:41 +01:00
GLSLShader.h Fix build for linux (just missing header) 2022-10-17 09:34:11 +01:00
Mat4.cpp Added new uniform bool polyAlpha to shaders 2023-12-22 16:31:05 +00:00
Mat4.h Added new uniform bool polyAlpha to shaders 2023-12-22 16:31:05 +00:00
Model.cpp Add LOD switching and blending out culling nodes 2023-11-02 14:16:07 +00:00
Model.h Merge pull request #101 from gm-matthew/lod-and-blending 2023-11-03 19:56:17 +00:00
New3D.cpp Amend ambient fog logic 2023-12-27 12:42:32 +00:00
New3D.h Add supersampling anti-aliasing 2023-12-26 18:25:03 +00:00
Plane.h Harmless math warning fixes. map->unordered_map in CNew3D::CacheModel. Avoid general aliasing problems (using bit_cast or the recommended/optimized-away memcpy). 2022-10-03 17:59:59 -07:00
PolyHeader.cpp Add missing edge on transluency function 2023-11-17 15:50:04 +00:00
PolyHeader.h Add missing edge on transluency function 2023-11-17 15:50:04 +00:00
R3DData.h Add LOD switching and blending out culling nodes 2023-11-02 14:16:07 +00:00
R3DFloat.cpp address review 2022-10-03 17:59:59 -07:00
R3DFloat.h Harmless math warning fixes. map->unordered_map in CNew3D::CacheModel. Avoid general aliasing problems (using bit_cast or the recommended/optimized-away memcpy). 2022-10-03 17:59:59 -07:00
R3DFrameBuffers.cpp Add supersampling anti-aliasing 2023-12-26 18:25:03 +00:00
R3DFrameBuffers.h Rewrite the renderer a bit to spit out the finished graphics from the 3d chip on separate buffers. One buffer is for opaque pixels, and 2 more for translucent pixels. Before the frame was composited on the back buffer, which meant the tilegen had to have been drawn first. This way the images are now totally independant of the tilegen chip so can be drawn as soon as the register write 0xC is written to the tilegen. 2023-10-14 20:05:00 +01:00
R3DScrollFog.cpp fixed some -Wunused-* compiler warnings 2023-12-02 14:27:32 -08:00
R3DScrollFog.h Correct scroll fog attenuation logic (gm_matthew) 2023-11-05 23:44:27 +00:00
R3DShader.cpp Added new uniform bool polyAlpha to shaders 2023-12-22 16:31:05 +00:00
R3DShader.h Added new uniform bool polyAlpha to shaders 2023-12-22 16:31:05 +00:00
R3DShaderCommon.h Fix white gfx on linux / intel gpus. These optimisations originally came from toxieainc 2023-10-27 10:45:16 +01:00
R3DShaderQuads.h Added new uniform bool polyAlpha to shaders 2023-12-22 16:31:05 +00:00
R3DShaderTriangles.h Added new uniform bool polyAlpha to shaders 2023-12-22 16:31:05 +00:00
VBO.cpp Rewrite the whole project for GL4+. I figured if we removed the limitation of a legacy rendering API we could improve things a bit. With GL4+ we can do unsigned integer math in the shaders. This allows us to upload a direct copy of the real3d texture sheet, and texture directly from this memory given the x/y pos and type. This massively simplifies the binding and invalidation code. Also the crazy corner cases will work because it essentially works the same way as the original hardware. 2022-11-07 21:33:01 +00:00
VBO.h Rewrite the whole project for GL4+. I figured if we removed the limitation of a legacy rendering API we could improve things a bit. With GL4+ we can do unsigned integer math in the shaders. This allows us to upload a direct copy of the real3d texture sheet, and texture directly from this memory given the x/y pos and type. This massively simplifies the binding and invalidation code. Also the crazy corner cases will work because it essentially works the same way as the original hardware. 2022-11-07 21:33:01 +00:00
Vec.cpp fix a real error (m68kdasm) and some harmless performance warnings and use modern headers 2022-07-11 18:10:41 +02:00
Vec.h Cull geometry based on the culling distances in the nodes. Should give some sort of speedup on lower end pcs where the CPU is predominantly the bottle neck. 2016-06-16 20:05:29 +00:00