Commit graph

31 commits

Author SHA1 Message Date
Tony Wasserka
917dc276dc softgpu: Small cleanup in Clipper. 2013-08-16 23:49:10 +02:00
Tony Wasserka
44035df446 SoftGpu: Add support for triangle fans. 2013-08-16 23:49:10 +02:00
Tony Wasserka
ccb487cbae softgpu: Clip primitives when one of their vertices is outside the screen coordinate range (the code really needs a cleanup though).
softgpu: Fix triangle strip rendering.
softgpu: Implement CCW cullmode.
2013-08-16 23:49:08 +02:00
Tony Wasserka
602e0e5358 softgpu: Add working CLUT support. 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
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
bd49480244 softgpu: Add initial support for triangle strips. No idea if they work. 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
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
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
6c1b4ba32b softgpu: Implement specular lighting. 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
7fdce30199 softgpu: Implement diffuse lighting. 2013-08-16 23:48:58 +02:00
Tony Wasserka
288de895db softgpu: Support indexed rendering. 2013-08-16 23:48:58 +02:00
Tony Wasserka
bfd9266b51 softgpu: Add support for ambient lighting. 2013-08-16 23:48:58 +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
55d6646fc3 softgpu: Add something like rectangle support. Doesn't seem to work :/ 2013-08-16 23:48:56 +02:00
Tony Wasserka
2aff3a8575 softgpu: Move clipping code to a separate file. 2013-08-16 23:48:56 +02:00
Tony Wasserka
f26d66e972 softgpu: Fix a bug in the clipspace->screenspace transformation. Makes polygon clipping work perfectly :) 2013-08-16 23:48:55 +02:00
Tony Wasserka
608fd34b4d softgpu: Implement almost working polygon clipping and fix some bugs. 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
142f2a3688 softgpu: Move triangle rasterization code to a new file. 2013-08-16 23:48:54 +02:00
Tony Wasserka
adbe80c290 softgpu: Move around some code to keep SoftGpu.cpp clean. 2013-08-16 23:48:54 +02:00
Tony Wasserka
5510434f90 softgpu: Cleanups. 2013-08-16 23:48:54 +02:00
Tony Wasserka
6e124f351b softgpu: Working vertex position transform! 2013-08-16 23:48:54 +02:00
Tony Wasserka
209e040b73 softgpu: Fix some bugs, committing stuff before it breaks again... 2013-08-16 23:48:54 +02:00
Tony Wasserka
40cdabeb7d softgpu: Add vertex position transformation code. Seems to be doing something, even though it's not the right thing :/ 2013-08-16 23:48:53 +02:00
Tony Wasserka
91ad30c287 softgpu/TransformUnit: Implement remaining coordinate system transformations. 2013-08-16 23:48:53 +02:00
Tony Wasserka
1430ca3e73 softgpu: Add transform pipeline functionality. 2013-08-16 23:48:52 +02:00