Supermodel/Src/Graphics/New3D
2022-01-02 12:48:09 +00:00
..
GLSLShader.cpp Draw transparent polys to separate layers and composite at the end. This solves a tonne of transparency errors we had been battling with for a long time. The model3 is strange in the fact it only supports a max of two translucent overlapped polys. They are not blended into the frame normally. Doing this means the topmost translucent polys only are visible in the scene, the equivalent of doing a depth pass first, but without the added cost. 2018-06-16 21:31:29 +00:00
GLSLShader.h Update glew version 2020-07-31 19:18:51 +00:00
Mat4.cpp remove unnecessary copies 2018-04-24 13:51:53 +00:00
Mat4.h remove unnecessary copies 2018-04-24 13:51:53 +00:00
Model.cpp We were force normalising the result of matrix * normal, which looked correct in most cases. But this didn't preserve the scaling of the matrix, or the scaling of the model normals which resulted in many over bright areas. On it's own this generally worked, but games like Star Wars looked quite broken. Harry correctly figured out if you scale these normals by the scaling value that is sometimes present in the culling nodes the lighting looks correct. Still more work to do to correctly figure out the model3's lighting model. 2017-07-29 16:30:30 +00:00
Model.h The translator map seems to work with paletted colour values too, and the result is not clamped. Colours are passed to the GPU as unsigned bytes to multiplying by 16 will overflow, so we do the logic in the shader. If we passed floats we could skip the shader logic. 2020-05-11 09:05:46 +00:00
New3D.cpp Double buffer the line of sight values. Should allow the correct values to be returned if GPU threading is enabled. 2022-01-02 12:48:09 +00:00
New3D.h Double buffer the line of sight values. Should allow the correct values to be returned if GPU threading is enabled. 2022-01-02 12:48:09 +00:00
Plane.h Dynamically calculate near/far frustum planes for each viewport priority layer by clipping the overlapping meshes with the 4 frustum planes. A bit brute forcy, but the results are great. 2017-02-07 14:05:03 +00:00
PolyHeader.cpp Getting rid of most of the includes from Supermodel.h; each file now explicitly includes the header files it needs. 2021-11-22 17:15:06 +00:00
PolyHeader.h Getting rid of most of the includes from Supermodel.h; each file now explicitly includes the header files it needs. 2021-11-22 17:15:06 +00:00
R3DData.h add LOD table data. Maybe we can get clipping planes out of these 2016-03-28 20:11:46 +00:00
R3DFloat.cpp refactor 2016-06-19 21:43:09 +00:00
R3DFloat.h Virtua fighter has a few massive polys that shouldn't be visible. It looks like these polys have a bad matrix, but the node distances are all zero. This means the bounding box that encapsulates them is of size zero. Skipping over these entirely seems to fix the issue. 2017-04-12 15:47:57 +00:00
R3DFrameBuffers.cpp Fix shader. Why this worked on my nvidia card .. I'm not sure. 2019-01-24 19:11:26 +00:00
R3DFrameBuffers.h Update glew version 2020-07-31 19:18:51 +00:00
R3DScrollFog.cpp fix cast, and remove extra ; that had snuck into the shaders 2018-06-18 10:24:46 +00:00
R3DScrollFog.h Draw transparent polys to separate layers and composite at the end. This solves a tonne of transparency errors we had been battling with for a long time. The model3 is strange in the fact it only supports a max of two translucent overlapped polys. They are not blended into the frame normally. Doing this means the topmost translucent polys only are visible in the scene, the equivalent of doing a depth pass first, but without the added cost. 2018-06-16 21:31:29 +00:00
R3DShader.cpp The translator map seems to work with paletted colour values too, and the result is not clamped. Colours are passed to the GPU as unsigned bytes to multiplying by 16 will overflow, so we do the logic in the shader. If we passed floats we could skip the shader logic. 2020-05-11 09:05:46 +00:00
R3DShader.h Update glew version 2020-07-31 19:18:51 +00:00
R3DShaderQuads.h The translator map seems to work with paletted colour values too, and the result is not clamped. Colours are passed to the GPU as unsigned bytes to multiplying by 16 will overflow, so we do the logic in the shader. If we passed floats we could skip the shader logic. 2020-05-11 09:05:46 +00:00
R3DShaderTriangles.h The translator map seems to work with paletted colour values too, and the result is not clamped. Colours are passed to the GPU as unsigned bytes to multiplying by 16 will overflow, so we do the logic in the shader. If we passed floats we could skip the shader logic. 2020-05-11 09:05:46 +00:00
Texture.cpp Correctly emulate the real3d pro-1000 texture modes in our shader. 2018-10-13 13:29:45 +00:00
Texture.h Update glew version 2020-07-31 19:18:51 +00:00
TextureSheet.cpp Correctly emulate the real3d pro-1000 texture modes in our shader. 2018-10-13 13:29:45 +00:00
TextureSheet.h Correctly emulate the real3d pro-1000 texture modes in our shader. 2018-10-13 13:29:45 +00:00
VBO.cpp Cache rom models, for better performance. 2016-03-26 22:44:26 +00:00
VBO.h Update glew version 2020-07-31 19:18:51 +00:00
Vec.cpp Just a few compile warnings 2021-02-20 22:19:16 +00: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