Commit Graph

1212 Commits

Author SHA1 Message Date
Tony Wasserka
602e0e5358 softgpu: Add working CLUT support. 2013-08-16 23:49:04 +02:00
Tony Wasserka
26d80c16fe softgpu/TransformPipeline: Clean up VertexData::Lerp by using Math3D effectively. 2013-08-16 23:49:04 +02:00
Tony Wasserka
06290c53de softgpu: Fix an issue where texture coordinates were not initialized correctly for quads. 2013-08-16 23:49:04 +02:00
Tony Wasserka
f447957263 softgpu: Use the actual z coordinate of a triangle in through mode, too. 2013-08-16 23:49:04 +02:00
Tony Wasserka
b0d3848dc7 softgpu: Don't draw pixels which lie on the right side of a triangle. 2013-08-16 23:49:04 +02:00
Tony Wasserka
4231264008 softgpu: Clean up Rasterizer code by using Math3D's Vec4 functionality. 2013-08-16 23:49:03 +02:00
Tony Wasserka
ce953f1293 softgpu: Use Vec4 instead of our own Color4 class for color handling. 2013-08-16 23:49:03 +02:00
Tony Wasserka
f270d3bd98 softgpu: Simplify Rasterizer::DrawTriangle by passing individual vertices instead of a vertex array. 2013-08-16 23:49:03 +02:00
Tony Wasserka
8e7f35feee softgpu: Workaround a bug in through mode (in Rasterizer::DrawTriangle "den" would become really large because clippos.w wasn't initialized to a good value). 2013-08-16 23:49:03 +02:00
Tony Wasserka
247ea278c8 softgpu: Implement alpha blending. 2013-08-16 23:49:03 +02:00
Tony Wasserka
df40c76da9 softgpu: Do weird stuff with no profit. Check this=> TODO 2013-08-16 23:49:02 +02:00
Tony Wasserka
15d0d2e7a8 softgpu: Fix (?) texture coordinate reading for through mode. Needs review.
softgpu: Cleanup depth testing and only account for the clearmode depth write flag if clearmode is enabled.
2013-08-16 23:49:02 +02:00
Tony Wasserka
6930e29d66 softgpu: Implement color doubling and color addition. 2013-08-16 23:49:02 +02:00
Tony Wasserka
cc043ada57 softgpu: Implement texture functions. 2013-08-16 23:49:02 +02:00
Tony Wasserka
0e1e8fe331 softgpu: Clean up depth testing code. 2013-08-16 23:49:02 +02:00
Tony Wasserka
bd49480244 softgpu: Add initial support for triangle strips. No idea if they work. 2013-08-16 23:49:01 +02:00
Tony Wasserka
b33646cced softgpu: Disable texturing in clear mode. 2013-08-16 23:49:01 +02:00
Tony Wasserka
00b7fbd19e softgpu: Implement depth testing. 2013-08-16 23:49:01 +02:00
Tony Wasserka
72a71702a5 softgpu: Storing view coordinates in VertexData is not necessary anymore. 2013-08-16 23:49:01 +02:00
Tony Wasserka
3cdf2a789d softgpu: Write to the correct frame buffer in RAM. 2013-08-16 23:49:01 +02:00
Tony Wasserka
29921e4b44 softgpu: Disable alpha blending when copying framebuffer to screen. 2013-08-16 23:49:00 +02:00
Tony Wasserka
b1a4762251 softgpu: Fix specular lighting (or rather, the dumb code that always threw away the result). 2013-08-16 23:49:00 +02:00
Tony Wasserka
fd65b7c9b8 softgpu: New try at specular lighting, still doesn't seem to work... 2013-08-16 23:49:00 +02:00
Tony Wasserka
219b35317e softgpu: Transform normals correctly. 2013-08-16 23:49:00 +02:00
Tony Wasserka
c5544eb293 softgpu: Fix some lighting bugs. Ambient and diffuse light should be working perfectly now. 2013-08-16 23:48:59 +02:00