Jordan Cristiano
f96e9e1ae4
warnings and code formatting
2013-11-13 04:03:46 -05:00
comex
c579637eaf
Run code through the advanced tool 'sed' to remove trailing whitespace.
2013-11-03 20:54:05 -05:00
degasus
6798a4763e
VideoCommon: revert the ViewPort changes
...
xfregs isn't written when calling this function, so we have to use such an invalid flag :-(
2013-10-13 15:41:11 +02:00
degasus
2754c1132e
VideoCommon: reimplement Dirty() in PixelShaderManager
...
This isn't needed in VertexShaderManager as it's still in the old dirty flag way.
But it's very importend for PixelShaderManager as some float4s aren't initialized as 0.0f
2013-10-12 20:31:59 +02:00
degasus
50c404ce4a
VideoCommon: fix dstAlpha
2013-10-12 20:31:59 +02:00
degasus
5de7ac4791
OGL: update ubo workaround
2013-10-12 20:31:59 +02:00
degasus
cc6c454898
VideoCommon: refactor PixelShaderManager setters
...
The old way was to use a dirty flag per setter. Now we just update the const buffer per setter directly.
The old optimization isn't needed any more as the setters don't call the backend any more.
The follow parts are rewritten:
Alpha
ZTextureType
zbias
FogParam
FogColor
Color
TexDim
IndMatrix
MaterialColor
FogRangeAdjust
Lights
2013-10-12 20:31:25 +02:00
degasus
6e2fe72b8f
D3D: also uses VideoCommon constant buffer handling
...
As now both backends uses the VideoCommon one, the old setting API was removed.
2013-10-12 20:29:56 +02:00
degasus
7c14463d11
ogl: implement useful constant buffer upload
...
this will remove the additional memcpy introduced in my last commit
2013-10-12 20:29:56 +02:00
degasus
4377618438
VideoCommon: keep a copy of the const buffer in VideoCommon
...
The upload in the backend isn't done, it's just pushed by the mostly removed SetMulti*SConstant4fv.
Also no optimizations was done on VideoCommon side, but I can start now :-)
Sorry for the hacky way, but I think this is a nice (working) snapshot for a much bigger change.
2013-10-12 20:29:56 +02:00
NeoBrainX
ba310ce096
PixelShaderManager: Revert code introduced mainly in revision 0fdeb81038
.
...
The shader constant usage profile functionality is still buggy and the code using it wasn't ever meant to be merged to master.
2013-06-25 13:37:38 +02:00
NeoBrainX
5e6b712651
Merge 'master' into shader-uids-awesome.
...
Conflicts:
Source/Core/VideoCommon/Src/BPMemory.h
Source/Core/VideoCommon/Src/LightingShaderGen.cpp
Source/Core/VideoCommon/Src/PixelShaderGen.cpp
Source/Core/VideoCommon/Src/PixelShaderGen.h
Source/Core/VideoCommon/Src/PixelShaderManager.cpp
Source/Core/VideoCommon/Src/VertexShaderGen.cpp
Source/Core/VideoCommon/Src/VertexShaderGen.h
2013-04-25 14:05:54 +02:00
Lioncash
8da425b008
Formatting cleanup for VideoCommon.
...
Block braces on new lines.
Also killed off trailing whitespace and dangling elses.
Spaced some things out to make them more readable (only in places where it looked like a bit of a clusterfuck).
2013-04-24 09:21:54 -04:00
Lioncash
bab9963b00
New license header introduced for DiscIO, AudioCommon, InputCommon, VideoCommon, and Common projects.
2013-04-17 23:09:55 -04:00
Lioncash
195336021f
Fix a few typos in the comments/logging in VideoDX9, VideoCommon, and VideoSoftware projects.
...
See Render.cpp, PixelShaderGen.cpp, and PixelShaderManager.cpp for most of the changes.
See VertexShaderManager.cpp for a logging typo fix.
See SWRenderer.cpp for a small typo fix for a message that gets swprintf'd in DrawDebugText.
See SWVertexLoader.cpp for a typo fix of an assert message.
Should slightly improve the readability of some of those files.
2013-04-07 17:11:29 -04:00
NeoBrainX
9eccd56ef0
PixelShaderGen: Some cleanups.
2013-03-29 20:59:03 +01:00
NeoBrainX
3c02f227db
PixelShaderManager: Disable constant cache (won't work in the non-UBO path of the opengl backend).
...
ShaderGen: Replace typeid usage with more general code.
2013-03-29 20:35:31 +01:00
NeoBrainX
3253603ae7
Merge 'master' into shader-uids-awesome.
...
Conflicts:
Source/Core/VideoCommon/Src/LightingShaderGen.cpp
Source/Core/VideoCommon/Src/PixelShaderGen.cpp
Source/Core/VideoCommon/Src/PixelShaderGen.h
Source/Core/VideoCommon/Src/PixelShaderManager.cpp
Source/Core/VideoCommon/Src/VertexShaderGen.cpp
Source/Core/VideoCommon/Src/VertexShaderGen.h
Source/Plugins/Plugin_VideoOGL/Src/PixelShaderCache.cpp
Source/Plugins/Plugin_VideoOGL/Src/PixelShaderCache.h
Source/Plugins/Plugin_VideoOGL/Src/VertexManager.cpp
Source/Plugins/Plugin_VideoOGL/Src/VertexShaderCache.cpp
Source/Plugins/Plugin_VideoOGL/Src/VertexShaderCache.h
2013-03-26 22:21:19 +01:00
lioncash
edd9d0e0ef
Clean up more space/tab mismatches in AudioCommon, Common, and VideoCommon.
...
Not planning to touch Core since it's the most actively changed part of the project.
2013-03-19 21:51:12 -04:00
Ryan Houdek
8c1091a21f
Merge branch 'master' into GLSL-master
...
Conflicts:
Source/Core/VideoCommon/Src/PixelShaderGen.cpp
Source/Plugins/Plugin_VideoDX11/Src/VertexManager.cpp
Source/Plugins/Plugin_VideoDX9/Src/VertexManager.cpp
2013-03-15 11:19:52 -05:00
NeoBrainX
e877b5019b
PixelShaderManager: Reload fog range adjustment shader constants upon viewport change.
...
Fixes issue 5618.
2013-03-15 15:08:51 +01:00
NeoBrainX
9f1582843d
PixelShaderManager: Reduce number of redundant shader constant updates
2013-01-28 22:15:23 +01:00
NeoBrainX
0fdeb81038
Add some code for generating a shader constant usage profile.
2013-01-28 22:15:23 +01:00
degasus
e0ffdda26e
Merge branch 'immediate-removal' into GLSL-master
...
Conflicts:
Source/Core/VideoCommon/Src/PixelShaderGen.cpp
Source/Plugins/Plugin_VideoSoftware/Src/SWRenderer.cpp
immediate-removal is a new created branch seperated from master but reverted the revert of immediate-removal
so we get less conflicts by merging
2013-01-24 16:58:28 +01:00
degasus
d5748ebaef
fix small dx9 slowdown
2013-01-22 10:49:46 +01:00
degasus
bff02b3b73
Merge branch 'arb_framebuffer' into GLSL-master
...
Conflicts:
Source/Plugins/Plugin_VideoOGL/Src/FramebufferManager.cpp
Source/Plugins/Plugin_VideoOGL/Src/RasterFont.cpp
Source/Plugins/Plugin_VideoOGL/Src/Render.cpp
Source/Plugins/Plugin_VideoOGL/Src/TextureCache.cpp
Source/Plugins/Plugin_VideoOGL/Src/TextureConverter.cpp
2013-01-09 11:00:26 +01:00
NeoBrainX
d26bcb0847
Move alpha pretest to BPMemory.h and rename a bunch of alpha testing related stuff
2013-01-08 18:56:01 +01:00
Ryan Houdek
e5d5365bac
Fix the last few warnings in Dolphin on my system.
2012-12-30 02:34:14 -06:00
degasus
316a33d1e6
Merge branch 'master' into GLSL-master
...
Conflicts:
Source/Core/DolphinWX/Src/VideoConfigDiag.h
Source/Plugins/Plugin_VideoOGL/Src/GLUtil.h
Source/Plugins/Plugin_VideoOGL/Src/Render.cpp
Source/Plugins/Plugin_VideoOGL/Src/TextureCache.cpp
Source/Plugins/Plugin_VideoOGL/Src/TextureConverter.cpp
2012-12-27 10:36:54 +01:00
Ryan Houdek
9209253e0d
Initial removal of Nvidia CG. Still some more cleanup to go
2012-12-24 11:09:52 -06:00
Glenn Rice
e85438cba0
Clean up gcc/g++ compiler warnings that have accumulated.
2012-12-10 00:40:28 -06:00
Ryan Houdek
4a84c6f742
Add in UBOs, doesn't work yet. Still debugging here.
2012-10-09 23:41:05 -05:00
Ryan Houdek
b24990ca28
Bit of cleanup. Clean up my massive hack in the ShaderManagerFiles. Almost feature parity with Nvidia CG now I think. Just need to do Alpha test with Dual source blending now.
2012-10-09 23:37:52 -05:00
Ryan Houdek
8123b137aa
This is the terrible bit that can't be removed until we use UBOs in the GLSL shaders.
2012-10-09 23:31:31 -05:00
NeoBrainX
08a9c66037
Revert the recent zcomploc changes including the Graphic_Fixes merge.
...
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 0efd4e5c29
.
This reverts commit b4ec836aca
.
This reverts commit bb4c9e2205
.
This reverts commit 146b02615c
.
2012-08-10 20:12:02 +02:00
skidau
0efd4e5c29
Skipped the ZCompLoc pass if the result can be determined at compile time. Brings back the speed lost by r146b02615c07.
2012-08-06 09:29:01 +10:00
nitsuja
2be579e8ba
fixed some graphics problems with loading savestates (for example, wrong colors on title screen of metroid prime 3)
2012-05-26 13:18:07 +10:00
NeoBrainX
fee98b426b
Revert r41bcf657f89d, r3a9fed0ba285, r9adc119e3c2f and re58692653afd (all of them are wrong).
2012-03-24 15:58:44 +01:00
NeoBrainX
9adc119e3c
PixelShaderGen: For custom textures and scaled EFB copies, use correct texel to pixel mapping when sampling textures
...
(D3D9 only)
This is basically the same as revision e58692653a
, just for scaled textures and with a LOT more work...
2012-02-20 20:32:08 +01:00
pierre
1f2adf0563
VideoCommon: Always update pixel shader constants when tevregs change
...
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-07-04 13:49:40 +00:00
Sonicadvance1
693f276a68
Small update for disabled Fog for older hardware that fails to divide by zero in shaders
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7612 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-20 05:48:12 +00:00
donkopunchstania
77a4a64909
Fix an error introduced in r7083. In the pixel shader manager the farZ and 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-04-11 01:49:32 +00:00
skidau
4079523346
Game-specific video settings:
...
* 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-03-19 00:50:34 +00:00
donkopunchstania
c36ed08cfc
Rework XF register loading a bit and change how registers are arranged in 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-02-05 18:25:34 +00:00
Jordan Woyak
fbaf965995
Eliminated the plugin interface. Merged DX9/DX11/OGL video plugins into 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-31 01:28:32 +00:00
Rodolfo Osvaldo Bogado
4c58c7ea03
initial implementation of fog range adjust, I don't think is correct or work 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-29 04:31:56 +00:00
Soren Jorvang
955e3abe9e
Clean out the long since bit-rotted video profiling code.
...
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-27 21:57:36 +00:00
Rodolfo Osvaldo Bogado
d47d2a05d2
some little optimizations and some cleaning.
...
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-09 14:13:24 +00:00
Rodolfo Osvaldo Bogado
f869281301
normalize the efb to texture process for color textures to make it work the 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
2011-01-07 19:23:57 +00:00
nitsuja-
98fe8437ae
reduced frequency of dx9 ps_2_0 pixel generation errors, and made dx9 efb 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-19 20:59:23 +00:00