degasus
34b1451fbe
cache vbos in TextureCache::TCacheEntry::FromRenderTarget
...
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:28:15 -06:00
degasus
d0c4332d99
don't update vbo, if there are no changes in Renderer::Swap
...
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:28:13 -06:00
degasus
bbcb442983
in the end, also Renderer::Swap in vbo
...
two last draw-calls are missing:
VertexManager::Draw (see Graphic_Update branch)
RasterFont::printString (perhaps reimplement with an texture)
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:28:10 -06:00
degasus
b41c06a9ac
EncodeToRamUsingShader in vbo
...
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:28:05 -06:00
degasus
8ea2ddbc50
XFBSource::Draw in vbo
...
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:27:59 -06:00
degasus
d44228f1b7
TextureCache::TCacheEntry::FromRenderTarget as vbo
...
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:27:56 -06:00
degasus
6b3125728b
use vbo for ShowEFBCopyRegions
...
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:27:53 -06:00
degasus
8b62be2025
fix ShowEFBCopyRegions
...
those fancy colors were the result of the usage of non-allocated heap
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:27:49 -06:00
degasus
6864b40e26
reset glEnableClientState befor every draw
...
should be done with VAO, but atm, this is not possible :-(
this also partial revert the fix in fb92c338af
(activating texture0 globally).
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:27:46 -06:00
degasus
888b5fb061
remove usage of glMultiTexCoord2f
...
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:27:38 -06:00
Glenn Rice
a6374f25fd
Fix OSX build once again. Apparently OSX needs to get with the times.
2012-12-10 10:31:08 -06:00
NeoBrainX
c82136abdc
PixelShaderGen: Drop some useless and potentially buggy code.
...
Thanks to glennrics for noticing.
2012-12-10 16:13:22 +01:00
Glenn Rice
f6df3d1513
OSX build fix for the unordered_map/hash_map issue.
2012-12-10 08:40:27 -06:00
rog
330ea74d19
Allow input displays to work without an active movie.
2012-12-10 06:20:06 -05:00
Glenn Rice
e85438cba0
Clean up gcc/g++ compiler warnings that have accumulated.
2012-12-10 00:40:28 -06:00
rog
43d673b576
Save game list sorting.
...
Fixes issue 5771.
2012-12-08 23:53:50 -05:00
NeoBrainX
4fc0125fb3
Fix OS X 10.6 compatibility.
...
Patch by mathieudel.
2012-12-07 19:49:08 +01:00
rog
30718230b2
Fix some warnings.
2012-12-06 20:25:07 -05:00
skidau
aeb5782395
Merge conflict. Fixes issue 5471.
2012-12-06 21:16:27 +11:00
rog
bbf7c3a4d0
Fix a save state crash in some situation.
2012-12-05 17:11:19 -05:00
Ryan Houdek
423024110e
Includes are case sensitive and Common is in the include directories so including the file this way was silly.
2012-12-04 11:44:28 -06:00
John Peterson
470a4eee8b
Fixing wiimote savestate and recording.
2012-12-03 21:14:25 -05:00
John Peterson
983d5d1f73
Making cheats manager resizeable, maximizable, hideable (parentless), higher by default.
2012-12-03 20:58:25 -05:00
rog
47aaca89eb
Fix error message about state undo backup always appearing when no movie is active.
2012-12-02 02:08:43 -05:00
NeoBrainX
bed260aa14
VertexShaderManager: Fix redundant shader constant updates.
...
Thanks to konpie for spotting this.
Might give a fairly perceivable speedup in the D3D11 backend.
2012-12-01 14:23:24 +01:00
Pierre Bourdon
3ca77cf077
Fix samples clamping and interlacing in the OUTPUT command. Shouldn't have assumed previous AX HLE was doing something right.
2012-12-01 00:54:25 +01:00
Pierre Bourdon
04b1ee0016
Implemented command 01 (download data and mix to MAIN/AUXA/AUXB with volume control). Fixes missing weapon sounds in Metroid Prime 2.
2012-11-28 15:22:02 +01:00
Pierre Bourdon
4cf2856284
Improve savestates support in AX and AXWii
2012-11-28 03:31:46 +01:00
Pierre Bourdon
f11a40f858
Command 13 should upload only AUXA LRS, not MAIN LRS + AUXA LRS. Fixes more GC EA games sound/music (including FIFA 06, Madden 08).
2012-11-28 01:48:27 +01:00
Pierre Bourdon
1a129abe0d
AUX return data should be mixed to main buffers, not AUX buffers. Fixes a regression introduced by r954c55e35afb, now EA games sound works again.
2012-11-27 21:48:59 +01:00
Pierre Bourdon
9270b62830
Rewrite MixAUXSamples to make it more clean
2012-11-27 20:36:34 +01:00
Pierre Bourdon
2120f536d5
Implement command 07 in GC AX (download data to main LR and reset main surround)
2012-11-27 20:36:14 +01:00
rog
aaeeef48da
Compile fix for linux.
2012-11-26 23:36:47 -05:00
rog
c0bb7aa8f3
Turns out you have to actually commit a change before merging if you want it to be included.
2012-11-26 18:17:07 -05:00
Pierre Bourdon
9b1a66245e
Fix an AUX mixing issue introduced when implementing AXWii. Now FIFA 06 sounds great with AX HLE.
2012-11-27 00:03:40 +01:00
Pierre Bourdon
706939e632
Implement command 10, used by FIFA 06 and linked to AUXB mixing. Sound still broken in that game.
2012-11-27 00:03:02 +01:00
Pierre Bourdon
fb1ecd90b0
Implemented command 13 in GC AX, used in some EA games (FIFA 06 now has broken sound, which is still better than no sound)
2012-11-26 23:34:18 +01:00
rog
db458a234a
Merge branch 'desync-fixes' into movie-fixes
2012-11-26 12:40:56 -05:00
rog
38e0d06e8c
Whoops, was calling GetMD5() twice.
2012-11-26 12:29:36 -05:00
rog
3d9712a99e
Remove more unused code.
2012-11-26 03:48:04 -05:00
rog
c2146921f9
Call InputUpdate() for wii games when using gc controller but not wiimote.
2012-11-26 03:04:17 -05:00
rog
97f5b1665f
what is this even...
2012-11-26 02:11:52 -05:00
rog
0903e20817
Expand input buffer as needed, instead of hardcoding it at 40 MiB.
...
Patch (mostly) by Ilari.
2012-11-25 22:41:48 -05:00
rog
1917f83244
Cleanup and misc movie fixes.
2012-11-25 19:26:37 -05:00
rog
0c6dad6a37
Clear unneeded variables upon stopping emulation.
2012-11-24 18:27:20 -05:00
rog
d26c7fea17
Remove old, unused code.
2012-11-24 01:40:34 -05:00
rog
f251704df2
The trick to multithreaded emulation is to include thread.h more than once.
...
Also, rewords some awkardly written messages.
2012-11-24 01:15:26 -05:00
rog
a374f9f049
Check md5 when recording from save state too.
2012-11-23 22:47:32 -05:00
rog
ca650d4435
Record md5 of game file to .dtm, and check it when playing back.
2012-11-23 22:23:58 -05:00
skidau
085c81da86
Mapped the addco and subfco PowerPC instructions. Fixes Frogger: Hyper Arcade Edition.
2012-11-24 00:04:28 +11:00
NeoBrainX
0fcb246b7e
Enable GFX debugger functionality in Release builds.
2012-11-20 17:54:48 +01:00
Pierre Bourdon
9d85052a66
Implement Wiimote audio output in AXWii. Not very useful yet as no sound is currently being mixed to the wiimote channels.
2012-11-20 11:34:49 +01:00
Pierre Bourdon
affdf08fd6
Real fix for the crashes on Windows with AXWii
2012-11-20 09:49:27 +01:00
Pierre Bourdon
e858835c7e
Fixing the hack fix (I can't multiply 32x32)
2012-11-20 04:26:07 +01:00
Pierre Bourdon
0d3c3f6339
Fix a crash in AXWii with SRC ratio > 4 (which I thought was impossible, but AXWii changed the SRC algorithm)
2012-11-20 04:18:48 +01:00
Pierre Bourdon
321e3a8421
Add global volume handling for AUX mixing and L/R output in AXWii
2012-11-20 03:32:29 +01:00
Pierre Bourdon
ae85159a94
Add surround sound support to GC AX HLE
2012-11-20 03:22:24 +01:00
Pierre Bourdon
954c55e35a
New AXWii now working properly in some games I tested
2012-11-20 03:13:55 +01:00
Pierre Bourdon
e750bed2a9
Rename NewAX -> AX and remove the old code. Time to work on AXWii.
2012-11-19 22:03:56 +01:00
NeoBrainX
4f652c4086
Partially revert "Check if BP and XF changes actually change values before flushing". Dolphin code sucks too much to get optimizations.
...
This reverts commit 5a77cae2e3
.
Fixes issue 5459.
Fixes issue 5606.
2012-11-19 21:09:31 +01:00
parlane
d7e65f03e4
Fix indentation [ using the web editor D: ]
2012-11-19 19:44:44 +00:00
Pierre Bourdon
4f88fee560
Added a small TODO list of things missing in NewAX
2012-11-19 20:25:57 +01:00
Pierre Bourdon
3541d33c25
Support both versions of the mixer_control bitfield. Fixes Skies of Arcadia music being muted (and sounds being mixed only on the left audio channel), this time without a hack.
2012-11-19 20:10:37 +01:00
NeoBrainX
4ff9e03509
Merge branch 'efb_scaling_fixes'.
2012-11-19 13:18:57 +01:00
NeoBrainX
b02bb7617f
Fix some fractional EFB scaling issues.
2012-11-19 13:10:32 +01:00
parlane
9345501388
Dolphin was crashing after attempting to use a NULL on macosx.
...
(turns out that passing NULL to string cmp funcs has "undefined behavior".)
Thanks to Grant Paul for this quickfix!
2012-11-19 03:19:51 +00:00
rog
69e8942dac
Fixes pausing movies for some 30 fps games, in some situations.
...
Thanks abahbob for testing.
2012-11-18 01:07:48 -05:00
XtraFear
d6697d50c7
Added option to toggle the display of On-Screen Display messages in the Interface tab.
2012-11-16 23:54:48 +01:00
NeoBrainX
a135512f9b
Build fix.
...
Fixes issue 5674.
2012-11-16 23:46:28 +01:00
rog
3a8e8af2d5
Merge movie-fixes.
2012-11-16 12:07:22 -05:00
rog
101de62c86
Remove an old TODO, and add a new one.
2012-11-16 12:03:51 -05:00
NeoBrainX
f88e7d3b73
Fix an off-by-one error.
2012-11-16 14:29:11 +01:00
NeoBrainX
a38bb488d2
Remove Renderer::xScale and Renderer::yScale.
2012-11-16 14:29:09 +01:00
NeoBrainX
78031c2d54
Move ComputeDrawRectangle() to Renderer::UpdateDrawRectangle().
2012-11-16 14:25:49 +01:00
Pierre Bourdon
c8b2ba1bc6
Implement the MORE command (0D) used to read more commands from the CPU
2012-11-16 07:51:19 +01:00
Braden
a024d04583
Patch by mwessel that fixes real wiimotes on OSX 10.8
2012-11-15 21:30:19 -06:00
X-tra Fear
5170d65711
Fixed last commit.
2012-11-15 14:47:51 -05:00
Pierre Bourdon
5a2d8661d7
Add comments explaining how the voice processing works
2012-11-15 16:57:33 +01:00
Pierre Bourdon
aa90f799b7
Re-implementation of the AX voice mixing algorithm. Now with 100% less WTF.
2012-11-15 16:30:05 +01:00
rog
25a1979b22
Merge https://code.google.com/r/xtrafear-dolphin-emu
2012-11-14 17:27:46 -05: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
X-tra Fear
11fc13aea4
Fixed WiiMotes disconnecting when ES_LAUNCH is ran.
2012-11-14 16:12:25 -05:00
rog
f5a3379d71
Add config option for mac address. Fixes issue 5694.
2012-11-14 14:28:38 -05:00
Pierre Bourdon
531cc6aaf3
Fixed AUXB_NOWRITE command number and implemented UPLOAD_LRS command (06)
2012-11-14 18:08:29 +01:00
Pierre Bourdon
f84f15c5bf
Oops, forgot a memset which removed all AUX effects
2012-11-14 18:03:55 +01:00
Pierre Bourdon
a630357c9e
Add AUX mixing support as well as a send&return effect implementation
2012-11-14 17:55:16 +01:00
Pierre Bourdon
61c1fab2c6
Fix Windows support again: std::thread can't take a member pointer with StdThread.h from Common
2012-11-14 12:13:19 +01:00
Pierre Bourdon
db46ccd175
More accurate mixing buffers initialization using parameters from command 00
2012-11-14 12:08:41 +01:00
Pierre Bourdon
24d430eba0
Add NewAX to the VC++ project files
2012-11-14 11:32:57 +01:00
Pierre Bourdon
6a1241c03e
Make a hack optional to fix 48KHz output mode with NewAX
2012-11-14 11:25:27 +01:00
Pierre Bourdon
0b275c20af
Added output support to NewAX. Now working fine with Tales of Symphonia.
2012-11-14 11:20:54 +01:00
Pierre Bourdon
18f3630af5
PBs processing is now done, just need the output to be able to test
2012-11-14 06:53:36 +01:00
Pierre Bourdon
7535c6d903
Parse the AX command list in the AX thread
2012-11-14 06:15:55 +01:00
Pierre Bourdon
9e813502ac
Create a new thread for AX and make it handle the command lists
2012-11-14 05:33:04 +01:00
Pierre Bourdon
3195916744
Basic infrastructure for the new AX HLE, currently not doing anything besides answering mails
2012-11-14 05:08:04 +01:00
Pierre Bourdon
e4d18e3a8b
Bound the iteration on the PB list when processing updates.
...
Fixes freezes introduced in 3.0-807 with DSPHLE on some AX games.
Apparently logic doesn't apply inside the HW/DSPHLE/UCodes directory.
2012-11-13 16:50:42 +01:00
Pierre Bourdon
16060290c2
Fix missing notes in musics with DSPHLE.
...
Tales of Symphonia and Skies of Arcadia Legends now have working musics with
DSPHLE. Some other games with the same symptoms (missing instruments) should
probably be fixed by that change too.
2012-11-13 09:37:44 +01:00
rog
8fe5aa4ee8
movie cleanup
2012-11-12 20:40:11 -05:00
rog
8eb6f9002e
Fixes interpreter when not recording or playing back a movie.
2012-11-12 20:20:34 -05:00
rog
a5d210129d
Add an on screen lag counter.
2012-11-11 17:57:06 -05:00
rog
35e5a1e592
Add an option to pause on the last frame of a movie.
2012-11-10 21:57:31 -05:00
Rog
e8c0fea16e
Retain dsp JIT setting when switching to HLE. Fixes issue 5691.
2012-11-09 12:08:56 -05:00
Rog
ab48e1154b
Stop saving undo buffer (and associated .dtm, and .sav) when starting playing back a movie from save state. This is completely useless, and just wastes time copying save states around.
2012-11-08 23:25:55 -05:00
NeoBrainX
6f21f5eb34
Video_Software: Implement texture preloading
2012-11-03 15:41:41 +01:00
Pierre Bourdon
d13163380d
Bye mamario, you won't be missed
2012-11-02 02:48:55 +01:00
sulokuTDCmago
d032c40a58
- Added a new wilcard for importing savegames, which basically shows all saves (gci, gcs and sav). This is set as default (I really got frustrated of having to change the type every single time when making tests for GCMM, and I think it makes more sense at user level to just show all saves regardless the format)
...
- In icon retrieving I removed the "format check" as it shouldn't really matter to have mixed icon formats. Also removed the "Time splitters hack" as there's no reason for it since we are only checking the last 3 bits and I'm pretty sure having bits 1 and 2 set is the same as having them unset.
- Icon retrieving uses AnimSpeed as stop signal (every icon must have an speed set, the first speed that is 0 means there are no more icons)
- Also, in icon retrieving I added support for "blank frames"(Luigi's Mansion and Pikmin that I know of). With this the base for icon animation is complete.
- Fixed PSOIII savegame patch which was wrong before.
Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-10-29 21:02:59 -07:00
Sonicadvance1
5dd49edaec
Badaboom. Add in Memory include to CDUtils.cpp
2012-10-30 02:45:42 +00:00
skidau
303b0f6b6d
Test the audio loop with aligned addresses. Fixes the high pitched squeal in Muramasa.
2012-10-29 14:03:28 +11:00
Ryan Houdek
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
skidau
882d5161f8
Merge branch 'Capcom-Music-Loop'
...
* Capcom-Music-Loop:
Removed the fake DMA wait time as it is no longer needed after the aram-dma-fixes branch is merged. This fixes the Resident Evil 2/3 cutscene audio in DSP LLE mode. Fixes issue 2723.
Changed the loop end address detection to an exact match with the current address for ADPCM audio. Fixes the non-looping music in PN03.
2012-10-28 13:36:34 +11:00
Ryan Houdek
dfb3c44d1a
Remove glMatrixMode and glLoadIdentity calls in Render.cpp which do absolutely nothing.
2012-10-27 18:27:16 -05:00
Ryan Houdek
8c1d104ca3
Change EFB copy location rectangles over to a Vertex array
2012-10-27 18:10:31 -05:00
Ryan Houdek
c1fd640964
Rebase immediate-removal on master
2012-10-27 17:22:48 -05:00
rog
95d55ed1c7
fixes for backing up wii saves when playing a movie
2012-10-26 20:04:06 -04:00
rog
8921fe0d09
move wii saves to a backup if playing a movie that starts with no save
2012-10-26 17:36:18 -04:00
rog
0bc2021284
save if a wii game's save data exists when starting recording. Probably not the best way to do this, and could result in a false negative if banner.bin exists, but the actual save file doesn't, but this should work well enough.
2012-10-25 03:15:54 -04:00
rog
8dfb12da3e
stuff
2012-10-24 23:21:34 -04:00
rog
76a6917fdf
Check game ID against what is recorded to the .dtm
2012-10-24 19:42:04 -04:00
rog
7ee455ce3b
When beginning recording, check settings in Init() instead of just in BeginRecordingInput(), since it's called after bootmanager.cpp reads the game's config.
2012-10-24 18:44:26 -04:00
rog
7006cd1217
i'm still not using a branch to fix the name of a variable
2012-10-24 15:32:02 -04:00
rog
4358f8384f
readd memory card detection for movie code. I deleted this before, intending to move it elsewhere, but never did
2012-10-24 15:16:41 -04:00
rog
a1186d84df
update state version
2012-10-23 02:31:16 -04:00
rog
5133ac551b
merge relevant changes from bc61dbdf58a8 in otu0001-desync-fix clone
2012-10-23 02:10:49 -04:00
rodolfoosvaldobogado
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
skidau
421a75493c
Removed the fake DMA wait time as it is no longer needed after the aram-dma-fixes branch is merged. This fixes the Resident Evil 2/3 cutscene audio in DSP LLE mode. Fixes issue 2723.
...
Removed the ADPCM format detection from the previous commit as it broke the audio looping in Knockout Kings 2003.
2012-10-23 00:30:01 +11:00
skidau
b2a01dc348
Changed the loop end address detection to an exact match with the current address for ADPCM audio. Fixes the non-looping music in PN03.
...
Fixes issue 3998.
2012-10-22 22:59:35 +11:00
NeoBrainX
f7edfc0118
FifoPlayer: Copy selected object commands to clipboard when pressing ctrl+c
2012-10-22 12:32:57 +02:00
rog
aece5310f3
more movie cleanup. Removes the remaining globals that didn't need to be global, rearranges some code to make more sense, and removes some redundant code.
2012-10-21 23:20:28 -04:00
rog
9070e7ff8c
misc movie cleanup and fixes
2012-10-20 22:26:40 -04:00
rog
92d2f5dee2
keeping padding right is so hard
2012-10-20 15:58:29 -04:00
rog
a6028b055b
Save disc changes to .dtm, and load the full movie header every time it's loaded.
2012-10-20 14:40:16 -04:00
rodolfoosvaldobogado@gmail.com
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
rog
0384f61af3
re-rearrange movie code so it actually works all of the time
2012-10-19 19:43:03 -04:00
rog
b1dee5fc23
small fix for undo load state while not recording
2012-10-18 04:40:56 -04:00
rog
79692a6c78
save settings necessary for syncing a movie to the .dtm, and load them upon playback
2012-10-18 04:18:40 -04:00
rog
783409c765
clear the save state loaded from a previous movie when starting emulation
2012-10-18 04:14:25 -04:00
rog
6b99b746c8
fix undo load state and load last overwritten state while recording
2012-10-18 04:11:14 -04:00
rog
7f624cda10
fix recording from save state
2012-10-18 04:03:12 -04:00
rog
a366521d13
Correct the hotkey labels for undo load state, and load last overwritten state buttons
2012-10-18 03:30:44 -04:00
Ryan Houdek
57426ee726
Forced commit
2012-10-13 13:00:04 -05:00
Ryan Houdek
3f0d7312fa
A couple missed lines on the rebase.
2012-10-13 12:43:00 -05:00
Shawn Hoffman
1a8005d948
set ProgramShaderCache program format correctly.
2012-10-09 23:56:00 -05:00
Ryan Houdek
10666a9b87
More 'stuff'
2012-10-09 23:56:00 -05:00
Ryan Houdek
eb7a0c485a
More "stuff" for SS, also a small fix in the program shader cache cache setup."
2012-10-09 23:56:00 -05:00
Ryan Houdek
71f6b1eec6
Change 'stuff'
2012-10-09 23:56:00 -05:00
Shawn Hoffman
210ecad15f
let us try normal c++ static init instead...
2012-10-09 23:56:00 -05:00
Ryan Houdek
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
Ryan Houdek
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
Ryan Houdek
5085cebaf3
These checks aren't needed when using CG.
2012-10-09 23:55:59 -05:00
Ryan Houdek
e88d35d1c1
Had a few vec4 and float4(0) calls floating around.
2012-10-09 23:55:59 -05:00
Shawn Hoffman
108722bed0
oops, forgot to make sure the gl program is actually free'd.
2012-10-09 23:54:18 -05:00
Ryan Houdek
e3854ded73
Woops, better not forget the ing
2012-10-09 23:54:18 -05:00
Ryan Houdek
4cd748bbec
Remove some warnings in ProgramShadercache, Was using wrong variable for checking dual source blending.
2012-10-09 23:54:18 -05:00
Shawn Hoffman
4c1fef8f98
refactor ProgramShaderCache::PCacheEntry
2012-10-09 23:54:18 -05:00
Shawn Hoffman
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
Shawn Hoffman
31a8424bcc
fix formatting uglies introduced in glsl-master branch
2012-10-09 23:54:17 -05:00
Shawn Hoffman
4a4833e617
default to GLSL instead of Cg
2012-10-09 23:43:22 -05:00
Ryan Houdek
c4e7a288e5
Add in the Windows fix.
2012-10-09 23:43:22 -05:00
Ryan Houdek
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
Ryan Houdek
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
Ryan Houdek
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
Ryan Houdek
189d12b61c
If CG isn't available, still compile and fallback on GLSL
2012-10-09 23:43:22 -05:00
Sonicadvance1
7c91476650
Missed a if, don't want people crashing now do we?
2012-10-09 23:42:41 -05:00
Ryan Houdek
9996f27120
Give OSX users more of a chance of supporting Single pass DSB in the future.
2012-10-09 23:42:41 -05:00
Ryan Houdek
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
Ryan Houdek
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
Ryan Houdek
ac77bbd47b
Move the GLSL extension checks over here so it is nicer.
2012-10-09 23:42:40 -05:00
Ryan Houdek
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
Ryan Houdek
1aad2e9e56
There we go, actually found the issue.
2012-10-09 23:42:40 -05:00
Ryan Houdek
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
Ryan Houdek
c76593f6a2
Looky, OSX found an issue for me.
2012-10-09 23:42:40 -05:00
Ryan Houdek
66a245dd68
Remove this silliness
2012-10-09 23:42:40 -05:00
Ryan Houdek
9c09e1973a
Some shader programs don't come with Vertex shaders attached, don't try to bind a Vertex Uniform block then.
2012-10-09 23:42:40 -05:00
Ryan Houdek
f8d0c28e53
Set Sampler values at program make time instead of every frame. Fix an issue when The user had UBO support but not Binding support.
2012-10-09 23:42:40 -05:00
Ryan Houdek
ddd4360d6d
Only delete this buffer if we support it.
2012-10-09 23:42:39 -05:00
Ryan Houdek
7aad45658e
Add a GUI option to use GLSL shaders. Also fix a small typo.
2012-10-09 23:42:39 -05:00
Ryan Houdek
076c1a5aa7
Make sure not to try and bind UBO locations when it isn't supported
2012-10-09 23:41:49 -05:00
Ryan Houdek
7f12daa014
Looks like we make use of fmod, make a GLSL function for it!
2012-10-09 23:41:49 -05:00
Ryan Houdek
ba12c0b4f5
Instead of querying the vertex attribute location. Let's bind it to where CG expects it to be as well. Was causing problems when we were trying to activate the components below and they weren't available. This fixes cubivore with GLSL shader. Also any other game that uses 3 normal pointers.
2012-10-09 23:41:48 -05:00
Jordan Woyak
d70726b035
glMapBuffer was slow, go back to glBufferSubData, single combined ps/vs ubo now
2012-10-09 23:41:48 -05:00
Jordan Woyak
d9117ab6a1
try combining vs/ps ubo
2012-10-09 23:41:48 -05:00
Jordan Woyak
e641ede232
make use of glMapBuffer to set ubo data
2012-10-09 23:41:48 -05:00
Ryan Houdek
04836705b7
Show a bit of information when using GLSL shaders.
2012-10-09 23:41:48 -05:00
Jordan Woyak
8e80771670
fix stupid indentation
2012-10-09 23:41:48 -05:00
Jordan Woyak
73a29bf6a1
have separate variables/functions for VS/PS ubo stuff, array was confusing.
2012-10-09 23:41:48 -05:00
Ryan Houdek
a809feae1a
Disable UBO buffer generation if hardware doesn't support it.
2012-10-09 23:41:48 -05:00
Pierre Bourdon
3bcec51334
More coding style fixes because I suck at sed
2012-10-09 23:41:48 -05:00
Pierre Bourdon
3c6d0fc710
8 spaces indentation -> tabs
2012-10-09 23:41:48 -05:00
Ryan Houdek
a5257c1a0a
Actually have Dual Source blending work for people. Forgot about this change.
2012-10-09 23:41:06 -05:00
Ryan Houdek
a304af75fd
Make this pretty
2012-10-09 23:41:06 -05:00
Ryan Houdek
67687a7b6d
Make sure our UBO buffers are always aligned correctly.
2012-10-09 23:41:06 -05:00
Ryan Houdek
5b06bbf87d
Use UBOs in every shader. I had missed a few. Only cache Uniform locations if we aren't using UBOs.
2012-10-09 23:41:06 -05:00
Ryan Houdek
5bcbf92f43
Make sure to support everything even if GPU doesn't.
2012-10-09 23:41:06 -05:00
Ryan Houdek
d4a80ca3ec
yay, UBOs work 100% now.
2012-10-09 23:41:05 -05:00
Ryan Houdek
1f75ee49bf
UBO works for Pixel Shaders if Binding for UBO is zero, otherwise fails. Probably why Vertex shader UBO is failing. Too tired to investigate right now.
2012-10-09 23:41:05 -05:00
Ryan Houdek
904adb9e3d
More for Billiard <3
2012-10-09 23:41:05 -05:00
Ryan Houdek
ce7a54f32a
Firin ma lazer
2012-10-09 23:41:05 -05:00
Ryan Houdek
b105d70339
Firin ma lazer
2012-10-09 23:41:05 -05:00
Ryan Houdek
c82b92bfc2
Fix one error.
2012-10-09 23:41:05 -05:00
Ryan Houdek
2fbca145cb
Remove bSupportsGLSLLocation since it won't work how I expect it.
2012-10-09 23:41:05 -05:00