Commit graph

284 commits

Author SHA1 Message Date
Henrik Rydgard
db110d60a1 Rename some colorconv functions 2015-04-08 23:01:17 +02:00
Henrik Rydgard
4621586342 Move simple conversion functions out of the ColorConv header. 2015-04-08 22:52:49 +02:00
Henrik Rydgard
31961eace9 Color conv attempt 2. Start consolidating simple color conversion functions in a single header+cpp. 2015-04-08 22:52:46 +02:00
Henrik Rydgård
077eae6255 Merge pull request #7566 from Bigpet/vs2015
Make compilable under VS2015
2015-03-07 00:16:50 +01:00
Peter Tissen
3ada988740 capture by value, since the dispatch seems asynchronous 2015-03-06 22:10:10 +01:00
Peter Tissen
f5795a68a7 Make compilable under VS2015 2015-03-06 21:09:45 +01:00
Unknown W. Brackets
29e6197e6f Floor float z coords in throughmode.
Fixes #6766 in 32-bit mode only.
2015-02-22 21:04:48 -08:00
Henrik Rydgard
cae58cafee Revert "Merge pull request #7361 from hrydgard/color-conv-centralize"
This reverts commit f1b57dabf5, reversing
changes made to 41001637ce.
2015-01-22 19:53:32 +01:00
Henrik Rydgard
4d1c1e41f3 Optimize and consolidate color conversion a bit 2015-01-20 17:32:55 +01:00
Henrik Rydgard
2623a48b4a Centralize color conversion functions in Common/ColorConv. 2015-01-20 17:32:54 +01:00
Unknown W. Brackets
f311d4008d Leave VBOs and index buffers bound for reuse. 2015-01-11 17:03:45 -08:00
Lioncash
dc436aebe8 GPU: Get rid of unused variable warnings 2014-12-12 09:29:41 -05:00
Henrik Rydgard
53b5d331b4 Assorted minor optimizations 2014-11-17 21:21:44 +01:00
Unknown W. Brackets
eee3ac79f4 Always clamp in ToRGB[A]?().
Before we only clamped with SSE, better to be consistent.  This may also
be slightly faster.
2014-10-31 09:07:54 -07:00
Henrik Rydgard
d17aa4738a Some more GetPointer cleanup 2014-10-19 23:19:51 +02:00
Henrik Rydgard
07c7687052 More code deduplication. Also normalized some line endings. 2014-09-18 00:45:11 +02:00
Henrik Rydgard
37e3cf362f Move vertexdecoder files into GPU/Common 2014-09-12 02:00:32 +02:00
Henrik Rydgard
7cf05e44a2 Add option to vertexdecoder to expand UVs to floats 2014-09-12 02:00:31 +02:00
Unknown W. Brackets
337b34ef6a Eat cycles during block transfers.
Tests show this takes a number very close to 1.9 times the number of bytes
in cycles @222.

Using that value caused a tiny fps drop in one area of the God of War
demo, which may be correct but might also cause complaints.  A lot of our
other timing is not accurate, so using a lower value (1.6) to be on the
safer side.

This may cause things to reschedule more accurately when games drawsync,
and improves the gpu/commands/blocktransfer test.
2014-08-30 22:02:28 -07:00
Unknown W. Brackets
f6649794df Respect max texture level in GE debugger preview. 2014-06-15 10:31:16 -07:00
Unknown W. Brackets
eaf3288304 Add debug interface for non-L0 texture preview. 2014-06-15 09:30:37 -07:00
Unknown W. Brackets
c6c48aef42 softgpu: Align spline patches, keep buffer.
Fixes misalignment warning on 32-bit.
2014-06-15 09:00:49 -07:00
Sacha
c745072b55 Update Symbian to GCC 4.8.3 2014-06-11 03:10:50 +10:00
Unknown W. Brackets
adee76cd62 Add a matching PerformMemoryUpload().
Just so we have both Download and Upload to use later.
2014-06-10 00:45:03 -07:00
Sacha
fd70cfa149 Travis: Update to GCC 4.7.3 for Symbian. 2014-06-09 20:28:26 +10:00
Unknown W. Brackets
089ee41d9c Implement a very basic stencil upload.
This is not fast or efficient, but works.
2014-05-31 21:48:09 -07:00
Unknown W. Brackets
1433b98c46 Clean up the framebuffer force downloads. 2014-05-31 10:03:03 -07:00
Unknown W. Brackets
8dcc09c9e1 Use a separate func for gpu memset(). 2014-05-27 07:50:01 -07:00
Unknown W. Brackets
8275f613ce UpdateMemory() now returns whether to skip the cpy.
This way it can do it itself as necessary in the right order.
2014-05-25 21:48:41 -07:00
Unknown W. Brackets
233f13bb8e Fix a GetPointer() in softgpu when debugging.
Should just bail without a texture bound.
2014-05-11 10:58:33 -07:00
Unknown W. Brackets
4cc4cfed4c Note that VADDR/IADDR are not updated on PRIM.
Even though they do increase the addresses, they don't affect the CMD
registers.

Also, make sure not to use a crazy bytesRead for a zero-sized prim.
2014-05-04 18:24:49 -07:00
Unknown W. Brackets
22a80fb7be softgpu: Avoid multithreading thin polygons.
Small performance improvement (5-6% in some areas.)
2014-04-13 09:01:14 -07:00
sum2012
fa1b65fd59 Avoid unknown get pointer in Rasterizer.cpp
Find in #5350 in softgpu
2014-04-13 06:45:46 +08:00
Henrik Rydgard
0b673719c2 Crashfix for software renderer in 32-bit (SSE misalignment) 2014-03-22 00:12:21 +01:00
Unknown W. Brackets
1ce6bf399a Buildfix for 32-bit x86, arg. 2014-03-17 21:52:45 -07:00
Unknown W. Brackets
38d0bac1df Optimize some 4444/8888 color conversions.
Small performance boost in softgpu.
2014-03-17 01:21:52 -07:00
Unknown W. Brackets
6de2129f98 softgpu: Don't re-pack 8888 colors.
It's like a bad joke, but MSVC was not optimizing this out.
2014-03-16 23:03:07 -07:00
Unknown W. Brackets
627027307c softgpu: Use SSE in ToRGB()/FromRGB() etc. 2014-03-16 19:21:35 -07:00
Unknown W. Brackets
07ca96e226 softgpu: Use SSE in alpha blending. 2014-03-16 18:57:11 -07:00
Unknown W. Brackets
601ff10f1e softgpu: Use SSE in tex modulation.
Could do others, this seems the most common.  Gives a few more percent.
2014-03-16 18:28:06 -07:00
Unknown W. Brackets
6ef0aa123f softgpu: Use SSE for the secondary color.
It's easy to speed up this code since it's so hot.
2014-03-16 16:21:12 -07:00
Unknown W. Brackets
7f3e158a0f softgpu: Get all tex samples at the same time.
Kills a bunch of overhead, improving speed more.
2014-03-16 15:51:47 -07:00
Unknown W. Brackets
d9e29a2edf softgpu: Optimize alpha blending handling.
This alone makes it a good bit faster.
2014-03-16 15:22:31 -07:00
Unknown W. Brackets
f21649e563 softgpu: Minor simplification for alpha blend. 2014-03-16 15:09:42 -07:00
Unknown W. Brackets
1ab7325d4a softgpu: Use a full Vec4 for the prim color.
Simpler, and slightly faster.
2014-03-16 15:04:41 -07:00
Unknown W. Brackets
c3530a6674 softgpu: Don't multithread small triangles.
It ends up being slower with all the overhead, of course.
2014-03-16 14:49:49 -07:00
Unknown W. Brackets
b33d0c4046 softgpu: Use SSE for texture sampling. 2014-03-16 14:33:42 -07:00
Unknown W. Brackets
b357b00ace softgpu: Use SSE for through texture coords. 2014-03-16 14:30:20 -07:00
Unknown W. Brackets
dd140b73bb softgpu: Use SSE for gouraud shading. 2014-03-16 14:29:22 -07:00
Unknown W. Brackets
a843cbd580 Shrink the very common sceKernelThread.h include. 2014-03-15 11:44:02 -07:00