Tony Wasserka
88348a3d73
softgpu: Fix rgba texture function.
...
softgpu: Reorder pixel pipeline steps to match hardware order (without caring about performance loss, should be optimized later!).
softgpu: Implement alpha and color testing.
softgpu: Change CLUT lookup code a bit, still need to make some sense out of this.
2013-08-16 23:49:07 +02:00
Tony Wasserka
c549ee0d12
softgpu: Fix some alpha blending bugs.
2013-08-16 23:49:07 +02:00
Tony Wasserka
e7ac41c4bc
softgpu: Possibly fix a bug. Or make things worse. I don't know :/
2013-08-16 23:49:07 +02:00
Tony Wasserka
90b868d1ef
softgpu/Rasterizer: Clean up texture sampling code.
2013-08-16 23:49:07 +02:00
Tony Wasserka
e1cc2540cd
softgpu: Fix fast texture storage mode and use correct texture buffer pitches.
2013-08-16 23:49:06 +02:00
Tony Wasserka
df141ffe6b
softgpu: Implement stencil testing. Add some TODOs. Disable alpha blending when clear mode is active.
...
GPUState: Fix incorrect stencil enum.
2013-08-16 23:49:06 +02:00
Tony Wasserka
0dbe5c5cc1
softgpu: Cleanup CLUT lookup code and fix a critical bug related to it. Also added semi-working fast texture storage mode support.
2013-08-16 23:49:06 +02:00
Tony Wasserka
84425aafef
softgpu: Fix (?) interpolation method for z and color values.
2013-08-16 23:49:06 +02:00
Tony Wasserka
8929b0c248
softgpu/Rasterizer: Fix (or rather workaround) a critical integer overflow issue.
2013-08-16 23:49:05 +02:00
Tony Wasserka
27414c0be0
softgpu/Rasterizer: Fix decal texfunc.
2013-08-16 23:49:05 +02:00
Tony Wasserka
3ccc0c1fdc
softgpu/Rasterizer: Warning fixes.
2013-08-16 23:49:05 +02:00
Tony Wasserka
3f9633e1cb
softgpu: Fix a dumb mistake in the alpha blending code. How did this even compile before?!
2013-08-16 23:49:05 +02:00
Tony Wasserka
602e0e5358
softgpu: Add working CLUT support.
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
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
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
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
41e2005ad0
softgpu: Fix various bugs.
...
Using model transformed normals for light calculations now.
Disabling textures if texture mapping isn't enabled now.
Forced target alpha to be written as 0xFF to workaround broken buffer management.
2013-08-16 23:48:59 +02:00
Tony Wasserka
b42b30e795
softgpu: Store color values as integers instead of as floating points.
2013-08-16 23:48:58 +02:00
Tony Wasserka
73e3b78169
softgpu: Support flat triangle shading.
2013-08-16 23:48:57 +02:00
Tony Wasserka
ed5fa1f4ff
softgpu: Fix vertex color decoding.
2013-08-16 23:48:57 +02:00
Tony Wasserka
02f41ecbd6
softgpu: Perspective correct texture mapping.
2013-08-16 23:48:57 +02:00
Tony Wasserka
0c6a4c1bb6
softgpu: Working rectangle support. Through mode support. Clear mode support. Vertex color support.
2013-08-16 23:48:56 +02:00
Tony Wasserka
b5181c9f4f
softgpu: Add support for RGB565, RGBA5111 and RGBA8888 textures.
2013-08-16 23:48:56 +02:00
Tony Wasserka
f6b51dcd55
softgpu: Working ARGB4444 texture support.
2013-08-16 23:48:55 +02:00
Tony Wasserka
7899a9b9c9
softgpu: Texture coordinate support and something like ARGB4444 texture support.
2013-08-16 23:48:55 +02:00
Tony Wasserka
748d2d60f7
softgpu: Implement filled triangle rendering.
2013-08-16 23:48:55 +02:00
Tony Wasserka
142f2a3688
softgpu: Move triangle rasterization code to a new file.
2013-08-16 23:48:54 +02:00