summaryrefslogtreecommitdiff
path: root/Source/Plugins/Plugin_VideoOGL/Src/FramebufferManager.cpp
AgeCommit message (Collapse)Author
2013-08-27ogl: warn on osd if not supported features are enableddegasus
2013-08-26ogl: reset api state for blittingdegasus
glBlitFramebuffer depends on scissior test and color mask. It isn't documented well, but it does. So we have to reset the apistate before using it. In this way, there isn't any benefit of glBlitFramebuffer, glDrawArray would be better :-(
2013-08-20ogl: use texture_2d instead of renderbuffer for realxfb + efb2ram fbodegasus
It should do the same on gpu, but textures are more flexible. eg we could copy and sample them directly without blitting.
2013-08-06disable emulate format changes on glsl120degasus
The current shader uses bit operations which aren't supported by glsl120. A workaround with round + frac + lots of additions would be possible, but unreadable. So I think it isn't worth But this fixes the annoying shader compilation error message
2013-07-22implement emulate efb format changes on ogl backenddegasus
2013-07-13Patch from Degasus that removes the last of the the GL_TEXTURE_RECTANGLE ↵Ryan Houdek
usages. This is needed to have GLES3 support.
2013-05-06[Android] More GLES3 things. Disable Framedumping and MSAA rendering. Remove ↵Ryan Houdek
the HLSL->GLSL shader defines since Qualcomm doesn't support this in their shader compiler. Now they get chosen in our shader generator instead.
2013-05-05GL_DEPTH_COMPONENT can't have type of GL_UNSIGNED_BYTE with glTexImage2D. ↵Ryan Houdek
Qualcomm drivers get hit with this but all else don't care.
2013-04-17New license header introduced to all Video based projects.Lioncash
2013-04-15Update the license file text (change SVN to Git) in all projects except Core ↵lioncash
since I was told a merge was happening soon. So for the sake of the merge going smoothly, I'll fix that when I remove the tab/space mismatches from the Core project. Also, some tab/space mismatches removed from VideoOGL, and some places I missed in VideoDX[number] projects. Now, the Core is literally the only project with tab/space mismatches (on a large scale).
2013-01-16use renderbuf fo xfbdegasus
2013-01-14remove old deprecated calls and fixed functions parametersdegasus
2013-01-03xfb draw by blit - disable postprocessingdegasus
blitting can't do postprocessing - so for postprocessing, we have to add a new stage
2013-01-03fix virtual xfb - remove glCopyTexImage2Ddegasus
glCopyTexImage2D isn't in core (and so not supported everywhere) and it cannot store into GL_TEXTURE_RECTANGLE
2013-01-03uses the ARB_framebuffer_object syntaxdegasus
also require this extention (OGL3.0), but it have one _realy_ big advantage: - now it's possible to blit between different texture sizes, so all util draw calls can be implemented as blit
2012-12-29always calls glBindBuffer(0) after disabling vaodegasus
2012-12-13move glBindBuffer and glBindVertexArray out of VertexManagerdegasus
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13using of vao, warning: ARB_vertex_array_object is neededdegasus
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13only update vbo on changes in XFBSource::Drawdegasus
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13XFBSource::Draw in vbodegasus
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13reset glEnableClientState befor every drawdegasus
should be done with VAO, but atm, this is not possible :-( this also partial revert the fix in fb92c338af83 (activating texture0 globally). Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13remove usage of glMultiTexCoord2fdegasus
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-10-27Bit of cleanup and fixing of one issue that was noticeable in SMS with ↵Ryan Houdek
Mario's shadow.
2011-08-25Move on to XFB drawingRyan Houdek
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-29A few compiler warnings.Soren Jorvang
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6975 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-29Put some stuff in the gfx plugins into namespaces, so that the symbols won't ↵hrydgard
collide if someone decides to merge the gfx plugins into dolphin too. still more things left to do though. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6972 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-28Fix ClearScreen in OpenGL as well (uses clear quads instead of glClear now).NeoBrainX
Thanks to kiesel and sl1nk3 for helping me out here ;) git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6678 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-27Second Experimental commit: Rodolfo Osvaldo Bogado
corrected peek color and peek z to correctly emulate real hardware formats. implements native gamma correction.(i don't own any game that uses this functionality so i will appreciate feedback) i need a lot of feedback in this changes please enjoy git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6664 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-18Move some shared gfx plugin code into VideoCommon. Changed "Renderer" class ↵Jordan Woyak
to use virtual functions. (setting stuff up for video plugin merging) git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6433 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14Merged some FramebufferManager code into VideoCommon.Jordan Woyak
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6417 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-30Added EFB Scale option to the OpenGL plug-in.skidau
Renamed EFB Scale to Internal Resolution. Removed Auto Scale option (it is now always on). Added on-the-fly changing of the Internal Resolution in the OpenGL and Direct3D9 plug-ins. Further consolidated the code in the video plug-ins. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6240 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-28Minor code formatting:skidau
First step to bring a level of consistency between the video plug-ins - variable names, spacing, function names, function order, comments, file names. This will help us identify common code for VideoMerge. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6235 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-28Improve iterator usage.Jordan Woyak
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5528 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-27Revert previous. rodolfoosvaldobogado had already applied the same fix in theSoren Jorvang
next-to-last change, just enough lines above that svn silently merged it. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5512 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-26Fully initialize the xfbSource struct. Not sure if this could actually be usedSoren Jorvang
uninitialized, but this at least placates gcc. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5494 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-19after a good commit lets make some experiments:Rodolfo Osvaldo Bogado
implemented fixed efb scale to improve alignment and discard some error caused by incorrect scale. make both plugins work similar. this must improve opengl image quality a lot. also implemented dynamic resizing in opengl, this way the resolution math the windows resolution on resize. this is highly experimental so please test a lot. implemented shader dumping on error thinking in future experiments with shaders. enjoy :) git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5458 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-10Extend the OGL virtual XFB to handle games that use multiple XFBs to make a ↵donkopunchstania
frame. This should allow games that require the XFB to work without using a real XFB in RAM which is slow and limited to the original resolution. To use this enhancement you must check Use XFB in the options. The previous option was renamed Use Real XFB. I don't think this works with the aspect settings yet. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5185 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-24Systematically eliminating compiler warnings.Glenn Rice
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5117 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-06D3D and Opengl:Rodolfo Osvaldo Bogado
reverted a tiny leftover of my safe texture cache commit D3D renamed the SSAA modes to use samples as MSAA now they are 2,25x and 4x. OpenGL: fixed a nasty logical bug introduced in 4984 that causes efb corruption when efb to texture is used re enabled shader caching as it was not producing errors. fixed efb misalignment caused by integer rounding still a bit misaligned but many games will look better now git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5020 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-10Implemented secondary path for hardware with no multiples render target ↵Rodolfo Osvaldo Bogado
support, so please a lot of testing from people with problems in the last release. corrected a little depth textures still broken but now at least i discover the reason, the ultra bad news for d3d lover is, the only correct way to implement depth textures will be do a firs depth only pass disabling blending. This is because blending is affecting the values stored in the depth texture, so to store the true values, blending mus be deactivated. this will degrade performance but is the only "Correct" way in d3d 9. the other possibility is dx10 but that's a complete different story ;) git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4526 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-02This is a "Try to fix" commit, reverted all the changes made by my first ↵Rodolfo Osvaldo Bogado
commit that could affect texturing, so please everyone with texture problems please test this, also in opengl let the viewport calculations the way they where, opengl can handle any values in the viewport. in direct3d this is different, the only valid values are between 0.0 an 1.0 so fix this and let the shader handle the rest. please test all this and let me know the results. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4494 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-26sorry for that, changes in this file should not be commitedRodolfo Osvaldo Bogado
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4469 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-26OpenGL: commit rodolfoosvaldobogado's (what a name!) speedup patches.hrydgard
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4322 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-13Lots of code and warning cleanup. OGL/D3D: Moved to a shared config class in ↵hrydgard
VideoCommon. This lets VideoCommon code read the config without ugly hacks. Fixed various config race conditions by keeping a copy (g_ActiveConfig) of the g_Config struct which is updated once per frame. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4256 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-06GUI: Fixed a double keydown event in the main frame, the double click in the ↵John Peterson
video window (didn't know about CS_DBLCLKS) OpenGL: Fixed the live resolution setting git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4211 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-03Moving more things out of GL into VideoCommon...hrydgard
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4187 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