degasus
800a58f01c
reimplement postprocessing and fix one shader as example
2013-03-07 17:00:11 +01:00
degasus
a1c5e90083
Merge branch 'master' into GLSL-master
...
Conflicts:
CMakeLists.txt
Source/Core/DolphinWX/CMakeLists.txt
Source/Core/DolphinWX/Src/GLInterface.h
Source/Core/VideoCommon/Src/PixelShaderGen.cpp
Source/Core/VideoCommon/Src/TextureCacheBase.cpp
Source/Core/VideoCommon/Src/VertexManagerBase.cpp
Source/Plugins/Plugin_VideoDX11/Src/VertexManager.cpp
Source/Plugins/Plugin_VideoDX9/Src/VertexManager.cpp
Source/Plugins/Plugin_VideoOGL/Plugin_VideoOGL.vcxproj
Source/Plugins/Plugin_VideoOGL/Plugin_VideoOGL.vcxproj.filters
Source/Plugins/Plugin_VideoOGL/Src/GLUtil.h
Source/Plugins/Plugin_VideoOGL/Src/PixelShaderCache.cpp
Source/Plugins/Plugin_VideoOGL/Src/TextureCache.cpp
Source/Plugins/Plugin_VideoOGL/Src/VertexManager.cpp
Source/Plugins/Plugin_VideoOGL/Src/VertexShaderCache.cpp
Source/Plugins/Plugin_VideoOGL/Src/main.cpp
2013-03-06 15:59:29 +01:00
degasus
a2bb7d5766
initialize bSupportsDualSourceBlend only in renderer
2013-03-05 18:35:30 +01:00
degasus
5534d7e8c3
Revert "remove flag GL_SYNC_FLUSH_COMMANDS_BIT on syncing"
...
This reverts commit 025f8d342f
.
OSX may wait forever, so fix osx freeze
2013-03-05 16:51:09 +01:00
degasus
d19bc15d26
fix glsl140 workaround
2013-03-05 15:24:10 +01:00
Jordan Woyak
f3f89e1d00
Merge branch 'master' into vertex-loader-cleanup
...
Conflicts:
Source/Core/Common/Src/CommonFuncs.h
Source/Core/VideoCommon/Src/VertexLoader.cpp
2013-03-04 15:47:56 -06:00
degasus
efcfc5c014
workaround for GLEW_AMD_pinned_memory and older glew versions
2013-03-04 12:40:23 +01:00
degasus
e4f8d7b4c8
fix debug build
2013-03-04 10:20:55 +01:00
Jordan Woyak
b1a2915304
Merge branch 'master' into windows-unicode
2013-03-03 15:05:10 -06:00
Ryan Houdek
a01f793f59
Fix ARM build.
2013-03-03 07:37:22 +00:00
Jordan Woyak
ed90feb2b4
Kill warning.
2013-03-02 23:00:14 -06:00
Jordan Woyak
2b1af36900
Merge branch 'master' into windows-unicode
2013-03-02 15:33:32 -06:00
NeoBrainX
cb1d21c032
PerfQueries: Fix an integer overflow.
2013-03-01 23:57:56 +01:00
NeoBrainX
d1acb0a937
OGL: Fix perf metrics being overcounted when using a non-native internal resolution.
2013-03-01 23:12:41 +01:00
NeoBrainX
5a7bb2abfa
D3D11: Port perf queries code to the PerfQueryBase interface.
...
Remove deprecated PerfQuery methods from RenderBase.
Windows build fix.
2013-03-01 19:30:37 +01:00
Jordan Woyak
dea1e2827d
Open std::fstream in a unicode-safe manner.
2013-02-28 19:33:39 -06:00
NeoBrainX
cbf5efe191
Some cleanups.
...
PE perf metrics officially declared unsupported for the D3D9 project (out of pure laziness, anyone who cares can implement them :P).
2013-03-01 01:31:57 +01:00
NeoBrainX
1c9860246c
Build fixes for everyone!
2013-03-01 01:14:10 +01:00
NeoBrainX
7682ed22c6
Merge branch 'master' into perfqueries.
...
Conflicts:
Source/Core/VideoCommon/Src/VideoConfig.h
Source/Core/VideoCommon/VideoCommon.vcxproj.filters
Source/Plugins/Plugin_VideoDX11/Src/VertexManager.cpp
Source/Plugins/Plugin_VideoSoftware/Src/Rasterizer.cpp
Source/Plugins/Plugin_VideoSoftware/Src/Tev.cpp
2013-03-01 01:07:34 +01:00
Jordan Woyak
03ec9a2e08
Kill some unnecessary c_str and use StrToWxStr in a few places that I missed.
2013-02-28 02:40:03 -06:00
Jordan Woyak
56f09d3b91
Attempt to be consistent with conversions between std::string and wxString.
2013-02-28 02:30:05 -06:00
degasus
1b8d044543
clear cg from project files
2013-02-27 10:55:25 +01:00
Jordan Woyak
6b80e6f83c
Tweak Vertex/Index buffer handling a bit.
2013-02-27 01:57:02 -06:00
Ryan Houdek
692e39d1bb
Merge branch 'arm-noglsl'
2013-02-27 02:22:08 +00:00
Jordan Woyak
a680d17eef
Buildfix.
2013-02-26 19:59:33 -06:00
Jordan Woyak
f1c990069c
Yell at the user if they change window size while dumping frames, and some other avi dumping stuff.
2013-02-26 20:47:48 -05:00
degasus
ae481068cd
cleanup ogl extension osd
2013-02-26 23:36:22 +01:00
degasus
a650ae8c7b
workaround for base vertex. damn old nvidia driver
2013-02-26 23:15:55 +01:00
degasus
025f8d342f
remove flag GL_SYNC_FLUSH_COMMANDS_BIT on syncing
2013-02-26 21:48:35 +01:00
Ryan Houdek
717b976875
ARM Support without GLSL
2013-02-26 13:49:00 -06:00
degasus
9bc8d6e02b
make samplercache global and call constructor/destructor
2013-02-26 18:30:13 +01:00
degasus
4883fa268f
Split VideoBackend::Cleanup from Shutdown.
...
First is called from ogl/d3d thread, second is called from emulation thread (x11...)
2013-02-26 16:42:32 +01:00
degasus
8b7141d3de
Revert "Fix performance issues on certain legacy graphics hardware that isn't capable of copying an integer."
...
This reverts commit 380f22ca0e
.
Yeah, reverting a revert.
2013-02-26 08:57:35 +01:00
Jordan Woyak
380f22ca0e
Fix performance issues on certain legacy graphics hardware that isn't capable of copying an integer.
...
This reverts commit 52dacaa3e3
.
2013-02-25 20:52:30 -06:00
Jordan Woyak
52dacaa3e3
Make the posmtx vertex attribute an int instead of converting to and from a float.
2013-02-23 20:54:30 -06:00
degasus
242d960781
increase buffer size
...
32M UBO, 16M Vertex, 2M Index
2013-02-22 10:25:38 +01:00
Jordan Woyak
db1be085c2
VertexManager cleanup
2013-02-22 01:41:52 -06:00
degasus
9332775b68
default upload method for nvidia is buffersubdata
2013-02-21 21:59:40 +01:00
degasus
40e17b4cb8
add option for hacked upload and disable it by default
2013-02-21 18:18:44 +01:00
degasus
76e6085e31
consistently usage of buffer pointers
2013-02-21 12:36:29 +01:00
Jordan Woyak
e7c93b8ac3
Minor sampler cache cleanup.
2013-02-20 17:15:10 -06:00
Jordan Woyak
6e6d8af6dd
Revert "Don't load level 0 twice for 1-level textures in DX11." and fix it properly.
...
All backend TextureCaches now load level 0 in CreateTexture.
This reverts commit 294cb165ba
.
2013-02-20 05:42:22 -06:00
Jordan Woyak
55c2a01744
Check for sampler object support, just to be nice.
2013-02-19 21:24:08 -06:00
Jordan Woyak
f2647a1216
Implement OGL sampler cache. Allows binding a texture multiple times with different parameters. Also possibly gives a very small speed improvement.
2013-02-19 21:18:53 -06:00
degasus
d93e57ff22
revert b5fe39b8c7
"fix texture parameters"
...
these parameters are really floats. I was just wrong
2013-02-19 22:20:39 +01:00
degasus
b5fe39b8c7
fix texture parameters
2013-02-19 17:28:46 +01:00
degasus
50f4bf114e
Revert "map_orphan_and_risk - next try for upload method"
...
This reverts commit 17747fcfb8
.
On orphaning, some gl drivers do heurisitics where to store the buffer.
As the hack may only work on pinned memory, it would be much less deteministic.
2013-02-19 15:51:48 +01:00
degasus
0f2ee45d96
remove ati workaroung for mipmap creation
...
isn't needed any more by merging mapmap_fixes
2013-02-19 15:40:34 +01:00
degasus
17747fcfb8
map_orphan_and_risk - next try for upload method
...
should work around nvidia600 driver issue which will flush gpu on syncing
also increase buffer size by orphaning
2013-02-19 13:18:48 +01:00
degasus
a629dea4dc
Merge branch 'master' into GLSL-master
...
Conflicts:
CMakeLists.txt
Source/Core/DolphinWX/Dolphin.vcxproj
Source/Core/DolphinWX/Src/GLInterface/WX.cpp
Source/Core/DolphinWX/Src/GLInterface/WX.h
Source/Core/VideoCommon/Src/TextureCacheBase.cpp
Source/Core/VideoCommon/Src/TextureCacheBase.h
Source/Plugins/Plugin_VideoDX11/Src/TextureCache.cpp
Source/Plugins/Plugin_VideoDX11/Src/TextureCache.h
Source/Plugins/Plugin_VideoDX9/Src/TextureCache.cpp
Source/Plugins/Plugin_VideoDX9/Src/TextureCache.h
Source/Plugins/Plugin_VideoOGL/Src/Render.cpp
Source/Plugins/Plugin_VideoOGL/Src/TextureCache.cpp
Source/Plugins/Plugin_VideoOGL/Src/TextureCache.h
Source/Plugins/Plugin_VideoSoftware/Src/SWmain.cpp
damn mipmap_fixes ...
2013-02-18 18:49:20 +01:00
NeoBrainX
19ab5bf50d
TextureCache: Fix D3D backends crashing when a game uses multiple 1x1-sized LODs.
2013-02-18 17:14:56 +01:00
NeoBrainX
0f617183a8
Add a possible TODO.
...
Dunno if the hardware behaves like this, but it likely does.
2013-02-18 14:54:24 +00:00
degasus
bef24b5c6b
new format for gl extensions
2013-02-17 21:41:00 +01:00
Jordan Woyak
53aec6c476
Fix OGL perf queries and make them not slow!
2013-02-16 19:30:24 -06:00
Jordan Woyak
d994e56b60
Changes/cleanup to TextureCache::Load and other mipmap related code.
...
The significant change is what is now line 520 of TextureCacheBase.cpp:
((std::max(mipWidth, bsw) * std::max(mipHeight, bsh) * bsdepth) >> 1)
to
TexDecoder_GetTextureSizeInBytes(expanded_mip_width, expanded_mip_height, texformat);
Fixes issue 5328.
Fixes issue 5461.
2013-02-15 22:56:29 -06:00
degasus
e259343275
fix efb copy shaders
2013-02-15 13:13:45 +01:00
degasus
9f4a616f2e
build fix
2013-02-14 19:04:52 +01:00
degasus
a0ef58418b
workaround for buggy intel windows driver. revert this as soon as there are newer driver
2013-02-14 18:59:45 +01:00
degasus
0325e37bfb
merge glsl headers into one place
2013-02-13 21:34:48 +01:00
degasus
3392562501
rewrite efb copy shader, copied from dx11
2013-02-13 18:01:06 +01:00
degasus
21b83b436c
create shader cache directoy
2013-02-13 16:50:56 +01:00
degasus
b3675d15dc
enable shader cache again
2013-02-13 16:30:15 +01:00
degasus
398b37f371
fix ValidateShaderIDs
2013-02-13 15:16:32 +01:00
degasus
bbc292c210
merge Vertex and PixelShaderCache into ProgramShaderCache
...
this is the first step, uniform handling is still missing
2013-02-13 13:12:19 +01:00
NeoBrainX
ed0abc9dc5
Merge branch 'mipmap_fixes'.
2013-02-07 20:40:33 +01:00
NeoBrainX
6870c1fdd5
Fix some potential issues when blending on EFB formats without alpha.
...
Clean up state transition tables.
2013-02-07 18:01:24 +01:00
degasus
f079b04a5d
also check for glsl errors on linking, activation GLSL_DEBUG again (slowdown on shader compilation)
2013-02-07 12:47:41 +01:00
degasus
9987765b1f
build fix
2013-02-07 10:48:42 +01:00
degasus
376a807dea
first try of osx fix, mostly by pauldachz
2013-02-07 10:34:29 +01:00
degasus
e7a8d3f854
check for GL_ARB_sync, it's in ogl 3.2
2013-02-06 01:05:19 +01:00
degasus
ef602fd643
workaround for glGetUniformLocation in efb2ram
2013-02-05 18:22:23 +01:00
degasus
76adc77fa6
bigger buffers
2013-02-05 18:01:27 +01:00
degasus
1d86dafbe2
evil hack: map the buffer once and use this pointer after unmaping
...
This isn't allowed by gl and may _only_ work, if the driver uses cpu bound buffer.
But it may speed up :-)
2013-02-05 00:53:14 +01:00
degasus
f677b8cba3
update to glew1.9, win binaries also from official release
2013-02-04 21:11:12 +01:00
degasus
2108529120
also align the size of buffers for pinned memory
2013-02-04 20:48:28 +01:00
degasus
6e0b0192a8
correct spelling of align
2013-02-02 19:39:26 +01:00
degasus
0c7aa4ff4f
build fix
2013-02-02 19:32:40 +01:00
degasus
6e20af9ee9
align memory, use pinned memory if available
2013-02-02 19:26:29 +01:00
degasus
f0795bad12
fix glew fix
2013-02-01 17:12:05 +01:00
degasus
cb4cb1713d
workaround older glew versions
2013-02-01 17:09:50 +01:00
degasus
2a1f592d82
first try for pinned memory, complete untested
2013-02-01 17:04:27 +01:00
degasus
3bf4ffe7fa
usable sync of ringbuffer
2013-02-01 16:43:08 +01:00
degasus
3af9840a4c
stream by map and sync
...
but not working perfectly, so disabled
2013-02-01 15:15:25 +01:00
degasus
878bd7f26c
implement streaming by bufferSubData, split upload and allocation in ringbuffer
2013-02-01 12:30:08 +01:00
degasus
30170575c8
create StreamBuffer class for ogl upload
2013-01-31 23:11:53 +01:00
degasus
011e326698
remove glIsEnabled(GL_BLEND), we do restore state after it, so it doesn't matter
2013-01-31 13:49:20 +01:00
degasus
4a463f4588
also add glBufferSubData for ubo upload
...
so osx start game, but everything is black
2013-01-31 13:00:15 +01:00
degasus
c05f66bdd0
first try for osx core profile
...
now it doesn't crash, but it still hangs on startup
2013-01-31 12:20:17 +01:00
degasus
01d8c21e1d
don't stream in rasterfont
...
mapping blocks on nvidia workstation, so use glBufferData
2013-01-31 11:30:44 +01:00
Jordan Woyak
0e04e0c305
Fix some shadowing warnings.
2013-01-29 16:43:22 -06:00
Ryan Houdek
afb5be10d9
OSX likes to put unordered_map in the weirdest of places...
2013-01-28 15:36:55 -06:00
Ryan Houdek
fa45403557
Got to love that my server's cmake is half retarded.
2013-01-28 15:32:38 -06:00
Ryan Houdek
d94f3c4155
Stop using std::pair and std::map. Switch over to u64 and std::unordered_map. Provides a very small speed boost.
2013-01-28 15:18:54 -06:00
degasus
c5fa3e0f3d
move RestoreAPIState and ResetAPIState into backends
...
it's a backend specific hack, so it should be here
should give a small speedup in dx11 efb2tex
2013-01-28 18:16:03 +01:00
degasus
fd06342a97
set hint GL_STREAM_READ
...
it's wrong, but so we are guaranteed to get pinned memory.
it's slower for rendering, but faster for mapping.
2013-01-28 13:03:31 +01:00
Ryan Houdek
4fadb65259
Only check shader compilation status in debug or with DEBUG_GLSL defined. invalidate range on bindbufferrange since we don't care about what is in the range. Both give a performance boost for me.
2013-01-26 11:24:24 -06:00
degasus
3a52b37c3b
only create shaders after shadercaches are initialized
2013-01-26 16:33:54 +01:00
degasus
13e9bb56f8
fix bug when rasterfont disappears sometimes
2013-01-25 20:39:19 +01:00
degasus
41b1128fdd
orphan vbo also with glBufferData
2013-01-25 13:28:05 +01:00
degasus
a526fc5f92
ubo streaming
2013-01-25 13:20:42 +01:00