rodolfoosvaldobogado
450dcc9d2c
As requested, this is my implementation of zcomploc using a multi-pass algorithm. My apologize to the others devs for committing in the main branch but is the only way to get this tested as soon as possible.
...
please test for regressions, speed and for other issues fixed, as a example, the black color in water splash in super mario galaxy are fixed with this rev.
please as soon as yo find a bug let me know.
2012-03-27 15:44:58 -03:00
Shawn Hoffman
d15740daf1
Merge branch 'wxw3-update'
2012-03-25 12:27:38 -07:00
NeoBrainX
fee98b426b
Revert r41bcf657f89d, r3a9fed0ba285, r9adc119e3c2f and re58692653afd (all of them are wrong).
2012-03-24 15:58:44 +01:00
NeoBrainX
2afe605069
D3D11: Disable mipmapping when no mipmap filter is selected.
2012-03-24 06:04:00 +01:00
Shawn Hoffman
56b1373baf
Remove scons-related files
2012-03-25 12:55:02 -07:00
Shawn Hoffman
f7423a0a4f
Merge branch 'master' into wxw3-update
...
Conflicts:
Source/Core/DolphinWX/Src/LogWindow.cpp
2012-03-22 17:57:38 -07:00
skidau
a60a0825a3
Merged 'FifoBusy' branch. Thanks
...
to marcosvitali.
Added an external exception check when the CPU writes to the FIFO. This allows
the CPU time to service FIFO overflows. Fixes random hangs caused by FIFO
overflows and desyncs like in "The Last Story" and "Battalion Wars 2". Thanks
to marcosvitali for the research.
Added some code to unlink invalidated blocks so that the recompiled block can be
linked (speed-up).
This release still fixed the hangs produced by fifo overflow without sacrifice
performance. For example you can test Tutorial moves at the beginning of The last history now
is fluid 30/60.
Fixed possibles random hangs in DC mode.
Fixed hangs in DC mode in (Simpsons, Monkey Island, Pokemon XD, etc)
Implemented accurate management of Pixel Engine Interrupts. Now the GPU loop
is stopped when a PE Interrupt needs to be managed and resumed when Pixel Engine
finish.
Fixed Metroid Prime 3 and 2 desync. And other games with desync because of
FIFO Reset. That happens because FIFO_RW_DISTANCE_HI must be written first, for checking
fifo.CPReadWriteDistance == 0, so some fifo resets was not managed in the right
way.
Fixed Super Monkey Ball in some cases when the game write the
WriteReadDistance need to be safe like the SafeCPRead.
Improved the CheckException for the GatherPipe writes in JIT, now only the
External Exceptions are processed.
Fixed definitely Pokemon XD in dual core mode. This game is doing something
not allowed. It attach to CPU the same fifo attached to the GPU in multibuffer
mode. I added a check to prevent overwrite the GPU FIFO with the CPU FIFO. If
the game do that on breakpoint the solution can fail.
Fixed ReadWriteDistance calc when CPRead > CPWrite.
Added Token and Finish cause to GP Jit checking.
Additional cleanup in CommandProcessor.
Fixes issue 5209
Fixes issue 5055
Fixes issue 4889
Fixes issue 4061
Fixes issue 4010
Fixes issue 3902
2012-03-20 19:37:25 +11:00
Shawn Hoffman
c5d746f3d8
remove scons files from VS projects
2012-03-18 06:41:12 -07:00
Shawn Hoffman
c3d13b048c
build against wxWidgets3 from Externals on Windows.
...
use Externals version of libpng on Windows.
2012-03-18 02:31:19 -07:00
marcosvitali
b0f75f17ae
This release still fixed the hangs produced by fifo overflow without sacrifice performance.
...
For example you can test Tutorial moves at the beginning of The last history now is fluid 30/60.
Shuffle2: I've delete the hacky line, I think is not necessary anymore. Additional some clean in CommandProcessor.
Please test The Last Story and others games affected in the previous commits and give me a feedback.
2012-03-05 02:40:10 -03:00
Henrik Rydgard
f5d4fe0bfe
Fix some minor bugs pointed out by PVS Studio (thanks!)
2012-03-03 20:07:20 +01:00
NeoBrainX
9276b76fbc
VideoSoftware: Implement zfreeze (GXSetCoPlanar).
...
Fixes Mario Golf: Toadstool Tour's menus.
Reference:
The OpenGL extension SGIX_reference_plane seems to provide the same functionality:
http://www.opengl.org/registry/specs/SGIX/reference_plane.txt
2012-03-02 18:43:44 +01:00
NeoBrainX
3a9fed0ba2
PixelShaderGen: Fix a bug introduced in revision 9adc119e3c
.
...
D3D11: Fix shader constant mapping.
2012-02-21 12:51:41 +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
NeoBrainX
d068686a7f
Revert revision f7d757b46e
.
2012-02-20 11:51:40 +01:00
Matthew Parlane
fc3eb7c6a7
Fixed a few warnings.
2012-02-09 17:18:46 +13:00
NeoBrainX
eb01a110c9
Implement texture preloading
2012-02-03 21:21:13 +01:00
NeoBrainX
dabb35afce
Prepare texture preloading support
2012-02-03 21:20:34 +01:00
NeoBrainX
1446fb33d5
TextureCacheBase: Replace the efbcopy_state member variable of texture cache entries with a more general "texture type"
2012-01-31 19:52:02 +01:00
NeoBrainX
cc54ee7d94
TextureCache: Move EFB copy cache code from TextureConverter to TextureCache
2012-01-31 19:51:32 +01:00
NeoBrainX
a02df43e6d
TextureConverter (OGL/D3D9): Kill EncodeToRam because it wasn't used anywhere and it basically does the same as EncodeToRamFromTexture anyway
2012-01-31 18:09:35 +01:00
NeoBrainX
3b38295cbd
TextureCacheBase: De-uglify hybrid EFB copies (documentation needs updating though)
...
TextureCacheBase: Fixed dynamic EFB copies being set to normal textures.
2012-01-31 18:09:35 +01:00
NeoBrainX
5239ba88c9
TextureCache: Remove unsafe texture cache
2012-01-31 18:09:35 +01:00
NeoBrainX
c5008fe9de
TextureCache: Renaming some variables
...
OGL: Fix a possible bug at texture dumping
OGL: Add a TODO about a possible bug
2012-01-31 18:09:34 +01:00
NeoBrainX
b33be736cd
D3D9/11: Degrade a PanicAlert related to EFB format changes to an ERROR_LOG
2012-01-06 13:45:51 +01:00
nitsuja
39613a95a8
initialize the uninitialized
2012-01-04 01:36:09 -08:00
nitsuja
3e773f093d
fixed a freeze on emu shutdown in windows build
2011-12-19 15:13:26 -08:00
Maarten ter Huurne
ed1bfdf293
Merge branch 'cmake-osx2'
2011-12-17 16:30:02 +01:00
Maarten ter Huurne
8c3775ee6f
Under OS X, link GL plugin against Cg framework instead of Cg library.
2011-12-05 01:12:09 +01:00
Pierre Bourdon
252093295b
Do not fail with strict drivers when compiling a not SM2.0 shader
...
To enforce SM2.0 compatibility, the OpenGL plugin was made to crash when
compiling a shader which does not fit in the SM2.0a limits. However, on some
combinations of OS/drivers/GPU, our shaders already do not fit in these limits,
causing artificial failures only to try to keep a non existant SM2.0a compat.
Basically, this sucks.
This commit increases the artificial limit to SM3.0. If you're using a GPU
which does not support SM3.0 and Dolphin works properly, this should not cause
any problem at all.
2011-12-03 23:24:10 +01:00
Jordan Woyak
575814895c
Merge branch 'clearscreen-kill-immediate-mode'
2011-12-01 20:16:23 -06:00
Maarten ter Huurne
98981cc724
Fixed EFB cache index computations in OpenGL renderer.
...
The previous computation was very likely to go out of array bounds,
which could result in crashes on EFB access.
Also, the cache size was rounded down instead of up. This is a problem
since EFB_HEIGHT (528) is not a multiple of EFB_CACHE_RECT_SIZE (64).
2011-12-01 02:46:59 +01:00
Jordan Woyak
4fcd6994c6
fix wireframe setting toggling
2011-11-29 22:21:43 -06:00
Jordan Woyak
0dfca1cf2b
remove now unnecessary glPolygonMode from ResetAPIState
2011-11-29 22:02:18 -06:00
Jordan Woyak
88700e817a
make OpenGL ClearScreen use glClear
2011-11-29 21:50:31 -06:00
Pierre Bourdon
1e558aedeb
Added an EFB peek cache to the GL video plugin
...
Most of the games using EFB peeks are suffering from major performance problems
when these peeks are not disabled in the graphics settings. This is an attempt
to fix this in the GL renderer by doing the glReadPixels in bulk: instead of
doing a lot of 1x1 pixel reads, read for 64x64 pixels at once and keep that in
a cache.
Deck menu in Baten Kaitos: 3FPS -> 54FPS
Character creation in Monster Hunter Tri: 7FPS -> 60FPS
2011-10-17 18:30:13 +02:00
Shawn Hoffman
ad508ab8fb
Let's go ahead and throw this in here, should bring support of Intel IGP back in with DX9.... I can't actually test this for an obvious reason, but I figure while Windows is broken anyway, go ahead with it.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7707 8ced0084-cf51-0410-be5f-012b33b47a6e
That should fix the seg faults on IGP chipsets.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7715 8ced0084-cf51-0410-be5f-012b33b47a6e
Compile fix.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7716 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-10-08 15:29:04 -07:00
Jordan Woyak
d3e639a397
fix build issue with intel compiler and fix some unsafe string usages, patch by FilthyMonkey
2011-10-01 21:31:43 -05:00
NeoBrainX
7eb06430ed
Only sync shader caches to disk on stop.
2011-09-29 23:16:42 +02:00
NeoBrainX
2b3b32872d
Fix Windows build.
2011-09-29 22:54:52 +02:00
NeoBrainX
81c614fa07
Clean up various things.
2011-09-29 23:32:39 +02:00
NeoBrainX
08af37509e
More buildfixes..
2011-09-29 23:32:38 +02:00
Glenn Rice
6ccfd85f42
Build fix for the linux libav build.
2011-09-29 23:32:38 +02:00
NeoBrainX
913bc6d15f
D3D11: Disable some redundant shader compilation errors.
2011-09-29 23:32:38 +02:00
NeoBrainX
6d8f641cc9
Fix D3D11 frame dumping.
2011-09-29 23:32:38 +02:00
NeoBrainX
c710ea33f9
Merge some frame dumping code to VideoCommon, fixes a memory leak in D3D9 and OpenGL if emulation is stopped while dumping frames.
...
Breaks D3D11 frame dumping for some weird reason (memory corruption or whatever?).
2011-09-29 23:32:38 +02:00
NeoBrainX
bd4a5b5ef6
Implement frame dumping in D3D11.
...
Fixes issue 4831.
2011-09-29 23:32:38 +02:00
NeoBrainX
5d075ce507
- D3D9: pass the correct API type to ValidatePixelShaderIDs
...
- don't load shader cache from disk in d3d9/11 if shader debugging is enabled (we won't have any info about the source shader code otherwise, etc)
- dump shader source codes on safe UIDs mismatch
Thanks to LordMark and [SS] for reporting those to me ;)
2011-09-10 03:10:28 +02:00
NeoBrainX
5c14a24ce1
Make shader ID validation optional by adding a gfx setting called "EnableShaderDebugging".
...
Setting this to True will enable additional checks if the shader cache misses any relevant register changes.
2011-09-09 21:34:46 +02:00
NeoBrainX
b28348066e
Improve the shader UID debugging stuff and merge it to VideoCommon, effectively enabling it in D3D9 and D3D11 as well.
2011-09-09 00:32:04 +02:00
NeoBrainX
349a3ae91d
Merge remote-tracking branch 'remotes/origin/master' into new-shadercache-uids
2011-09-08 02:14:18 +02:00
NeoBrainX
6c7bda6851
Various fixes and cleanups.
2011-09-08 02:09:44 +02:00
NeoBrainX
3939f9595a
Add runtime checks to make sure we aren't overoptimizing the pixel shader cache.
2011-09-07 21:15:09 +02:00
NeoBrainX
17fcd406fc
Merge some scissor rect related code to VideoCommon.
2011-09-05 22:04:28 +02:00
Shawn Hoffman
b867c21fea
apply to dx9 and dx11 backends as well
2011-09-05 12:19:11 -07:00
NeoBrainX
6845a1596c
Fix various cases in scissor rect emulation.
...
Patch by delroth.
2011-09-05 11:10:23 -07:00
Shawn Hoffman
95517a9741
vs2010: Disable LTCG for realz
2011-09-05 09:43:23 -07:00
Ryan Houdek
5a6a2b2bec
Do clearscreen and swap, probably won't do debug text nonsense since it looks like trash anyway. maybe later.
2011-08-25 05:20:41 -05:00
Ryan Houdek
31fd25bf61
Move on to XFB drawing
2011-08-25 04:41:45 -05:00
Ryan Houdek
d021f9e3b6
Here we go with the texture cache
2011-08-25 04:28:29 -05:00
Ryan Houdek
12a8f590f8
Remove immediate mode from the Texture converter, probably need to redo this for texcache rewrite :/
2011-08-25 04:02:11 -05:00
Ryan
a5a2562e59
Put this hotfix in since some combination of hardware and drivers returns zero here.
2011-08-25 02:58:37 -05:00
Jordan Woyak
e8fe15c3f7
Make titlebar and about dialog fancy for cmake build.
...
Windows needs fixing.
2011-08-21 17:43:05 -05:00
NeoBrainX
0655ee571d
Shader compilation error message modified to contain some helpful information for noobs (includes a reference to the full bad shader dump).
...
Removed the "Hide Shader Errors" option; hide shader errors if panic handlers are disabled now.
Removed superfluous error messages about shader compilations; display only one error message instead.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7688 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-29 22:18:11 +00:00
Glenn Rice
a5a45992ad
Add a new type of message box (CRITICAL style) which can not be disabled. Then use that message box to display shader compilation errors in the OpenGL backend to maintain consistency with the behaviour of the DirectX backends.
...
Also fix the wxMessageAlert called from non-gui threads in the WXGTK build to use the passed caption.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7678 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-15 14:49:34 +00:00
Glenn Rice
a154df1e7c
On linux use the current desktop resolution for the default fullscreen resolution, instead of the hard coded 640x480 resolution.
...
Also if the OpenGL backend throw a panic alert if the RGB to/from YUYV shaders fail to compile instead of an error log. If these shaders fail to compile it should be reported. I am not sure that a panic alert should be thrown in general when any shader fails to compile (as was discussed on IRC).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7677 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-15 02:17:14 +00:00
baby.lueshi
d8fc690838
New "TAS Input" feature for precise joystick inputs. The feature is still a work in progress, but is functional. Currently overwrites any joystick/keyboard analog inputs and does so for all controllers.
...
Renamed OnFrame.cpp/h to a more accurate Movie.cpp/h. Made some small changes that may improve movie synchronization.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7620 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-24 06:50:50 +00:00
NeoBrainX
8244efcc02
Revert r7421 and r7422.
...
Should fix issue 4413.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7592 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-11 19:37:21 +00:00
Rodolfo Osvaldo Bogado
e5210de9d5
just a little cleanup to maintain minimal interfaces
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7591 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-10 19:16:09 +00:00
Sonicadvance1
3fceffd8c0
We need to require at least shader 2.0a now
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7590 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-08 03:09:07 +00:00
Jordan Woyak
450b5c9c33
fix build
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7586 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-05 01:44:07 +00:00
Sonicadvance1
db0c2bca5b
Allows DX9 shaders to be SM2 compatible again at the loss of accuracy. SM3 is recommended. Fixes issue 4546.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7585 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-04 19:56:18 +00:00
NeoBrainX
837375a13d
Last major UI change before release.
...
- Moved display related options in the "Display" tab from the general config to the gfx config, renamed the tab to "Interface"
- Moved Wiimote related options in the "Wii" tab from the general config to the wiimote config
- Moved various other options to more appropriate places ("Set Console as NTSC-J", "Skip GC BIOS"
- Dropped "Window Size" adjustment
- Now displaying a warning if one tries to enable software rendering
- Other minor changes
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7577 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-02 19:32:34 +00:00
NeoBrainX
84906edf61
Fix applying anti-aliasing without having to open the gfx config. Thanks to skid for pointing out the VerifyValidity problem to me ;)
...
Fixes issue 4498.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7574 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-05-31 20:16:59 +00:00
Nolan Check
48b605df71
Fix issue 4509
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7550 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-05-18 02:03:56 +00:00
Nolan Check
8024783502
Don't resize render target to handle out-of-bounds viewports. Instead, adjust the projection matrix.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7538 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-05-12 02:14:45 +00:00
NeoBrainX
e29e317580
OGL: Fix changing MSAA mode during emulation.
...
Fixes issue 4469.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7525 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-05-07 22:00:05 +00:00
Nolan Check
9222a818ae
DX9: Pay attention to the pitch of a locked surface.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7519 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-05-06 23:35:48 +00:00
NeoBrainX
fe2d09576d
Fix "Disable Lighting" in D3D9 and D3D11.
...
Fixes issue 3185.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7498 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-30 17:34:08 +00:00
NeoBrainX
3e384cac7f
Fix EFB format change emulation in D3D11 if MSAA is enabled.
...
Fixes issue 4346.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7496 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-30 14:08:58 +00:00
NeoBrainX
6577a5deb6
Add a partial fix for 4xSSAA in D3D9 (issue 4090).
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7495 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-30 12:58:03 +00:00
NeoBrainX
a779b92a09
Remove configuration profile support.
...
I.e. revert most of the video configuration dialog changes since r7483.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7484 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-25 20:06:45 +00:00
Glenn Rice
73031229f7
Fix a few strings for translation.
...
Fix a minor icon issue in the game properties dialog.
Use a little hack to deal with spaces in file names. Need to find a better way to deal with this.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7470 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-17 21:39:58 +00:00
Nolan Check
9b697ed28f
DX11: I think I've figured out where the game enables texture offsets for lines and points.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7461 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-15 22:34:54 +00:00
Nolan Check
9fc12bcaa2
DX11: Resolve multisampled EFB before encoding.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7460 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-15 22:32:40 +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
NeoBrainX
c4cd8d84e4
Revert r7086.
...
Preferring the slow code until it gets optimized properly...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7435 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-02 11:38:29 +00:00
smelenchuk
7a9a47376f
roll back r7431
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7432 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-01 01:46:18 +00:00
smelenchuk
15c51c37f3
Add a "force no texture filter" option, useful for some 2D games (like Mega Man 10) and people who like their pixelated graphics.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7431 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-01 01:35:07 +00:00
Jordan Woyak
44b4198d17
Fixed issue 4141.(key press beeping) Initializing the video backend in the GUI thread seemed to be the cause for whatever reason. Hopefully other platforms don't hate this change.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7425 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-31 05:36:54 +00:00
Nolan Check
3ef8a57da6
DX11: Fix issue 4345
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7423 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-30 16:01:03 +00:00
Jordan Woyak
306c3570d1
Eliminated a memcpy in DX11's vertex shader disk cache loading. Maybe games will boot faster now, who knows?
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7422 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-30 10:46:27 +00:00
Jordan Woyak
3d5d205c73
I think clean up DX11 code a bit. Used "smart" pointers to avoid need to manually AddRef/Release in many places. Eliminated the D3DBlob class (replaced with just D3D10CreateBlob). Eliminated some Init/Shutdown functions (moved stuff into ctors/dtors). This should not affect behavior at all, only code maintainability.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7421 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-30 07:17:23 +00:00
Nolan Check
40b8db30e3
DX11: Correct line width and point size by taking viewport rect into account. Twilight Princess map looks almost perfect except for the drop shadows around the borders: the lines are too skinny, but the corner points seem to be correct.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7418 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-28 05:42:21 +00:00
Glenn Rice
c99c247ed5
When using the "Start Renderer in Fullscreen" option, really start in fullscreen. In other words this now switches to fullscreen before the renderer is initiated instead of after. This is a partial fix for issue 4316.
...
Also, if the render window size changes while frame dumping, scale the resulting video to prevent clipping on linux. This is a complete fix for issue 4316 on linux. I don't know how to implement this on windows though.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7412 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-25 18:12:40 +00:00
smelenchuk
df9f614b58
Have DX9 plugin also dump frames on every VI as opposed to every new frame (follow-up to r7131 and issue #4064 ).
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7411 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-24 20:06:24 +00:00
Glenn Rice
c39e3c17e1
Fix a few issues with the size of the logger pane.
...
Also some other general clean up issues.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7401 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-23 02:06:40 +00:00
Jordan Woyak
f8620fcd0b
Fixed some memory leaks. Only one was mine ;P
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7392 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-22 07:27:23 +00:00
gnick79
017735b9ff
* GUI Video-Settings changes:
...
- Removed recent ghanges about separate per-game Video Settings
- Added "One Window 3-State Support" (very close to full implementation)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7391 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-21 19:57:31 +00:00
Jordan Woyak
068855bbd6
Moved per-game graphics configuration to the game-list right click menu. It will be too difficult to make the "profiles" drop-down thing work with 3-state vs 2-state checkboxes. The per-game settings now have "undetermined" states, except for the radio buttons(I'll fix that later). It's super hacky right now. Video config (probably all config stuff) could be redone.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7386 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-21 05:46:33 +00:00
Matt Callaghan
8eaed1c105
Partial fix for 3D Vision.
...
It now works in the debug builds, but not in release builds for some reason. I'm not used to big projects like this so it's probably something obvious that I'm missing. Exclusive full screen mode seems to need the fullscreen resolution for the backbuffer when the DX device is created, so I used adapters[adapter].resolutions[f].xres and yres to get that, but in release builds, that gives me the windowed resolution (in debug it give me the fullscreen res, like I believe it's supposed to), which it reallly doesn't like.
It's not a difficult fix probably, but I've been staring at my monitor in confusion for too long now and need to get to bed. If anyone wants to test, you can still enable the 3D Vision option, it just wouldn't be 3D (obviously).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7385 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-21 03:39:28 +00:00
Soren Jorvang
215baff4c8
Simplify the SCons build:
...
With wxWidgets 2.9.2 now in Externals, SCons was the only
external dependency other than Xcode and building just SCons
from Macports caused a fair mount of extra stuff to be built
unnecessarily, so just include a copy of scons-local.
Always build wxWidgets from Externals which allows us to get
rid of the home-grown autoconf machinery in SconsTests.
The main use case for args.cache was the wxconfig option,
which is no longer relevant after the above changes and
caching options has a lot of potential for confusion,
especially since other build systems don't tend to do this,
so we no longer do it now.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7381 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-20 18:35:07 +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
Jordan Woyak
78d9f927e1
Eliminated memory leaks of the save state code and put it in a namespace. It is prettier than before, but it could be better (less global usage). Other minor stuff.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7366 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-17 10:17:45 +00:00
Glenn Rice
cab5fdb44b
Make sure that the video software backend doesn't get stuck in an infinite loop on shutdown.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7364 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-17 01:42:13 +00:00
sl1nk3.s
aabb542d47
Fix the framerate counter of the software graphic backend.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7363 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-16 23:57:13 +00:00
Soren Jorvang
9198e83ae1
Hack Misc.cpp into building on OS X.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7362 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-16 22:58:24 +00:00
sl1nk3.s
571013acd8
Fix the video software backend. (closes issue 4269)
...
Some warning fixes and cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7361 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-16 22:48:17 +00:00
Glenn Rice
bca4f94b47
More work on making dialogs close when escape is pressed, and some general GUI code clean up.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7360 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-16 22:22:21 +00:00
Nolan Check
aa19fa97d9
DX11: Preserve w coordinates of lines and points. Fixes glitches when a line is partially behind the camera.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7357 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-16 03:02:25 +00:00
Jordan Woyak
41c98f982e
A bit of cleanup to Core Init/Stop, Frame, and Main. Cleanup XAudio2 to attempt to fix the crash on stop(didn't help :p). For some reason CFrame::DoStop is called twice.(might be the issue)
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7353 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-15 23:09:12 +00:00
Nolan Check
c83e5ee35b
DX11: Don't apply culling to lines and points. Fixes Metroid Prime beam-charging effects.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7346 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-15 03:51:31 +00:00
Nolan Check
580cd2539c
Yikes, I have no idea how this happened.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7341 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-14 09:48:12 +00:00
Nolan Check
7c536b8f15
DX11: Support thick lines and large points with geometry shaders. Lines still aren't drawn with correct thickness, see Twilight Princess map. But the map corners are drawn with correct shadow "blobs" for the first time!
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7340 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-14 09:38:29 +00:00
Nolan Check
344c4019db
Attempt to fix issue 4234.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7337 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-12 18:13:54 +00:00
Glenn Rice
1b583a0441
Fix things so that those who wish to compile with -std=c++0x can. To active this with the cmake build add CXXFLAGS="-std=c++0x" before cmake on the command line, or export that variable. This enables the experimental features like std::thread, std::mutex, etc., that are provided by g++ instead of using the implementation in dolphin.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7333 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-12 00:01:33 +00:00
Glenn Rice
2a694edf93
Probably should use the IOFile built in mechanism to check if the file is open.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7332 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-11 18:13:08 +00:00
Glenn Rice
e5f7c5c58a
Make sure the frame dumping file is closed when emulation stops as it should be for the non avi dump build.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7331 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-11 18:04:42 +00:00
Soren Jorvang
ccf3158da4
Make the non-HAVE_LIBAV case compile.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7330 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-11 16:38:54 +00:00
Glenn Rice
5706abf4a1
Hack up hack number 7328, just to get things to compile.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7329 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-11 12:56:26 +00:00
Jordan Woyak
59fd1008ca
Wrapped fopen/close/read/write functions inside a simple "IOFile" class. Reading, writing, and error checking became simpler in most cases. It should be near impossible to forget to close a file now that the destructor takes care of it. (I hope this fixes Issue 3635) I have tested the functionality of most things, but it is possible I broke something. :p
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7328 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-11 10:21:46 +00:00
Soren Jorvang
610df4ab78
Fix OS X nowx.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7321 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-08 23:25:37 +00:00
Nolan Check
6e348a2731
DX11: Add real XFB mode support. May not work perfectly yet. I'm working on a set of fairly big VI-related changes. When I'm done, it should improve animation smoothness for all the backends, especially when virtual or real XFB mode is enabled.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7319 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-08 07:39:36 +00:00
Nolan Check
9abf449e7c
DX11: Eliminate most int-to-float conversions and use float math in more places. GPUs are more efficient with float operations. This gives a slight speed-up.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7303 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-05 20:40:17 +00:00
Jordan Woyak
e16e177148
Missed a critical section.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7295 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-05 12:05:58 +00:00
Jordan Woyak
423018f811
Replaced Common::CriticalSection with a std::mutex implementation. 64bit Windows builds now use SRWLocks and ConditionVariables(requires Vista/7, x64 builds will no longer work on Windows XP x64). Tell me if you hate that. Removed Common::EventEx. Common::Event now uses a std::condition_variable impl.(using ConditionVariables on Windows x64, Events on x86, or posix condition variables elsewhere). I experience slight speed improvements with these changes.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7294 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-05 06:11:26 +00:00
sl1nk3.s
e8a1c04abf
Fix a typo in BPFunctions causing a PanicAlert in SW:RS2.
...
Really minor bugfix in DX9.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7285 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-04 23:14:21 +00:00
Soren Jorvang
05719ac81a
Move SConscript files out from the Src subdirectories to be
...
consistent with the other build systems.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7282 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-03 19:44:56 +00:00
Soren Jorvang
540238cf79
Prepare for the release of Xcode 4, which has working LTO
...
with static libraries.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7280 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-03 04:35:03 +00:00
Glenn Rice
3ffdcf1aec
Put the video prepare code back, and use the existence of the g_renderer to determine if video prepare has been run or not.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7274 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-02 15:13:13 +00:00
Glenn Rice
3af93e8cf3
If the DSP LLE can not find the needed ROM files exit the emulator without crashing the application. Also reimplement soren's revision 7195 in a way that works on linux and windows. (This makes it easier to clean up the video backend if the DSP emulator fails to initialize.)
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7271 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-02 05:16:49 +00:00
Nolan Check
74f22a57d1
DX11: Simpler depth-fetch. All DX10+ cards should have enough float precision to make this safe.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7269 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-01 05:32:13 +00:00
Nolan Check
7be1080dff
DX11: Implement the rest of the EFB encode formats, but beware: I don't have any games to test them.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7267 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-01 05:07:23 +00:00
Glenn Rice
a5b471f490
More conversion from char * to std::string.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7266 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-01 03:06:14 +00:00
Glenn Rice
ba54fac9eb
Convert GetUserPath to return a std::string instead of a const char *. This simplifies its usage in most cases.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7265 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-28 20:40:15 +00:00
Nolan Check
e926b28480
DX11: Improve efb-encode shader some more.
...
According to AMD's GPU ShaderAnalyzer, most combinations of shaders have about 1.5x-2x higher peak per-clock throughput after this commit. For those concerned about performance, I do intend to make this at least as fast as the other backends. This is one more step toward that goal.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7262 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-27 20:07:59 +00:00
Nolan Check
54078ef9cc
Improve DX11 efb-encoder shader code generation a little
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7258 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-27 09:33:03 +00:00
Nolan Check
449e79aea5
Fix a brain-fart....
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7256 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-27 01:51:03 +00:00
Shawn Hoffman
47efe0fc82
add new files from r7253 to vs2010 projects.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7254 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-27 00:13:28 +00:00
Nolan Check
f0c5cc76a9
Add EFB encode-to-RAM support in DX11 backend. It could probably be simplified a lot, and not all the possible formats are implemented. I tried to use the dynamic-linking feature of shader model 5, but Microsoft's HLSL compiler is broken. "Dynamic mode" is implemented, but disabled for now.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7253 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-26 23:41:02 +00:00
Glenn Rice
992f8be5b0
If video backend initialization fails, have the emulator die gracefully instead of crashing the application. Also a little clean up of the passage of the video window handle to the backend and back.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7248 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-25 21:14:13 +00:00
Rodolfo Osvaldo Bogado
c40ca6553f
little commit to dx9 add generation mode to RestoreAPIState to avoid possible errors, don't know if this fix anything but now is more correct.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7245 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-25 20:24:48 +00:00
NeoBrainX
7dc3a6cc92
D3D9/11: Fix that "Disable Dest. Alpha Pass" option...
...
Thanks to NaturalViolence for reporting ;)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7244 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-25 18:22:04 +00:00
sl1nk3.s
18b85b9cd5
Just a small accuracy fix for r6819, fixes the pixel line in the volumetric fog effect of Metroid Prime (closes issue 4162)
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7236 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-24 15:04:24 +00:00
Shawn Hoffman
6e4923399e
revert r7212 (express users must modify a single line, instead)
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7220 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-21 15:17:41 +00:00
Shawn Hoffman
62cb8ebe46
Force dolphin to use the windows7.1sdk (the windows7.1sdk installer is silly and refuses to recognize that vs2010 exists).
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7212 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-20 18:08:20 +00:00
Shawn Hoffman
685d3c1f50
windows: fix crash on close
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7209 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-20 02:04:14 +00:00
Soren Jorvang
d2910912a4
XInitThreads() must be the very first Xlib function called or else
...
some X state will have initialized mutexes and some won't, leading
to unpredictable results depending on the feature set compiled into
wxWidgets and so on.
wxGTK starts by calling Xlib functions indirectly through gdk very
early on, so we must hook into wxApp::Initialize().
I believe this should properly fix issue 1540. In case of problems,
please reopen that issue. If you see XLockMutex in a backtrace,
that's a pretty good indication.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7205 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-19 21:53:53 +00:00
Soren Jorvang
febd967907
Back out r7195 pending a closer look at thread safety in the
...
video backends.
This would be considerably easier if there was a way for me to have
fully working video in some sort of VM. If anyone has achieved that,
preferably with Linux but failing that with Windows, I would
appreciate any tips on how to set it up. VideoSoftware used to more
or less work in a VM, but I've never been able to get OpenGL to do
much more than open the window and display OSD messages.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7201 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-19 13:45:13 +00:00
Soren Jorvang
c6c0137df4
Combine the two halves of video backend initialization
...
in Initialize() and Video_Prepare(). Video_Prepare()
then becomes the entry point for associating the current
thread with the rendering context, which is currently
only known to be necessary for OpenGL.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7195 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-19 01:23:56 +00:00