Commit Graph

5622 Commits

Author SHA1 Message Date
rogerman f02210bfdb GPU: Try to clean up GPUEngineBase::_SpriteRenderPerform() a little bit. 2017-08-19 20:21:09 -07:00
rogerman a9f2e53c25 GPU: Be consistent with how we apply the sprite window flags.
- Now applies the sprite window flags consistently between rotozoomed
and non-rotozoomed modes.
- Applying the sprite window flags in rotozoomed modes now ignores
sprite priority as intended.
2017-08-19 12:07:48 -07:00
rogerman 48f0f69929 GPU: When compositing a sprite, remove the color effect enable test so that the enable test and the OBJ translucency test don't conflict whenever window testing is also enabled. Fixes the portal-in-the-horizon scene in Pokemon Mystery Dungeon: Explorers of Sky. (Fixes #92.)
- Also rename some variables for better code clarity.
2017-08-19 11:42:06 -07:00
rogerman c0a21a717d GPU.cpp/.h: Revert back to using Unix-style line-endings instead of Windows-style line-endings. 2017-08-19 11:04:45 -07:00
zeromus 222f5d8507 gpu - clean up sprite window rendering so it isn't a separate codepath but rather is identical to regular character OBJ until the very end. may fix subtle bugs, may do nothing, but it's cleaner now anyway 2017-08-18 22:44:56 -05:00
rogerman bf120f3c3e OpenGL Renderer: Fix one more compiling issue on Windows 32-bit. 2017-08-17 01:05:08 -07:00
rogerman 51a9e2b0ab OpenGL Renderer: The zero-dst-alpha-fragment pass for edge marking now works the same as the one for rendering the main geometry.
- Also fix a compiling issue in the Windows build. (Regression from
commit 6acf781.)
- Also fix an issue in the zero-dst-alpha-fragment pass while running
MSAA in legacy OpenGL. (Related to commit 6acf781.)
2017-08-17 00:51:30 -07:00
rogerman 6acf7818ea OpenGL Renderer: Translucent fragments now correctly overwrite zero-alpha destination fragments when running MSAA. (Related to commit 3b354a0.) 2017-08-16 22:27:38 -07:00
rogerman 3a11041ef0 GPU: Rename some stuff for better clarity. 2017-08-14 21:43:28 -07:00
rogerman 7487bf2295 GPU: Remove some assumptions with how OBJ layers will read custom VRAM, instead assigning the read location on a per-line basis based on the isLineCaptureNative flag. Fixes screen flickering in Kingdom Hearts: 358/2 Days. 2017-08-14 16:37:56 -07:00
rogerman 9a5e52a7fa Cocoa Port: New feature - The Main and Touch displays can now be individually assigned the engine that feeds them video. This can be done on a per-display window basis. 2017-08-12 23:04:53 -07:00
rogerman 623d490393 OpenGL Renderer: Use backface culling for whole-framebuffer processing steps.
- Also tidy a few things here and there.
2017-08-08 12:33:19 -07:00
rogerman 10d2776938 Colorspace Handler: Altivec conversion functions no longer use vec_splat*(), but instead use literals directly. Fixes compiling for ppc64 systems. 2017-08-07 18:23:44 -07:00
rogerman b9c6cd69a1 Cocoa Port: Tidy and tighten up the spacing of certain UI elements. 2017-08-07 17:50:24 -07:00
rogerman 7dbe1444c3 Cocoa Port: Fix a few more coloring issues on PowerPC Macs. 2017-08-07 15:47:04 -07:00
rogerman 8df7d15664 Cocoa Port: When the OpenGL blitter uses CPU-based pixel upscaling, framebuffer fetches no longer swap R and B colors.
- Also silence a compiler warning in DisplayWindowController.h.
2017-08-07 12:56:46 -07:00
rogerman 54f0e4b19b Colorspace Handler: When SWAP_RB is true, ColorspaceConvert555To8888_AltiVec() and ColorspaceConvert555To6665_AltiVec() will now swap R and B colors as intended. 2017-08-07 12:53:21 -07:00
rogerman 4fd39bac56 NDSSystem.cpp: Fix bug where certain inputs would fail to work on big-endian systems. (Regression from commit bcc7421.) 2017-08-07 12:51:50 -07:00
rogerman 4e1bdab8c7 Fix some graphical bugs on big-endian systems. (Regressions from commits f8d129b and f97283e.) 2017-08-05 22:45:38 -07:00
rogerman f377bfeb76 cheatSystem.cpp: Fix compiling on non-x86 systems. 2017-08-05 14:07:56 -07:00
rogerman 4473f5425d Cocoa Port: Fix compiling issues when building using Xcode 3. 2017-08-05 13:55:28 -07:00
rogerman 3b354a0096 OpenGL Renderer: Fix longstanding blending bug where zero-alpha destination fragments were being blended with instead of being overwritten. This fixes certain coloring bugs in many games. (Does not currently work with MSAA.) 2017-08-04 16:54:51 -07:00
rogerman d2b25360d5 OpenGL Renderer: Do some minor code cleanup. 2017-08-04 11:49:50 -07:00
rogerman eea54a753c OpenGL Renderer: Be a little more precise when doing polygon comparisons between opaque and translucent drawing modes. (Related to commit 5aeed21.) 2017-08-04 11:25:06 -07:00
rogerman f8ab45fc4b OpenGL Renderer: Fix bug where edge mark and fog would fail if MSAA is used. (Regression from commit fd5d882.) 2017-08-03 15:53:04 -07:00
zeromus b442998635 Merge pull request #87 from edbird/README_LIN_update
edited README.LIN
2017-08-03 16:45:31 -05:00
EdBird 5294ef1799 edited README.LIN 2017-08-03 18:55:56 +01:00
rogerman 5aeed2112b OpenGL Renderer: Maintain the continuity of polygon comparisons when transitioning between 'opaque polygon drawing mode' and 'translucent polygon drawing mode'. Fixes #85. (Regression from commit 1ff91b7.) 2017-08-03 00:08:08 -07:00
rogerman 87e52c334b OpenGL Renderer: Fix 3D rendering for builds using an an MSVC compiler. Fixes #81. (Regression from commit 1ff91b7.) 2017-08-02 15:12:40 -07:00
rogerman 1ff91b7841 OpenGL Renderer: The RenderGeometry() polygon drawing loop is now splits up the drawing of opaque polygons and transparent polygons. 2017-08-02 00:57:59 -07:00
rogerman 600ae21668 OpenGL Renderer: Do some minor code cleanup. 2017-08-01 13:02:50 -07:00
rogerman fd5d882fe1 OpenGL Renderer: Remove the working depth buffers, and read the default depth/stencil buffer directly. 2017-07-31 20:37:20 -07:00
rogerman 7a018eb9c6 OpenGL Renderer: Fix bug where rendering will fail for GPU drivers that support FBOs, but not Multisampled FBOs. (Regression from commit 5deec25.) 2017-07-31 07:03:27 -07:00
rogerman aead3f4109 GPU: Fix pixel alignment bug when the framebuffer is 3x sized, running on an SSE2 system. (Regression from commit 062c0ad.) 2017-07-31 06:56:16 -07:00
rogerman c0a2193290 OpenGL Renderer: Bring back OpenGLRenderer_2_0::InitFinalRenderStates(), fixing blending for the v3.2 renderer. (Regression from commit 8c37d4a.) 2017-07-31 05:11:37 -07:00
zeromus 4b8e7ceaef Merge pull request #80 from heftig/master
include string.h in all colorspacehandler implementations
2017-07-30 18:15:59 -05:00
Jan Alexander Steffens (heftig) 315320e0c1
include string.h in all colorspacehandler implementations 2017-07-31 01:10:19 +02:00
zeromus 368d785301 include string.h for memcpy. fixes #79 2017-07-30 11:51:17 -05:00
rogerman 917475b9cd OpenGL Renderer: Oops! Fix a bug where shaders would fail to work in legacy OpenGL, even when they are actually supported. (Regression from commit 8c37d4a.) 2017-07-29 20:34:32 -07:00
rogerman 69f97b056a OpenGL Renderer: Lower host GPU requirements for performing on-GPU final framebuffer conversions.
- Framebuffer conversion now occurs purely in shaders, and also
performs flipping along with conversion. FBOs and PBOs are no longer
required to do this.
- If shaders are not available, then framebuffer flipping will occur if
FBOs are available. PBOs are no longer required to do this.
- Also fix a minor framebuffer attachment bug in the v3.2 renderer.
2017-07-29 19:39:21 -07:00
rogerman 5deec25409 OpenGL Renderer: Eliminate two extraneous framebuffers, especially saving VRAM at the larger custom framebuffer sizes. 2017-07-29 17:47:53 -07:00
zeromus 353dcef3ec winport (aviout) - fix stuff 2017-07-29 16:45:22 -05:00
zeromus ef4b203064 winport (aviout) - make output end with less bugs when the disk is full 2017-07-29 13:48:01 -05:00
zeromus 153b3ed61b winport (aviout) - fix regressions in multipart naming; fix spurious "avi recording ended" message 2017-07-29 13:46:45 -05:00
rogerman d08dffd122 OpenGL Renderer: _FlushFramebufferFlipAndConvertOnCPU() now handles all 4 possible permutations of frame buffer flipping and color conversion.
- Also remove OpenGLRenderer_2_1::ReadBackPixels().
2017-07-28 18:41:49 -07:00
rogerman 8c37d4acd6 OpenGL Renderer: Remove extraneous OpenGL v1.x classes, and do more aggressive capabilities checks on init.
- Keep OpenGLRenderer_1_2 as the sole OpenGL v1.x class, and then
remove the following classes: OpenGLRenderer_1_3, OpenGLRenderer_1_4,
OpenGLRenderer_1_5.
2017-07-28 11:22:34 -07:00
rogerman 1938dc2eed Colorspace Handler: Fix the RGBA5551 color swapping lookup table. (Related to commit 8600466.) 2017-07-27 22:45:03 -07:00
rogerman 8600466498 OpenGL Renderer: Standardize 32-bit color red-blue swapping in OpenGLRenderer::_FlushFramebufferConvertOnCPU(). 2017-07-27 22:04:42 -07:00
zeromus d16785eba8 winport - fix avi segmenting (especially or exclusively when dumping with HD) 2017-07-27 22:16:15 -05:00
rogerman 740fb66ca5 OpenGL Renderer: Fix more possible red-blue color swapping issues in legacy OpenGL when the output color format is RGB888. 2017-07-26 23:21:05 -07:00