Commit Graph

3337 Commits

Author SHA1 Message Date
888b5fb061 remove usage of glMultiTexCoord2f
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:27:38 -06:00
e85438cba0 Clean up gcc/g++ compiler warnings that have accumulated. 2012-12-10 00:40:28 -06:00
rog
30718230b2 Fix some warnings. 2012-12-06 20:25:07 -05:00
rog
97f5b1665f what is this even... 2012-11-26 02:11:52 -05:00
4ff9e03509 Merge branch 'efb_scaling_fixes'. 2012-11-19 13:18:57 +01:00
rog
3a8e8af2d5 Merge movie-fixes. 2012-11-16 12:07:22 -05:00
a38bb488d2 Remove Renderer::xScale and Renderer::yScale. 2012-11-16 14:29:09 +01:00
78031c2d54 Move ComputeDrawRectangle() to Renderer::UpdateDrawRectangle(). 2012-11-16 14:25:49 +01:00
rog
14aa7150d9 Add option for author name for movies. Also, minor cleanup for previous options i've added. 2012-11-14 16:23:20 -05:00
rog
8fe5aa4ee8 movie cleanup 2012-11-12 20:40:11 -05:00
0809ba79ae fix for point rendering in dx9 backend, that will teach me to read the full documentation. if someone founs a games that use points a lot i will try to implement a faster path for point rendering.
now the map in twin snakes is functional in all the backends.
2012-11-12 19:37:08 -03:00
3936c06ee8 more fixes for my last commit, player problem in twin snakes is fixed 2012-11-11 22:39:27 -03:00
rog
a5d210129d Add an on screen lag counter. 2012-11-11 17:57:06 -05:00
53b62ab169 This should fix the bugs introduced by my last commit please retest the games that where showing graphical glitches. 2012-11-10 11:37:08 -03:00
6f21f5eb34 Video_Software: Implement texture preloading 2012-11-03 15:41:41 +01:00
fb92c338af Bit of cleanup and fixing of one issue that was noticeable in SMS with Mario's shadow. 2012-10-27 22:50:06 -05:00
dfb3c44d1a Remove glMatrixMode and glLoadIdentity calls in Render.cpp which do absolutely nothing. 2012-10-27 18:27:16 -05:00
8c1d104ca3 Change EFB copy location rectangles over to a Vertex array 2012-10-27 18:10:31 -05:00
c1fd640964 Rebase immediate-removal on master 2012-10-27 17:22:48 -05:00
ee72852491 implement some code to reduce the amounts of calls to setup vertex format, in d3d9 it gives no noticeable speedup, in opengl it still does not work right.
thanks to neobrain for the idea
2012-10-26 23:18:09 -03:00
eaa1ea71c1 Implement the new buffer approach in opengl. sadly in my machine it gives my only 2 more fps and if your hardware does not support ARB_map_buffer_range is even slower than plain vertex arrays.
change naming in all the backends vertex managers to make more easy to continue with the merge an some future improvements.
please test this as i'm interested in knowing the performance in linux and windows with the different hardware platforms.
2012-10-26 11:34:02 -03:00
72cb1734ee Some code cleaning for my last commit.
the amount and size of the buffer is now changed to "new hardware" frienly values and will fall back to the right values if hardware does not support them.
my next commit will be to a branch, with my ogl work.
2012-10-22 19:37:26 -03:00
5230146c73 Hey, long time no commits :).
So to compensate lets bring back some speed to the emulation.
change a little the way the vertex are send to the gpu,
This first implementation changes dx9 a lot and dx11 a little to increase the parallelism between the cpu and gpu.
ogl: is my next step in ogl is a little more trickier so i have to take a little more time.
the original concept is Marcos idea, with my little touch to make it even more faster.
what to look for: SPEEEEEDDD :).
please test it a lot and let me know if you see any problem.
in dx9 the code is prepared to fall back to the previous implementation if your card does not support the amount of buffers needed.
So if you did not experience any speed gains you know where is the problem :).
for the ones with more experience and compression of the code please test changing the amount and size of the buffers to tune this for your specific machine.
The current values are the sweet spot for my machine.
All must Thanks Marcos, I hate him for giving good ideas when I'm full of work.
2012-10-20 10:22:15 -03:00
57426ee726 Forced commit 2012-10-13 13:00:04 -05:00
1a8005d948 set ProgramShaderCache program format correctly. 2012-10-09 23:56:00 -05:00
eb7a0c485a More "stuff" for SS, also a small fix in the program shader cache cache setup." 2012-10-09 23:56:00 -05:00
210ecad15f let us try normal c++ static init instead... 2012-10-09 23:56:00 -05:00
03b09bed5d Get the program binary type correctly or else ATI makes massive (~400MB) shader caches. Also, don't need the line in the PixelShaderGen. 2012-10-09 23:56:00 -05:00
2e15440896 Add support for Dual source blending to older ATI cards that don't support 420pack but do support GL_ARB_blend_func_extended. This is more proper as well anyways. 2012-10-09 23:56:00 -05:00
5085cebaf3 These checks aren't needed when using CG. 2012-10-09 23:55:59 -05:00
108722bed0 oops, forgot to make sure the gl program is actually free'd. 2012-10-09 23:54:18 -05:00
e3854ded73 Woops, better not forget the ing 2012-10-09 23:54:18 -05:00
4cd748bbec Remove some warnings in ProgramShadercache, Was using wrong variable for checking dual source blending. 2012-10-09 23:54:18 -05:00
4c1fef8f98 refactor ProgramShaderCache::PCacheEntry 2012-10-09 23:54:18 -05:00
aaa405c973 Checking GLEW_VERSION_4_0 is superfluous since we check GL_ARB_get_program_binary, and it's a runtime variable anyways. 2012-10-09 23:54:18 -05:00
31a8424bcc fix formatting uglies introduced in glsl-master branch 2012-10-09 23:54:17 -05:00
c4e7a288e5 Add in the Windows fix. 2012-10-09 23:43:22 -05:00
ee529b7125 Only use explicit attribute locations when we are supporting GLSL > 1.2 since we need in/out instead of attribute variable types. This was brought to my attention from MESA. MESA supports GL_ARB_explicit_attrib_location, but yets to support GLSL 1.3, so basically useless extension to MESA right now? 2012-10-09 23:43:22 -05:00
5c486587a6 Write all shaders to disk on emulator stop instead of constantly. Also change pair from u64 to u32. 2012-10-09 23:43:22 -05:00
4eb227bd4c If user doesn't compile with glew 1.6, cut out program binaries so everything still compiles. 2012-10-09 23:43:22 -05:00
189d12b61c If CG isn't available, still compile and fallback on GLSL 2012-10-09 23:43:22 -05:00
7c91476650 Missed a if, don't want people crashing now do we? 2012-10-09 23:42:41 -05:00
9996f27120 Give OSX users more of a chance of supporting Single pass DSB in the future. 2012-10-09 23:42:41 -05:00
d012c75005 Implement Program shaders cache. Seems to reduce a small amount of stuttering when F-Zero starts. Did it because I can :| 2012-10-09 23:42:41 -05:00
ef1e157786 Go back to using glGetString with GL_EXTENSIONS because glew 1.7 is required to check for newer 4.2 extensions that way. 2012-10-09 23:42:40 -05:00
ac77bbd47b Move the GLSL extension checks over here so it is nicer. 2012-10-09 23:42:40 -05:00
7cb3d86e31 Add a define back so we work without GLEW 1.6, Also I missed a line when I was fixing binding sampler locations last night when I was tired. 2012-10-09 23:42:40 -05:00
1aad2e9e56 There we go, actually found the issue. 2012-10-09 23:42:40 -05:00
6759ee701d This thing fails when we don't support binding. Not 100% sure why I need to set this multiple times. 2012-10-09 23:42:40 -05:00
66a245dd68 Remove this silliness 2012-10-09 23:42:40 -05:00