Commit Graph
285 Commits
Author SHA1 Message Date
Unknown W. Brackets e0f85a9c6b Native merge part 1: skip native/ in includes. 2015-09-06 12:19:33 -07:00
Henrik Rydgard ab3468ea02 Move native/gfx_es2/gl_state.cpp/h into GPU/GLES/GLStateCache.cpp/h 2015-09-06 13:45:17 +02:00
Unknown W. Brackets 764539f814 Clean up GLES logic used in shader gen. 2015-09-05 16:44:17 -07:00
Unknown W. Brackets 2d0635c3e6 Cut out a bit more USING_GLES2. 2015-09-05 16:28:46 -07:00
Henrik Rydgard 1c0158bfe6 Further reduce the use of ifdef USING_GLES2 and friends. 2015-09-05 23:39:10 +02:00
Henrik Rydgard 9e18fb7e90 Round Z in the vertex shader to match a 16-bit Z buffer.
However this inexplicably does still not solve the Phantasy Star issue!
2015-08-26 15:25:21 +02:00
Henrik Rydgard 1e8a1b801f Rename viewportX1/X2 etc to scale + center, which is what they actually are. 2015-08-26 15:24:35 +02:00
Henrik Rydgard 29fc9e81a4 Use the gstate.getViewport* accessors. 2015-08-26 15:24:35 +02:00
Unknown W. Brackets ba15718db3 Track hovering in GE debugger to show pixel value.
This works for texture, framebuffer, depth, and stencil.

Importantly, allows debugging the actual depth values present.
2015-08-23 09:25:05 -07:00
Henrik Rydgard d7f4c47c22 Refactor: Even more getting rid of gstate access in the framebuffer manager. 2015-08-05 12:13:14 +02:00
Henrik Rydgard d7c76cb1da Refactor: More work towards getting rid of gstate accesses from the framebuffer manager 2015-08-05 11:51:24 +02:00
Henrik Rydgard 454a363876 Reorganize all the gstate fetching in FramebufferCommon to one place 2015-08-05 11:36:02 +02:00
Henrik Rydgard d26b74d4d6 GPU refactor: Move accesses to gstate out of leaf functions 2015-08-05 01:03:49 +02:00
Henrik Rydgard c8fe0b2690 Minor simplification, buildfixes 2015-07-29 12:38:31 +02:00
Henrik Rydgard 2430c283a5 More GPU cleaning, removing uses of GPUState.h where not needed.
Want to get rid of direct accesses to GPUState in modules that may be reused in
my future next-gen backends, that will reformat display lists into command lists that will
then be optimized and executed, out of sync with the real GPUState.

Candidate modules that may be reused in full are Framebuffer and Depal, possibly TextureCache to some degree.
2015-07-29 12:37:49 +02:00
Henrik Rydgard 33246ffc8d Non-x86 buildfix 2015-07-29 12:19:15 +02:00
Henrik Rydgard 38a31fbd8b Get rid of more uses of gstate from SplineCommon 2015-07-29 12:04:52 +02:00
Henrik Rydgard cde585a29a Include dependency cleanup 2015-07-29 11:48:20 +02:00
Henrik Rydgard 53f062b7b2 refactor: Remove some uses of gstate from SplineCommon and a fex texcache functions 2015-07-29 11:40:45 +02:00
Henrik Rydgard aae254254b Fix bad cleanup change, thanks to tapcio for pointing it out in 07b17560f 2015-07-28 01:09:48 +02:00
Unknown W. Brackets 7f8cf7f800 arm64: Use XXH64 for vertex hashing, etc.
Based on benchmarks, it performs better than XXH32 on an A57.
2015-07-22 21:38:01 -07:00
Unknown W. Brackets a98706f813 arm64: Correct some offset snapping. 2015-07-05 08:59:36 -07:00
Unknown W. Brackets 46c1030530 arm64: small optimization for weights. 2015-07-05 08:35:51 -07:00
Unknown W. Brackets 809f398760 arm64: Set vertexFullAlpha. 2015-07-05 00:17:06 -07:00
Unknown W. Brackets 37bc3cd347 arm64: Optimize some texcoord and normal decode. 2015-07-04 23:40:11 -07:00
Unknown W. Brackets f8bb7f3c52 arm64: Optimize pos and nrm conversions. 2015-07-04 18:22:16 -07:00
Unknown W. Brackets 75c8ccd2c1 arm64: Update emitter from Dolphin.
From dolphin-emu/dolphin@d09d59007a.
2015-07-04 00:00:28 -07:00
Henrik Rydgard 3587b36f86 Minor cleanups in BackgroundAudio and ARM64 vtx dec. Update native. 2015-06-22 00:09:02 +02:00
Unknown W. Brackets 0597b92998 For consistency, push fp regs here too. 2015-06-14 09:24:56 -07:00
Henrik Rydgard e848247f88 ARM64: Also save FP registers around the JIT dispatcher loop 2015-06-14 13:03:46 +02:00
Henrik Rydgard 2c05334d47 ARM64: Fix bug where we didn't save the FP registers correctly in the vertex decoder.
Also port a few ops from dolphin's ARM64 emitter.
2015-06-14 12:56:44 +02:00
Henrik Rydgard cc6db7a8df Declare DoTexSwizzle16 outside #ifdef _M_SSE, fixing build on ARM 2015-06-14 11:25:18 +02:00
Unknown W. Brackets 401bd35691 Swizzle video texture data on write to mirrors. 2015-06-13 16:29:56 -07:00
Henrik Rydgard 5736f3aba6 Shouldn't check for NEON on ARM64 2015-06-11 12:44:45 +02:00
Henrik Rydgård 2a1f6bca97 Fix NEON 4444 CheckAlpha, workaround for failed bNEON detection on ARM64 2015-05-31 12:29:08 +02:00
Henrik Rydgård 7b50ec7b75 Merge branch 'CheckAlphaNEON' of git://github.com/KentuckyCompass/ppsspp into KentuckyCompass-CheckAlphaNEON 2015-05-31 12:00:10 +02:00
Jan Beich 5f278b2d94 Unbreak build with SSE 4.1 (clang -march=penryn)
Common/ColorConv.cpp:199:33: error: use of undeclared identifier '_mm_packus_epi32';
      did you mean '_mm_packs_epi32'?
                _mm_store_si128(&dstp[i / 2], _mm_packus_epi32(c1, c2));
                                              ^~~~~~~~~~~~~~~~
                                              _mm_packs_epi32
/usr/bin/../lib/clang/3.6.0/include/emmintrin.h:1254:1: note: '_mm_packs_epi32'
      declared here
_mm_packs_epi32(__m128i __a, __m128i __b)
^
Common/ColorConv.cpp:241:33: error: use of undeclared identifier '_mm_packus_epi32';
      did you mean '_mm_packs_epi32'?
                _mm_store_si128(&dstp[i / 2], _mm_packus_epi32(c1, c2));
                                              ^~~~~~~~~~~~~~~~
                                              _mm_packs_epi32
/usr/bin/../lib/clang/3.6.0/include/emmintrin.h:1254:1: note: '_mm_packs_epi32'
      declared here
_mm_packs_epi32(__m128i __a, __m128i __b)
^
2 errors generated.

GPU/Common/TextureScalerCommon.cpp:294:6: error: unknown type name '__m128'
                                        __m128 result = _mm_set1_ps(0.0f);
                                        ^
GPU/Common/TextureScalerCommon.cpp:294:22: error: use of undeclared identifier
      '_mm_set1_ps'
                                        __m128 result = _mm_set1_ps(0.0f);
                                                        ^
GPU/Common/TextureScalerCommon.cpp:305:9: error: unknown type name '__m128i'
                                                                __m128i samp...
                                                                ^
GPU/Common/TextureScalerCommon.cpp:305:26: error: use of undeclared identifier
      '_mm_cvtsi32_si128'
  ...__m128i sample = _mm_cvtsi32_si128(data[csy*w + csx]);
                      ^
GPU/Common/TextureScalerCommon.cpp:307:9: error: unknown type name '__m128'
                                                                __m128 col ...
                                                                ^
GPU/Common/TextureScalerCommon.cpp:308:31: error: use of undeclared identifier
      '_mm_set1_ps'
  ...col = _mm_mul_ps(col, _mm_set1_ps(weight));
                           ^
GPU/Common/TextureScalerCommon.cpp:314:6: error: unknown type name '__m128i'
                                        __m128i pixel = _mm_cvtps_epi32(_mm_...
                                        ^
GPU/Common/TextureScalerCommon.cpp:314:57: error: use of undeclared identifier
      '_mm_set1_ps'
  ...__m128i pixel = _mm_cvtps_epi32(_mm_mul_ps(result, _mm_set1_ps(bicubicInvSum...
                                                        ^
8 errors generated.
2015-05-26 15:20:10 +03:00
KentuckyCompass 880697f40a Add NEON versions of the CheckAlpha family 2015-05-25 18:04:52 -07:00
Unknown W. Brackets ba77ad607e Erp, dumb typo. 2015-05-25 15:47:14 -07:00
Henrik Rydgård 43744b0239 Merge pull request #7741 from hrydgard/frame-profiler
Frame profiler overlay
2015-05-26 00:42:01 +02:00
Henrik Rydgard 0b2a1dfe53 Profile a few more scopes 2015-05-26 00:39:27 +02:00
Unknown W. Brackets 5d244229ba Silence a type conversion warning. 2015-05-25 10:07:05 -07:00
Unknown W. Brackets f78acfb867 Cleanup a few things in SSE CheckAlpha. 2015-05-25 07:39:31 -07:00
Unknown W. Brackets c75010931c Use SSE in CheckAlpha scanning. 2015-05-24 22:55:43 -07:00
Henrik Rydgard 26624709f7 Hook up the frame profiler to a few measurements 2015-05-24 23:45:36 +02:00
Unknown W. Brackets 4880c29a90 Use TextureDecoderNEON funcs statically on arm64.
Not sure if they were being used before (HAVE_ARMV7...?)
2015-05-23 11:30:05 -07:00
Henrik Rydgård 83182a0469 Merge pull request #7739 from hrydgard/screen-rotation
Implement basic screen rotation as requested in #297
2015-05-18 16:31:19 +02:00
Unknown W. Brackets c6b55459b1 vertexjit: Skip soft skinning setup when morphing.
This makes x86 match arm.
2015-05-16 21:47:13 -07:00
Henrik Rydgard 95b6b50fd5 Disable screen rotation in non-buffered rendering (as it won't worK) 2015-05-12 22:44:18 +02:00
Henrik Rydgard 3f7830743a Implement basic screen rotation as requested in #297 . Does not work correctly in non-buffered rendering yet. 2015-05-12 21:01:15 +02:00