summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/Src/PixelShaderManager.cpp
AgeCommit message (Collapse)Author
2012-12-10Clean up gcc/g++ compiler warnings that have accumulated.Glenn Rice
2012-08-10Revert the recent zcomploc changes including the Graphic_Fixes merge.NeoBrainX
Reason: - It's wrong, zcomploc can't be emulated perfectly in HW backends without severely impacting performance. - It provides virtually no advantages over the previous hack while introducing lots of code. - There is a better alternative: If people insist on having some sort of valid zcomploc emulation, I suggest rendering each primitive separately while using a _clean_ dual-pass approach to emulate zcomploc. This reverts commit 0efd4e5c29766ba5f5d22204339637ade9ccec83. This reverts commit b4ec836aca4392a86b864dc58b1030ca616fe0d5. This reverts commit bb4c9e2205d4117f48fd4ca50774ee56c28c92e4. This reverts commit 146b02615c07dd52dddaa18b7e23d09bc23b549e.
2012-08-06Skipped the ZCompLoc pass if the result can be determined at compile time. ↵skidau
Brings back the speed lost by r146b02615c07.
2012-05-26fixed some graphics problems with loading savestates (for example, wrong ↵nitsuja
colors on title screen of metroid prime 3)
2012-03-24Revert r41bcf657f89d, r3a9fed0ba285, r9adc119e3c2f and re58692653afd (all of ↵NeoBrainX
them are wrong).
2012-02-20PixelShaderGen: For custom textures and scaled EFB copies, use correct texel ↵NeoBrainX
to pixel mapping when sampling textures (D3D9 only) This is basically the same as revision e58692653afd, just for scaled textures and with a LOT more work...
2011-07-04VideoCommon: Always update pixel shader constants when tevregs changepierre
This time, it doesn't break the games i tested, and still fixes Metroid Prime 3 texts/colors. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7668 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-20Small update for disabled Fog for older hardware that fails to divide by ↵Sonicadvance1
zero in shaders git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7612 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-11Fix an error introduced in r7083. In the pixel shader manager the farZ and ↵donkopunchstania
zRange of the z bias were flipped. Switched to using the viewport struct rather than a raw float array to hopefully avoid such confusion in the future. Fixes issue 4060. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7446 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-19Game-specific video settings:skidau
* Moved the config validity check to reflect the emulator enforced settings at the config dialog * Removed some obsolete validity checks * Corrected "EnablePixelLighting" typo in the ini files Fixes issue 4277. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7374 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-05Rework XF register loading a bit and change how registers are arranged in ↵donkopunchstania
memory. This removes the assumption that all data for a viewport or projection matrix will be available when index 0 is loaded. Fixes issue 3688 and probably breaks old save states (sorry). git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7083 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31Eliminated the plugin interface. Merged DX9/DX11/OGL video plugins into ↵Jordan Woyak
Dolphin. It could still use a lot of cleanup. Lots of things are still named "plugin". Software renderer is temporarily disabled until it gets some namespaces. I only updated vs08/10, Linux/OSX builds are broken. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6996 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-29initial implementation of fog range adjust, I don't think is correct or work ↵Rodolfo Osvaldo Bogado
right but is a start. some tweaks and fixes. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6957 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-27Clean out the long since bit-rotted video profiling code.Soren Jorvang
Profiler.{cpp,h} also happened to be the only dupliated filenames left in Source, the absence of which should make link-time optimization easier to get working. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6935 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-09some little optimizations and some cleaning.Rodolfo Osvaldo Bogado
now lighting should be fully functional again in SM 2.0 cards git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6794 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-07normalize the efb to texture process for color textures to make it work the ↵Rodolfo Osvaldo Bogado
same in all the plugins and with the same accuracy as real hardware (almost :)) please test for regressions and fixes. some little changes to make pixel shader more dx9 sm2.0 friendly. the condition is not to use pixel lighting ( sorry no hardware support for the quantity of parameters needed). git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6777 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19reduced frequency of dx9 ps_2_0 pixel generation errors, and made dx9 efb ↵nitsuja-
depth peek of 16-bit depth buffer not use 24-bit adjustment factor. shouldn't affect other the plugins. (probably nobody else cares, but I need at least one video plugin that actually works on this computer) git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6618 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-18**Changes**gnick79
* More formats recognition for "Clear Screen" step. Improved the ability handling the alpha channel (% color translucency). * Related to CPUID detecting: - Added support displaying correct SysInfo for recent multicore Intel CPUs x86-64 with HT/SMT (Core i3/i5/i7 and Xeon) based on Nehalem architecture. + minor and passive changes. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6604 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05allow gcc to check the format of args being passed to MsgAlert and ↵Shawn Hoffman
GenericLog. Fixed nearly all warnings that arose from this, as well as some preexisting ones (some were actually crashes and/or bugs...) git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6522 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-23Related FOG changes:gnick79
* revert back to proper upscale mantissa of parameters A and C * properly downscale magnitude to 0.24 bits instead than ≡0.23 * Z Eyespace conversion for projection by original patent concept git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6463 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-23i know still a lot to fix and much work to do but sometimes experiments are ↵Rodolfo Osvaldo Bogado
fun :) for all the plugins implemented per pixel lighting, this will make games that uses lighting a lot nice. (just look at mario sunshine and compare :)) for dx9: implemented temporal anaglyph stereo: just grab your red-cyan glasses and enjoy. stereo calibration: use stereo separation ( distance of the point from you are looking) and Focal Angle: the angle necessary to focus in one particular object. this settings are different in every games as they use different depth ranges. please for any regression and bug introduced by this commit. if you ask why i did not implement stereo in dx11 and opengl the reason is one: they don't work right when i have more time will try to find a way to make them work. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6224 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-30Remove more obsolete codeNolan Check
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6153 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-29Remove a bunch of freshly-obsolete codeNolan Check
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6148 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-17a little optimization in shaders constants setting , based on the same idea ↵Rodolfo Osvaldo Bogado
of nodchip changes. a MAYORRRRRR change in pixel shader generation, please review all games you can and leave comments this must improve accuracy in graphic emulation a lot. for example: mario eyes in super mario galaxy, water pod transparency an water transparency on game intro in super mario sunshine, etc. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5457 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-21NSMB background fix. Fixes 1654.fgfemperor
There was a problem with the fog calculations... Now NSMB shows the background, while the fog still works! git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4714 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-09Small fix for the last commit, and a little fix for disable fog to really ↵Rodolfo Osvaldo Bogado
disable it :) git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4662 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-21Try to do Z textures better. Z texturing does not work if early z or no z ↵donkopunchstania
update. Corrected the Z texture bias used on 8 and 16 bit textures. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4596 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-19a minor cleanup in xf registers, an some small bug fixes. please test and ↵Rodolfo Osvaldo Bogado
give me feedback git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4589 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-14fix for re missing characters in both plugins, thanks to autoran for the ↵Rodolfo Osvaldo Bogado
testing. also modified depth efb copy behavior to work accordantly to this change. in opengl efb copy, set the destination texture format and not use argb always. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4575 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-14reapply changes from 4550-4551,4556-4559 correctly...sigh...some files were ↵Shawn Hoffman
ignored by tortoisesvn, and myself :| git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4570 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-14revert to r4531, but keep the changes from the following revisions: ↵Shawn Hoffman
4533,4550-4551,4556-4559 git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4566 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-13some minor changes preparing for future commits, and a correction to texture ↵Rodolfo Osvaldo Bogado
alignment that must solve the efb misalignments in various games git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4556 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-31Some errors in the values passed to e pixel shader caused the menu error, no ↵Rodolfo Osvaldo Bogado
they are fixed, thanks to LordMark for help me with the testing. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4490 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-31fixed z textures, don't know where this is used but a fix is a fixRodolfo Osvaldo Bogado
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4486 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-26as sl1nk3.s say make the updates directly to the viewport and let the scale ↵Rodolfo Osvaldo Bogado
fixed in 2^24. please test specially in paper mario and Killer 7 that where games where supposedly this was used. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4470 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-25some work on zscale and zoffset, don't know if this is correct but at least ↵Rodolfo Osvaldo Bogado
it seem to fix one or two games. thanks a lot to chaoscode he make possible to test this on nvidia. please test this a lot and give me feedback :) git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4468 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-15D3D: More reset fixeshrydgard
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4282 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-31GL/D3D: Attempt to fix problem with bad colors when starting a 2nd game.hrydgard
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4120 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-25Re-enable CPU swap on XFB mode only, to avoid flickering in a couple of gamessl1nk3.s
Fix for a dumb mistake from r4042 and doing it lazy-right :p git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4063 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-24Fix Pikmin PAL not booting thanks to LordMark for figuring it out ! :Dsl1nk3.s
Added "AccurateFCMP" ini setting which fixes Nights, Paper Mario games... git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4042 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-09Frameskipping more aggressive (minor speedup, plz report any serious ↵hrydgard
problems). Initial display list cache implementation, disabled for now. Various cleanup. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3952 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-28Now ALL copyright dates are fixed to the legally correct year: The year in ↵XTra.KrazzY
which the project began. Now we don't have to change it every year :) git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3898 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-26GFX: updated Dates, code formatting cleanup, code cleanup / organization, ↵omegadox
some unknown BPs uncovered, fixed OGL's config dialog bug, added another shader DSPHLE: Some warning fixes and added some logging for unknown voice cases Please report if anything has broken. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3884 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-19Roll back r3833 for render targets but keep it for static textures. Most ↵hrydgard
mirroring issues are OK and we shouldn't see any slowdown. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3844 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-18GL: Delete code for GL_TEXTURE_RECTANGLE_ARB in case of non-pow2 textures - ↵hrydgard
all modern GFX cards that can run Dolphin should support non-pow2 textures anyway. This removes some complexity and reduces the numbers of pixel shaders that need to be generated in some situations. Also fixes some texture mirroring problems. Let me know if this breaks things on ATI for some reason. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3833 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-22revert last 2 commitsnakeee
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3533 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-22They should be called SU Registers (Setup Unit/Rasterization). BP (Bypass) ↵omegadox
is really the name of the commands that are passed in. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3531 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-13Possible fix for S3TC Texture Decoding (Grass in ZWW is now properly alpha ↵omegadox
tested), and some code formatting cleanup. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3224 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-09A fix by baby.lueshi that fixes the problems with rev 3187death2droid
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3190 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-07Add hires texture support to OpenGLdeath2droid
Currently still only dumps files as .tga but supports loading as .png, .bmp,.tga , .dds This is by baby.lueshi git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3166 8ced0084-cf51-0410-be5f-012b33b47a6e