diff options
| author | SND\MaddTheSane_cp <SND\MaddTheSane_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97> | 2012-09-17 01:15:40 +0000 |
|---|---|---|
| committer | SND\MaddTheSane_cp <SND\MaddTheSane_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97> | 2012-09-17 01:15:40 +0000 |
| commit | a4905ffaa0185235cc638098dae277f8abc0a56c (patch) | |
| tree | 03f508b54719c7af768a211e3655aada65577671 /macosx/plugins | |
| parent | 8ddbbfe157a5ed6d52bb07dcbef2e9c5814e80e0 (diff) | |
| download | pcsxr-a4905ffaa0185235cc638098dae277f8abc0a56c.tar.gz | |
Updating projects to build on Xcode 4.4
Added OpenGL shader support to the Mac software renderer.
git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@79892 e17a0e51-4ae3-4d35-97c3-1a29b211df97
Diffstat (limited to 'macosx/plugins')
14 files changed, 1219 insertions, 256 deletions
diff --git a/macosx/plugins/DFCdrom/DFCdrom.xcodeproj/project.pbxproj b/macosx/plugins/DFCdrom/DFCdrom.xcodeproj/project.pbxproj index 070d6d0e..1f8edab9 100644 --- a/macosx/plugins/DFCdrom/DFCdrom.xcodeproj/project.pbxproj +++ b/macosx/plugins/DFCdrom/DFCdrom.xcodeproj/project.pbxproj @@ -172,7 +172,7 @@ 089C1669FE841209C02AAC07 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0420; + LastUpgradeCheck = 0440; }; buildConfigurationList = 7107359E0FDEED75004AD098 /* Build configuration list for PBXProject "DFCdrom" */; compatibilityVersion = "Xcode 3.2"; @@ -271,6 +271,7 @@ 7107359A0FDEED75004AD098 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + COMBINE_HIDPI_IMAGES = YES; COPY_PHASE_STRIP = NO; GCC_DYNAMIC_NO_PIC = NO; GCC_GENERATE_DEBUGGING_SYMBOLS = YES; @@ -295,6 +296,7 @@ 7107359B0FDEED75004AD098 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + COMBINE_HIDPI_IMAGES = YES; COPY_PHASE_STRIP = YES; GCC_DYNAMIC_NO_PIC = NO; GCC_GENERATE_DEBUGGING_SYMBOLS = NO; @@ -330,7 +332,7 @@ ); MACOSX_DEPLOYMENT_TARGET = 10.6; ONLY_ACTIVE_ARCH = YES; - SDKROOT = macosx10.6; + SDKROOT = macosx; STRIP_INSTALLED_PRODUCT = NO; SYMROOT = ../../build; VALID_ARCHS = "i386 x86_64"; @@ -349,7 +351,7 @@ ../../../plugins/dfcdrom, ); MACOSX_DEPLOYMENT_TARGET = 10.6; - SDKROOT = macosx10.6; + SDKROOT = macosx; SYMROOT = ../../build; VALID_ARCHS = "i386 x86_64"; }; diff --git a/macosx/plugins/DFInput/DFInput.xcodeproj/project.pbxproj b/macosx/plugins/DFInput/DFInput.xcodeproj/project.pbxproj index 677e6b41..1485ebc5 100644 --- a/macosx/plugins/DFInput/DFInput.xcodeproj/project.pbxproj +++ b/macosx/plugins/DFInput/DFInput.xcodeproj/project.pbxproj @@ -410,7 +410,7 @@ 089C1669FE841209C02AAC07 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0420; + LastUpgradeCheck = 0440; }; buildConfigurationList = 71155B110FDFA2DE00EC0BC5 /* Build configuration list for PBXProject "DFInput" */; compatibilityVersion = "Xcode 3.2"; @@ -524,6 +524,7 @@ 71155B0D0FDFA2DE00EC0BC5 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + COMBINE_HIDPI_IMAGES = YES; COPY_PHASE_STRIP = NO; GCC_DYNAMIC_NO_PIC = NO; GCC_GENERATE_DEBUGGING_SYMBOLS = YES; @@ -552,6 +553,7 @@ 71155B0E0FDFA2DE00EC0BC5 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + COMBINE_HIDPI_IMAGES = YES; COPY_PHASE_STRIP = YES; GCC_DYNAMIC_NO_PIC = NO; GCC_GENERATE_DEBUGGING_SYMBOLS = NO; @@ -595,7 +597,7 @@ MACOSX_DEPLOYMENT_TARGET = 10.6; ONLY_ACTIVE_ARCH = YES; OTHER_CFLAGS = ""; - SDKROOT = macosx10.6; + SDKROOT = macosx; STRIP_INSTALLED_PRODUCT = NO; SYMROOT = ../../build; VALID_ARCHS = "i386 x86_64"; @@ -619,7 +621,7 @@ ); MACOSX_DEPLOYMENT_TARGET = 10.6; OTHER_CFLAGS = ""; - SDKROOT = macosx10.6; + SDKROOT = macosx; SYMROOT = ../../build; VALID_ARCHS = "i386 x86_64"; }; diff --git a/macosx/plugins/DFNet/DFNet.xcodeproj/project.pbxproj b/macosx/plugins/DFNet/DFNet.xcodeproj/project.pbxproj index c163889c..d5d6b8e3 100755 --- a/macosx/plugins/DFNet/DFNet.xcodeproj/project.pbxproj +++ b/macosx/plugins/DFNet/DFNet.xcodeproj/project.pbxproj @@ -173,7 +173,7 @@ 089C1669FE841209C02AAC07 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0420; + LastUpgradeCheck = 0440; }; buildConfigurationList = 7107359E0FDEED75004AD098 /* Build configuration list for PBXProject "DFNet" */; compatibilityVersion = "Xcode 3.2"; @@ -283,6 +283,7 @@ 7107359A0FDEED75004AD098 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + COMBINE_HIDPI_IMAGES = YES; COPY_PHASE_STRIP = NO; GCC_DYNAMIC_NO_PIC = NO; GCC_GENERATE_DEBUGGING_SYMBOLS = YES; @@ -305,6 +306,7 @@ 7107359B0FDEED75004AD098 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + COMBINE_HIDPI_IMAGES = YES; COPY_PHASE_STRIP = YES; GCC_DYNAMIC_NO_PIC = NO; GCC_GENERATE_DEBUGGING_SYMBOLS = NO; @@ -337,7 +339,7 @@ ); MACOSX_DEPLOYMENT_TARGET = 10.6; ONLY_ACTIVE_ARCH = YES; - SDKROOT = macosx10.6; + SDKROOT = macosx; STRIP_INSTALLED_PRODUCT = NO; VALID_ARCHS = "i386 x86_64"; }; @@ -354,7 +356,7 @@ ../../../plugins/dfnet, ); MACOSX_DEPLOYMENT_TARGET = 10.6; - SDKROOT = macosx10.6; + SDKROOT = macosx; VALID_ARCHS = "i386 x86_64"; }; name = Release; diff --git a/macosx/plugins/DFSound/PeopsSPU.xcodeproj/project.pbxproj b/macosx/plugins/DFSound/PeopsSPU.xcodeproj/project.pbxproj index 2a95f368..671d6e36 100644 --- a/macosx/plugins/DFSound/PeopsSPU.xcodeproj/project.pbxproj +++ b/macosx/plugins/DFSound/PeopsSPU.xcodeproj/project.pbxproj @@ -77,7 +77,7 @@ 5506639914AB9E0300C7C565 /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = English.lproj/NetSfPeopsSpuALPluginMain.xib; sourceTree = "<group>"; }; 5517C065136217DE00706CCF /* externals.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = externals.c; path = ../../../plugins/dfsound/externals.c; sourceTree = SOURCE_ROOT; }; 5599692713AFCCC600B0216B /* openal.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = openal.c; path = ../../../plugins/dfsound/openal.c; sourceTree = SOURCE_ROOT; }; - 5599695E13AFCD2900B0216B /* PeopsAL.psxplugin */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; name = PeopsAL.psxplugin; path = PeopsSpuAL.psxplugin; sourceTree = BUILT_PRODUCTS_DIR; }; + 5599695E13AFCD2900B0216B /* PeopsSpuAL.psxplugin */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = PeopsSpuAL.psxplugin; sourceTree = BUILT_PRODUCTS_DIR; }; 5599696E13AFCE1D00B0216B /* OpenAL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenAL.framework; path = System/Library/Frameworks/OpenAL.framework; sourceTree = SDKROOT; }; 55C8AB0C146DCD0E005ACCCB /* Info-AL.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-AL.plist"; sourceTree = "<group>"; }; 55F36E4B146CA0A900718DE6 /* maccfg.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = maccfg.h; path = macsrc/maccfg.h; sourceTree = "<group>"; }; @@ -146,7 +146,7 @@ 71E4E7A6109DC529003BB7AC /* stdafx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = stdafx.h; path = ../../../plugins/dfsound/stdafx.h; sourceTree = SOURCE_ROOT; }; 71E4E7A7109DC529003BB7AC /* xa.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = xa.c; path = ../../../plugins/dfsound/xa.c; sourceTree = SOURCE_ROOT; }; 71E4E7A8109DC529003BB7AC /* xa.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = xa.h; path = ../../../plugins/dfsound/xa.h; sourceTree = SOURCE_ROOT; }; - 8D576316048677EA00EA77CD /* PeopsSPU.psxplugin */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; name = PeopsSPU.psxplugin; path = PeopsSpuSDL.psxplugin; sourceTree = BUILT_PRODUCTS_DIR; }; + 8D576316048677EA00EA77CD /* PeopsSpuSDL.psxplugin */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = PeopsSpuSDL.psxplugin; sourceTree = BUILT_PRODUCTS_DIR; }; 8D576317048677EA00EA77CD /* Info-SDL.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Info-SDL.plist"; sourceTree = "<group>"; }; A1A2073D13816B1D005EE84C /* externals.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = externals.c; path = ../../../plugins/dfsound/externals.c; sourceTree = SOURCE_ROOT; }; /* End PBXFileReference section */ @@ -251,8 +251,8 @@ 19C28FB6FE9D52B211CA2CBB /* Products */ = { isa = PBXGroup; children = ( - 8D576316048677EA00EA77CD /* PeopsSPU.psxplugin */, - 5599695E13AFCD2900B0216B /* PeopsAL.psxplugin */, + 8D576316048677EA00EA77CD /* PeopsSpuSDL.psxplugin */, + 5599695E13AFCD2900B0216B /* PeopsSpuAL.psxplugin */, ); name = Products; sourceTree = "<group>"; @@ -430,7 +430,7 @@ name = PeopsSpuAL; productInstallPath = "$(HOME)/Library/Bundles"; productName = "PSX Plugin"; - productReference = 5599695E13AFCD2900B0216B /* PeopsAL.psxplugin */; + productReference = 5599695E13AFCD2900B0216B /* PeopsSpuAL.psxplugin */; productType = "com.apple.product-type.bundle"; }; 8D57630D048677EA00EA77CD /* PeopsSpuSDL */ = { @@ -448,7 +448,7 @@ name = PeopsSpuSDL; productInstallPath = "$(HOME)/Library/Bundles"; productName = "PSX Plugin"; - productReference = 8D576316048677EA00EA77CD /* PeopsSPU.psxplugin */; + productReference = 8D576316048677EA00EA77CD /* PeopsSpuSDL.psxplugin */; productType = "com.apple.product-type.bundle"; }; /* End PBXNativeTarget section */ @@ -457,7 +457,7 @@ 089C1669FE841209C02AAC07 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0420; + LastUpgradeCheck = 0440; }; buildConfigurationList = 71155B2B0FDFA2EB00EC0BC5 /* Build configuration list for PBXProject "PeopsSPU" */; compatibilityVersion = "Xcode 3.2"; @@ -625,6 +625,7 @@ 5599695C13AFCD2900B0216B /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + COMBINE_HIDPI_IMAGES = YES; COPY_PHASE_STRIP = NO; GCC_DYNAMIC_NO_PIC = NO; GCC_GENERATE_DEBUGGING_SYMBOLS = YES; @@ -649,6 +650,7 @@ 5599695D13AFCD2900B0216B /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + COMBINE_HIDPI_IMAGES = YES; COPY_PHASE_STRIP = YES; GCC_GENERATE_DEBUGGING_SYMBOLS = NO; GCC_OPTIMIZATION_LEVEL = s; @@ -672,6 +674,7 @@ 71155B270FDFA2EB00EC0BC5 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + COMBINE_HIDPI_IMAGES = YES; COPY_PHASE_STRIP = NO; GCC_DYNAMIC_NO_PIC = NO; GCC_GENERATE_DEBUGGING_SYMBOLS = YES; @@ -698,6 +701,7 @@ 71155B290FDFA2EB00EC0BC5 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + COMBINE_HIDPI_IMAGES = YES; COPY_PHASE_STRIP = YES; GCC_GENERATE_DEBUGGING_SYMBOLS = NO; GCC_OPTIMIZATION_LEVEL = s; @@ -728,7 +732,7 @@ GCC_VERSION = com.apple.compilers.llvm.clang.1_0; MACOSX_DEPLOYMENT_TARGET = 10.6; ONLY_ACTIVE_ARCH = YES; - SDKROOT = macosx10.6; + SDKROOT = macosx; SYMROOT = ../../build; VALID_ARCHS = "i386 x86_64"; }; @@ -740,7 +744,7 @@ ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; GCC_VERSION = com.apple.compilers.llvm.clang.1_0; MACOSX_DEPLOYMENT_TARGET = 10.6; - SDKROOT = macosx10.6; + SDKROOT = macosx; SYMROOT = ../../build; VALID_ARCHS = "i386 x86_64"; }; diff --git a/macosx/plugins/DFXVideo/English.lproj/NetSfPeopsSoftGPUConfig.xib b/macosx/plugins/DFXVideo/English.lproj/NetSfPeopsSoftGPUConfig.xib index 51a38238..0e8ab649 100644 --- a/macosx/plugins/DFXVideo/English.lproj/NetSfPeopsSoftGPUConfig.xib +++ b/macosx/plugins/DFXVideo/English.lproj/NetSfPeopsSoftGPUConfig.xib @@ -2,27 +2,27 @@ <archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00"> <data> <int key="IBDocument.SystemTarget">1060</int> - <string key="IBDocument.SystemVersion">11C74</string> - <string key="IBDocument.InterfaceBuilderVersion">1938</string> - <string key="IBDocument.AppKitVersion">1138.23</string> - <string key="IBDocument.HIToolboxVersion">567.00</string> + <string key="IBDocument.SystemVersion">12B19</string> + <string key="IBDocument.InterfaceBuilderVersion">2549</string> + <string key="IBDocument.AppKitVersion">1187</string> + <string key="IBDocument.HIToolboxVersion">624.00</string> <object class="NSMutableDictionary" key="IBDocument.PluginVersions"> <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string> - <string key="NS.object.0">1938</string> + <string key="NS.object.0">2549</string> </object> <array key="IBDocument.IntegratedClassDependencies"> - <string>NSPopUpButton</string> + <string>NSBox</string> <string>NSButton</string> - <string>NSMenu</string> - <string>NSTextFieldCell</string> <string>NSButtonCell</string> - <string>NSMenuItem</string> - <string>NSBox</string> <string>NSCustomObject</string> + <string>NSMenu</string> + <string>NSMenuItem</string> + <string>NSPopUpButton</string> + <string>NSPopUpButtonCell</string> + <string>NSTextField</string> + <string>NSTextFieldCell</string> <string>NSView</string> <string>NSWindowTemplate</string> - <string>NSTextField</string> - <string>NSPopUpButtonCell</string> </array> <array key="IBDocument.PluginDependencies"> <string>com.apple.InterfaceBuilder.CocoaPlugin</string> @@ -44,7 +44,7 @@ <object class="NSWindowTemplate" id="367816088"> <int key="NSWindowStyleMask">1</int> <int key="NSWindowBacking">2</int> - <string key="NSWindowRect">{{411, 163}, {466, 393}}</string> + <string key="NSWindowRect">{{411, 163}, {466, 492}}</string> <int key="NSWTFlags">1886912512</int> <string key="NSWindowTitle">GPU Configuration</string> <string key="NSWindowClass">NSWindow</string> @@ -60,12 +60,13 @@ <object class="NSButton" id="12107374"> <reference key="NSNextResponder" ref="683836898"/> <int key="NSvFlags">256</int> - <string key="NSFrame">{{208, 12}, {122, 32}}</string> + <string key="NSFrame">{{208, 13}, {122, 32}}</string> <reference key="NSSuperview" ref="683836898"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="4274411"/> <bool key="NSEnabled">YES</bool> <object class="NSButtonCell" key="NSCell" id="318083727"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">134217728</int> <string key="NSContents">Cancel</string> <object class="NSFont" key="NSSupport" id="85522599"> @@ -74,7 +75,7 @@ <int key="NSfFlags">1044</int> </object> <reference key="NSControlView" ref="12107374"/> - <int key="NSButtonFlags">-2038284033</int> + <int key="NSButtonFlags">-2038284288</int> <int key="NSButtonFlags2">1</int> <reference key="NSAlternateImage" ref="85522599"/> <string key="NSAlternateContents"/> @@ -82,21 +83,23 @@ <int key="NSPeriodicDelay">200</int> <int key="NSPeriodicInterval">25</int> </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> </object> <object class="NSButton" id="4274411"> <reference key="NSNextResponder" ref="683836898"/> <int key="NSvFlags">256</int> - <string key="NSFrame">{{330, 12}, {122, 32}}</string> + <string key="NSFrame">{{330, 13}, {122, 32}}</string> <reference key="NSSuperview" ref="683836898"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView"/> <bool key="NSEnabled">YES</bool> <object class="NSButtonCell" key="NSCell" id="1004944998"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">134217728</int> <string key="NSContents">OK</string> <reference key="NSSupport" ref="85522599"/> <reference key="NSControlView" ref="4274411"/> - <int key="NSButtonFlags">-2038284033</int> + <int key="NSButtonFlags">-2038284288</int> <int key="NSButtonFlags2">1</int> <reference key="NSAlternateImage" ref="85522599"/> <string key="NSAlternateContents"/> @@ -104,21 +107,23 @@ <int key="NSPeriodicDelay">200</int> <int key="NSPeriodicInterval">25</int> </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> </object> <object class="NSButton" id="77688835"> <reference key="NSNextResponder" ref="683836898"/> <int key="NSvFlags">256</int> - <string key="NSFrame">{{14, 12}, {122, 32}}</string> + <string key="NSFrame">{{14, 13}, {122, 32}}</string> <reference key="NSSuperview" ref="683836898"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="12107374"/> <bool key="NSEnabled">YES</bool> <object class="NSButtonCell" key="NSCell" id="530507040"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">134217728</int> <string key="NSContents">Reset</string> <reference key="NSSupport" ref="85522599"/> <reference key="NSControlView" ref="77688835"/> - <int key="NSButtonFlags">-2038284033</int> + <int key="NSButtonFlags">-2038284288</int> <int key="NSButtonFlags2">1</int> <reference key="NSAlternateImage" ref="85522599"/> <string key="NSAlternateContents"/> @@ -126,6 +131,7 @@ <int key="NSPeriodicDelay">200</int> <int key="NSPeriodicInterval">25</int> </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> </object> <object class="NSBox" id="863974442"> <reference key="NSNextResponder" ref="683836898"/> @@ -141,10 +147,11 @@ <string key="NSFrame">{{17, 23}, {144, 18}}</string> <reference key="NSSuperview" ref="550029143"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="714935571"/> <int key="NSTag">6</int> <bool key="NSEnabled">YES</bool> <object class="NSButtonCell" key="NSCell" id="48017917"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">131072</int> <string key="NSContents">Use PC FPS calculation</string> <object class="NSFont" key="NSSupport" id="26"> @@ -154,7 +161,7 @@ </object> <reference key="NSControlView" ref="828054736"/> <int key="NSTag">6</int> - <int key="NSButtonFlags">1211912703</int> + <int key="NSButtonFlags">1211912448</int> <int key="NSButtonFlags2">2</int> <object class="NSButtonImageSource" key="NSAlternateImage" id="642079005"> <string key="NSImageName">NSSwitch</string> @@ -164,6 +171,7 @@ <int key="NSPeriodicDelay">200</int> <int key="NSPeriodicInterval">25</int> </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> </object> <object class="NSButton" id="857867473"> <reference key="NSNextResponder" ref="550029143"/> @@ -171,16 +179,17 @@ <string key="NSFrame">{{17, 83}, {135, 18}}</string> <reference key="NSSuperview" ref="550029143"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="1024009464"/> <int key="NSTag">2</int> <bool key="NSEnabled">YES</bool> <object class="NSButtonCell" key="NSCell" id="818004199"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">131072</int> <string key="NSContents">Expand screen width</string> <reference key="NSSupport" ref="26"/> <reference key="NSControlView" ref="857867473"/> <int key="NSTag">2</int> - <int key="NSButtonFlags">1211912703</int> + <int key="NSButtonFlags">1211912448</int> <int key="NSButtonFlags2">2</int> <reference key="NSAlternateImage" ref="642079005"/> <string key="NSAlternateContents"/> @@ -188,6 +197,7 @@ <int key="NSPeriodicDelay">200</int> <int key="NSPeriodicInterval">25</int> </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> </object> <object class="NSButton" id="1024009464"> <reference key="NSNextResponder" ref="550029143"/> @@ -195,16 +205,17 @@ <string key="NSFrame">{{219, 83}, {159, 18}}</string> <reference key="NSSuperview" ref="550029143"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="918426212"/> <int key="NSTag">8</int> <bool key="NSEnabled">YES</bool> <object class="NSButtonCell" key="NSCell" id="114998115"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">131072</int> <string key="NSContents">Use old frame skipping</string> <reference key="NSSupport" ref="26"/> <reference key="NSControlView" ref="1024009464"/> <int key="NSTag">8</int> - <int key="NSButtonFlags">1211912703</int> + <int key="NSButtonFlags">1211912448</int> <int key="NSButtonFlags2">2</int> <reference key="NSAlternateImage" ref="642079005"/> <string key="NSAlternateContents"/> @@ -212,6 +223,7 @@ <int key="NSPeriodicDelay">200</int> <int key="NSPeriodicInterval">25</int> </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> </object> <object class="NSButton" id="98880635"> <reference key="NSNextResponder" ref="550029143"/> @@ -219,16 +231,17 @@ <string key="NSFrame">{{219, 103}, {132, 18}}</string> <reference key="NSSuperview" ref="550029143"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="857867473"/> <int key="NSTag">7</int> <bool key="NSEnabled">YES</bool> <object class="NSButtonCell" key="NSCell" id="487164406"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">131072</int> <string key="NSContents">Lazy screen updates</string> <reference key="NSSupport" ref="26"/> <reference key="NSControlView" ref="98880635"/> <int key="NSTag">7</int> - <int key="NSButtonFlags">1211912703</int> + <int key="NSButtonFlags">1211912448</int> <int key="NSButtonFlags2">2</int> <reference key="NSAlternateImage" ref="642079005"/> <string key="NSAlternateContents"/> @@ -236,6 +249,7 @@ <int key="NSPeriodicDelay">200</int> <int key="NSPeriodicInterval">25</int> </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> </object> <object class="NSButton" id="630354728"> <reference key="NSNextResponder" ref="550029143"/> @@ -243,16 +257,17 @@ <string key="NSFrame">{{17, 43}, {135, 18}}</string> <reference key="NSSuperview" ref="550029143"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="1025975821"/> <int key="NSTag">4</int> <bool key="NSEnabled">YES</bool> <object class="NSButtonCell" key="NSCell" id="459195947"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">131072</int> <string key="NSContents">Disable coord check</string> <reference key="NSSupport" ref="26"/> <reference key="NSControlView" ref="630354728"/> <int key="NSTag">4</int> - <int key="NSButtonFlags">1211912703</int> + <int key="NSButtonFlags">1211912448</int> <int key="NSButtonFlags2">2</int> <reference key="NSAlternateImage" ref="642079005"/> <string key="NSAlternateContents"/> @@ -260,6 +275,7 @@ <int key="NSPeriodicDelay">200</int> <int key="NSPeriodicInterval">25</int> </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> </object> <object class="NSButton" id="918426212"> <reference key="NSNextResponder" ref="550029143"/> @@ -267,16 +283,17 @@ <string key="NSFrame">{{17, 63}, {180, 18}}</string> <reference key="NSSuperview" ref="550029143"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="439147488"/> <int key="NSTag">3</int> <bool key="NSEnabled">YES</bool> <object class="NSButtonCell" key="NSCell" id="998491539"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">131072</int> <string key="NSContents">Ignore black brightness color</string> <reference key="NSSupport" ref="26"/> <reference key="NSControlView" ref="918426212"/> <int key="NSTag">3</int> - <int key="NSButtonFlags">1211912703</int> + <int key="NSButtonFlags">1211912448</int> <int key="NSButtonFlags2">2</int> <reference key="NSAlternateImage" ref="642079005"/> <string key="NSAlternateContents"/> @@ -284,6 +301,7 @@ <int key="NSPeriodicDelay">200</int> <int key="NSPeriodicInterval">25</int> </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> </object> <object class="NSTextField" id="116814744"> <reference key="NSNextResponder" ref="550029143"/> @@ -291,9 +309,10 @@ <string key="NSFrame">{{17, 127}, {362, 28}}</string> <reference key="NSSuperview" ref="550029143"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="287498159"/> <bool key="NSEnabled">YES</bool> <object class="NSTextFieldCell" key="NSCell" id="161898211"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">4325376</int> <string type="base64-UTF8" key="NSContents">T25seSBlbmFibGUgYSBoYWNrIHRvIGZpeCBhIHNwZWNpZmljIHByb2JsZW0gaW4gYSBnYW1lLgpIb2xk IHRoZSBtb3VzZSBvdmVyIGEgY2hlY2tib3ggdG8gZ2V0IG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgaXQu @@ -319,6 +338,7 @@ A</string> </object> </object> </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> </object> <object class="NSButton" id="287498159"> <reference key="NSNextResponder" ref="550029143"/> @@ -326,16 +346,17 @@ A</string> <string key="NSFrame">{{17, 103}, {130, 18}}</string> <reference key="NSSuperview" ref="550029143"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="98880635"/> <int key="NSTag">1</int> <bool key="NSEnabled">YES</bool> <object class="NSButtonCell" key="NSCell" id="367879922"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">131072</int> <string key="NSContents">Odd/even bit hack</string> <reference key="NSSupport" ref="26"/> <reference key="NSControlView" ref="287498159"/> <int key="NSTag">1</int> - <int key="NSButtonFlags">1211912703</int> + <int key="NSButtonFlags">1211912448</int> <int key="NSButtonFlags2">2</int> <reference key="NSAlternateImage" ref="642079005"/> <string key="NSAlternateContents"/> @@ -343,6 +364,7 @@ A</string> <int key="NSPeriodicDelay">200</int> <int key="NSPeriodicInterval">25</int> </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> </object> <object class="NSButton" id="1025975821"> <reference key="NSNextResponder" ref="550029143"/> @@ -350,16 +372,17 @@ A</string> <string key="NSFrame">{{219, 43}, {189, 18}}</string> <reference key="NSSuperview" ref="550029143"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="828054736"/> <int key="NSTag">10</int> <bool key="NSEnabled">YES</bool> <object class="NSButtonCell" key="NSCell" id="154283413"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">131072</int> <string key="NSContents">Draw tex-quads as triangles</string> <reference key="NSSupport" ref="26"/> <reference key="NSControlView" ref="1025975821"/> <int key="NSTag">10</int> - <int key="NSButtonFlags">1211912703</int> + <int key="NSButtonFlags">1211912448</int> <int key="NSButtonFlags2">2</int> <reference key="NSAlternateImage" ref="642079005"/> <string key="NSAlternateContents"/> @@ -367,6 +390,7 @@ A</string> <int key="NSPeriodicDelay">200</int> <int key="NSPeriodicInterval">25</int> </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> </object> <object class="NSButton" id="439147488"> <reference key="NSNextResponder" ref="550029143"/> @@ -374,16 +398,17 @@ A</string> <string key="NSFrame">{{219, 63}, {195, 18}}</string> <reference key="NSSuperview" ref="550029143"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="630354728"/> <int key="NSTag">9</int> <bool key="NSEnabled">YES</bool> <object class="NSButtonCell" key="NSCell" id="89478486"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">131072</int> <string key="NSContents">Repeated flat tex triangles</string> <reference key="NSSupport" ref="26"/> <reference key="NSControlView" ref="439147488"/> <int key="NSTag">9</int> - <int key="NSButtonFlags">1211912703</int> + <int key="NSButtonFlags">1211912448</int> <int key="NSButtonFlags2">2</int> <reference key="NSAlternateImage" ref="642079005"/> <string key="NSAlternateContents"/> @@ -391,6 +416,7 @@ A</string> <int key="NSPeriodicDelay">200</int> <int key="NSPeriodicInterval">25</int> </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> </object> <object class="NSButton" id="714935571"> <reference key="NSNextResponder" ref="550029143"/> @@ -398,16 +424,17 @@ A</string> <string key="NSFrame">{{219, 23}, {189, 18}}</string> <reference key="NSSuperview" ref="550029143"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="318614234"/> <int key="NSTag">11</int> <bool key="NSEnabled">YES</bool> <object class="NSButtonCell" key="NSCell" id="352584485"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">131072</int> <string key="NSContents">Fake 'gpu busy' states</string> <reference key="NSSupport" ref="26"/> <reference key="NSControlView" ref="714935571"/> <int key="NSTag">11</int> - <int key="NSButtonFlags">1211912703</int> + <int key="NSButtonFlags">1211912448</int> <int key="NSButtonFlags2">2</int> <reference key="NSAlternateImage" ref="642079005"/> <string key="NSAlternateContents"/> @@ -415,19 +442,22 @@ A</string> <int key="NSPeriodicDelay">200</int> <int key="NSPeriodicInterval">25</int> </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> </object> </array> <string key="NSFrame">{{2, 2}, {428, 175}}</string> <reference key="NSSuperview" ref="863974442"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="116814744"/> </object> </array> - <string key="NSFrame">{{17, 56}, {432, 192}}</string> + <string key="NSFrame">{{17, 155}, {432, 192}}</string> <reference key="NSSuperview" ref="683836898"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="550029143"/> <string key="NSOffsets">{0, 0}</string> <object class="NSTextFieldCell" key="NSTitleCell"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">0</int> <string key="NSContents">Hacks</string> <reference key="NSSupport" ref="26"/> @@ -465,14 +495,15 @@ A</string> <string key="NSFrame">{{18, 16}, {189, 18}}</string> <reference key="NSSuperview" ref="748477628"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="956302290"/> <bool key="NSEnabled">YES</bool> <object class="NSButtonCell" key="NSCell" id="961583499"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">0</int> <string key="NSContents">Sync to Monitor Refresh</string> <reference key="NSSupport" ref="85522599"/> <reference key="NSControlView" ref="982425799"/> - <int key="NSButtonFlags">1211912703</int> + <int key="NSButtonFlags">1211912448</int> <int key="NSButtonFlags2">2</int> <reference key="NSAlternateImage" ref="642079005"/> <string key="NSAlternateContents"/> @@ -480,6 +511,7 @@ A</string> <int key="NSPeriodicDelay">200</int> <int key="NSPeriodicInterval">25</int> </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> </object> <object class="NSButton" id="229535697"> <reference key="NSNextResponder" ref="748477628"/> @@ -487,14 +519,15 @@ A</string> <string key="NSFrame">{{18, 60}, {147, 18}}</string> <reference key="NSSuperview" ref="748477628"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="1058448386"/> <bool key="NSEnabled">YES</bool> <object class="NSButtonCell" key="NSCell" id="1045777778"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">0</int> <string key="NSContents">Use Frame Skipping</string> <reference key="NSSupport" ref="85522599"/> <reference key="NSControlView" ref="229535697"/> - <int key="NSButtonFlags">1211912703</int> + <int key="NSButtonFlags">1211912448</int> <int key="NSButtonFlags2">2</int> <reference key="NSAlternateImage" ref="642079005"/> <string key="NSAlternateContents"/> @@ -502,6 +535,7 @@ A</string> <int key="NSPeriodicDelay">200</int> <int key="NSPeriodicInterval">25</int> </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> </object> <object class="NSButton" id="1001322100"> <reference key="NSNextResponder" ref="748477628"/> @@ -509,14 +543,15 @@ A</string> <string key="NSFrame">{{18, 82}, {148, 18}}</string> <reference key="NSSuperview" ref="748477628"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="229535697"/> <bool key="NSEnabled">YES</bool> <object class="NSButtonCell" key="NSCell" id="914939078"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">0</int> <string key="NSContents">Display FPS Counter</string> <reference key="NSSupport" ref="85522599"/> <reference key="NSControlView" ref="1001322100"/> - <int key="NSButtonFlags">1211912703</int> + <int key="NSButtonFlags">1211912448</int> <int key="NSButtonFlags2">2</int> <reference key="NSAlternateImage" ref="642079005"/> <string key="NSAlternateContents"/> @@ -524,6 +559,7 @@ A</string> <int key="NSPeriodicDelay">200</int> <int key="NSPeriodicInterval">25</int> </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> </object> <object class="NSButton" id="1058448386"> <reference key="NSNextResponder" ref="748477628"/> @@ -531,14 +567,15 @@ A</string> <string key="NSFrame">{{18, 38}, {125, 18}}</string> <reference key="NSSuperview" ref="748477628"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="982425799"/> <bool key="NSEnabled">YES</bool> <object class="NSButtonCell" key="NSCell" id="462155792"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">0</int> <string key="NSContents">Auto Full Screen</string> <reference key="NSSupport" ref="85522599"/> <reference key="NSControlView" ref="1058448386"/> - <int key="NSButtonFlags">1211912703</int> + <int key="NSButtonFlags">1211912448</int> <int key="NSButtonFlags2">2</int> <reference key="NSAlternateImage" ref="642079005"/> <string key="NSAlternateContents"/> @@ -546,19 +583,22 @@ A</string> <int key="NSPeriodicDelay">200</int> <int key="NSPeriodicInterval">25</int> </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> </object> </array> <string key="NSFrame">{{2, 2}, {207, 118}}</string> <reference key="NSSuperview" ref="883494424"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="1001322100"/> </object> </array> - <string key="NSFrame">{{17, 252}, {211, 135}}</string> + <string key="NSFrame">{{17, 351}, {211, 135}}</string> <reference key="NSSuperview" ref="683836898"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="748477628"/> <string key="NSOffsets">{0, 0}</string> <object class="NSTextFieldCell" key="NSTitleCell"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">0</int> <string key="NSContents">Display Settings</string> <reference key="NSSupport" ref="26"/> @@ -585,12 +625,13 @@ A</string> <object class="NSTextField" id="574316115"> <reference key="NSNextResponder" ref="562355593"/> <int key="NSvFlags">256</int> - <string key="NSFrame">{{15, 81}, {144, 17}}</string> + <string key="NSFrame">{{15, 95}, {144, 17}}</string> <reference key="NSSuperview" ref="562355593"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="851261397"/> <bool key="NSEnabled">YES</bool> <object class="NSTextFieldCell" key="NSCell" id="495746919"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">4194304</int> <string key="NSContents">Dither Graphics:</string> <reference key="NSSupport" ref="85522599"/> @@ -598,20 +639,22 @@ A</string> <reference key="NSBackgroundColor" ref="523712963"/> <reference key="NSTextColor" ref="172448668"/> </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> </object> <object class="NSPopUpButton" id="851261397"> <reference key="NSNextResponder" ref="562355593"/> <int key="NSvFlags">256</int> - <string key="NSFrame">{{15, 49}, {174, 26}}</string> + <string key="NSFrame">{{15, 63}, {174, 26}}</string> <reference key="NSSuperview" ref="562355593"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="48200887"/> <bool key="NSEnabled">YES</bool> <object class="NSPopUpButtonCell" key="NSCell" id="257968269"> - <int key="NSCellFlags">-2076049856</int> + <int key="NSCellFlags">-2076180416</int> <int key="NSCellFlags2">1024</int> <reference key="NSSupport" ref="85522599"/> <reference key="NSControlView" ref="851261397"/> - <int key="NSButtonFlags">109199615</int> + <int key="NSButtonFlags">109199360</int> <int key="NSButtonFlags2">1</int> <object class="NSFont" key="NSAlternateImage"> <string key="NSName">LucidaGrande</string> @@ -681,41 +724,76 @@ A</string> <bool key="NSAltersState">YES</bool> <int key="NSArrowPosition">1</int> </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> </object> <object class="NSButton" id="48200887"> <reference key="NSNextResponder" ref="562355593"/> <int key="NSvFlags">256</int> - <string key="NSFrame">{{16, 17}, {131, 18}}</string> + <string key="NSFrame">{{16, 36}, {131, 18}}</string> <reference key="NSSuperview" ref="562355593"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="863974442"/> <bool key="NSEnabled">YES</bool> <object class="NSButtonCell" key="NSCell" id="271611192"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">0</int> <string key="NSContents">Enable Hacks</string> <reference key="NSSupport" ref="85522599"/> <reference key="NSControlView" ref="48200887"/> - <int key="NSButtonFlags">1211912703</int> + <int key="NSButtonFlags">1211912448</int> + <int key="NSButtonFlags2">2</int> + <reference key="NSAlternateImage" ref="642079005"/> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">200</int> + <int key="NSPeriodicInterval">25</int> + </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> + </object> + <object class="NSButton" id="1070447769"> + <reference key="NSNextResponder" ref="562355593"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{16, 16}, {118, 18}}</string> + <reference key="NSSuperview" ref="562355593"/> + <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="828910870"/> + <string key="NSReuseIdentifierKey">_NS:9</string> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="1021627436"> + <int key="NSCellFlags">67108864</int> + <int key="NSCellFlags2">268435456</int> + <string key="NSContents">Enable Shaders</string> + <reference key="NSSupport" ref="85522599"/> + <string key="NSCellIdentifier">_NS:9</string> + <reference key="NSControlView" ref="1070447769"/> + <int key="NSButtonFlags">1211912448</int> <int key="NSButtonFlags2">2</int> + <object class="NSCustomResource" key="NSNormalImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSSwitch</string> + </object> <reference key="NSAlternateImage" ref="642079005"/> <string key="NSAlternateContents"/> <string key="NSKeyEquivalent"/> <int key="NSPeriodicDelay">200</int> <int key="NSPeriodicInterval">25</int> </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> </object> </array> <string key="NSFrame">{{2, 2}, {206, 118}}</string> <reference key="NSSuperview" ref="956302290"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="574316115"/> </object> </array> - <string key="NSFrame">{{239, 252}, {210, 135}}</string> + <string key="NSFrame">{{239, 351}, {210, 135}}</string> <reference key="NSSuperview" ref="683836898"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="562355593"/> <string key="NSOffsets">{0, 0}</string> <object class="NSTextFieldCell" key="NSTitleCell"> - <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags">67108864</int> <int key="NSCellFlags2">0</int> <string key="NSContents">Rendering</string> <reference key="NSSupport" ref="26"/> @@ -731,12 +809,188 @@ A</string> <int key="NSTitlePosition">2</int> <bool key="NSTransparent">NO</bool> </object> + <object class="NSBox" id="318614234"> + <reference key="NSNextResponder" ref="683836898"/> + <int key="NSvFlags">12</int> + <array class="NSMutableArray" key="NSSubviews"> + <object class="NSView" id="931431086"> + <reference key="NSNextResponder" ref="318614234"/> + <int key="NSvFlags">274</int> + <array class="NSMutableArray" key="NSSubviews"> + <object class="NSButton" id="374928377"> + <reference key="NSNextResponder" ref="931431086"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{333, 40}, {89, 32}}</string> + <reference key="NSSuperview" ref="931431086"/> + <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="929478763"/> + <string key="NSReuseIdentifierKey">_NS:9</string> + <int key="NSTag">1</int> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="579472173"> + <int key="NSCellFlags">67108864</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents">Select...</string> + <reference key="NSSupport" ref="85522599"/> + <string key="NSCellIdentifier">_NS:9</string> + <reference key="NSControlView" ref="374928377"/> + <int key="NSButtonFlags">-2038284288</int> + <int key="NSButtonFlags2">129</int> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">200</int> + <int key="NSPeriodicInterval">25</int> + </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> + </object> + <object class="NSButton" id="285922344"> + <reference key="NSNextResponder" ref="931431086"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{333, 7}, {89, 32}}</string> + <reference key="NSSuperview" ref="931431086"/> + <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="77688835"/> + <string key="NSReuseIdentifierKey">_NS:9</string> + <int key="NSTag">2</int> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="1068900992"> + <int key="NSCellFlags">67108864</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents">Select...</string> + <reference key="NSSupport" ref="85522599"/> + <string key="NSCellIdentifier">_NS:9</string> + <reference key="NSControlView" ref="285922344"/> + <int key="NSButtonFlags">-2038284288</int> + <int key="NSButtonFlags2">129</int> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">200</int> + <int key="NSPeriodicInterval">25</int> + </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> + </object> + <object class="NSTextField" id="1013340557"> + <reference key="NSNextResponder" ref="931431086"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{85, 49}, {249, 17}}</string> + <reference key="NSSuperview" ref="931431086"/> + <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="374928377"/> + <string key="NSReuseIdentifierKey">_NS:1535</string> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="195480730"> + <int key="NSCellFlags">68157504</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">Label</string> + <reference key="NSSupport" ref="85522599"/> + <string key="NSCellIdentifier">_NS:1535</string> + <reference key="NSControlView" ref="1013340557"/> + <reference key="NSBackgroundColor" ref="523712963"/> + <reference key="NSTextColor" ref="172448668"/> + </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> + </object> + <object class="NSTextField" id="145781561"> + <reference key="NSNextResponder" ref="931431086"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{85, 19}, {249, 17}}</string> + <reference key="NSSuperview" ref="931431086"/> + <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="285922344"/> + <string key="NSReuseIdentifierKey">_NS:1535</string> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="469973994"> + <int key="NSCellFlags">68157504</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">Label</string> + <reference key="NSSupport" ref="85522599"/> + <string key="NSCellIdentifier">_NS:1535</string> + <reference key="NSControlView" ref="145781561"/> + <reference key="NSBackgroundColor" ref="523712963"/> + <reference key="NSTextColor" ref="172448668"/> + </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> + </object> + <object class="NSTextField" id="828910870"> + <reference key="NSNextResponder" ref="931431086"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{15, 49}, {50, 17}}</string> + <reference key="NSSuperview" ref="931431086"/> + <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="1013340557"/> + <string key="NSReuseIdentifierKey">_NS:1535</string> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="666204887"> + <int key="NSCellFlags">68157504</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">Vertex:</string> + <reference key="NSSupport" ref="85522599"/> + <string key="NSCellIdentifier">_NS:1535</string> + <reference key="NSControlView" ref="828910870"/> + <reference key="NSBackgroundColor" ref="523712963"/> + <reference key="NSTextColor" ref="172448668"/> + </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> + </object> + <object class="NSTextField" id="929478763"> + <reference key="NSNextResponder" ref="931431086"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{15, 19}, {68, 17}}</string> + <reference key="NSSuperview" ref="931431086"/> + <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="145781561"/> + <string key="NSReuseIdentifierKey">_NS:1535</string> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="810864245"> + <int key="NSCellFlags">68157504</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">Fragment:</string> + <reference key="NSSupport" ref="85522599"/> + <string key="NSCellIdentifier">_NS:1535</string> + <reference key="NSControlView" ref="929478763"/> + <reference key="NSBackgroundColor" ref="523712963"/> + <reference key="NSTextColor" ref="172448668"/> + </object> + <bool key="NSAllowsLogicalLayoutDirection">NO</bool> + </object> + </array> + <string key="NSFrame">{{1, 1}, {430, 78}}</string> + <reference key="NSSuperview" ref="318614234"/> + <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="1070447769"/> + <string key="NSReuseIdentifierKey">_NS:11</string> + </object> + </array> + <string key="NSFrame">{{17, 57}, {432, 94}}</string> + <reference key="NSSuperview" ref="683836898"/> + <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="931431086"/> + <string key="NSReuseIdentifierKey">_NS:9</string> + <string key="NSOffsets">{0, 0}</string> + <object class="NSTextFieldCell" key="NSTitleCell"> + <int key="NSCellFlags">67108864</int> + <int key="NSCellFlags2">0</int> + <string key="NSContents">Shaders</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSBackgroundColor" ref="807301086"/> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MCAwLjgwMDAwMDAxMTkAA</bytes> + </object> + </object> + <reference key="NSContentView" ref="931431086"/> + <int key="NSBorderType">1</int> + <int key="NSBoxType">0</int> + <int key="NSTitlePosition">2</int> + <bool key="NSTransparent">NO</bool> + </object> </array> - <string key="NSFrameSize">{466, 393}</string> + <string key="NSFrameSize">{466, 492}</string> <reference key="NSSuperview"/> <reference key="NSWindow"/> + <reference key="NSNextKeyView" ref="883494424"/> </object> - <string key="NSScreenRect">{{0, 0}, {1024, 746}}</string> + <string key="NSScreenRect">{{0, 0}, {1920, 1058}}</string> <string key="NSMinSize">{283.34100000000001, 129}</string> <string key="NSMaxSize">{10000000000000, 10000000000000}</string> <bool key="NSWindowIsRestorable">YES</bool> @@ -842,6 +1096,70 @@ A</string> </object> <object class="IBConnectionRecord"> <object class="IBOutletConnection" key="connection"> + <string key="label">fragmentShaderViewablePath</string> + <reference key="source" ref="331818130"/> + <reference key="destination" ref="145781561"/> + </object> + <int key="connectionID">198</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">vertexShaderViewablePath</string> + <reference key="source" ref="331818130"/> + <reference key="destination" ref="1013340557"/> + </object> + <int key="connectionID">199</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">fragmentChooser</string> + <reference key="source" ref="331818130"/> + <reference key="destination" ref="285922344"/> + </object> + <int key="connectionID">201</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">vertexChooser</string> + <reference key="source" ref="331818130"/> + <reference key="destination" ref="374928377"/> + </object> + <int key="connectionID">203</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">selectShader:</string> + <reference key="source" ref="331818130"/> + <reference key="destination" ref="285922344"/> + </object> + <int key="connectionID">205</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">shaders</string> + <reference key="source" ref="331818130"/> + <reference key="destination" ref="1070447769"/> + </object> + <int key="connectionID">193</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">toggleShader:</string> + <reference key="source" ref="331818130"/> + <reference key="destination" ref="1070447769"/> + </object> + <int key="connectionID">200</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">shadersView</string> + <reference key="source" ref="331818130"/> + <reference key="destination" ref="318614234"/> + </object> + <int key="connectionID">206</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> <string key="label">delegate</string> <reference key="source" ref="367816088"/> <reference key="destination" ref="331818130"/> @@ -898,12 +1216,13 @@ A</string> <int key="objectID">6</int> <reference key="object" ref="683836898"/> <array class="NSMutableArray" key="children"> - <reference ref="12107374"/> - <reference ref="4274411"/> - <reference ref="77688835"/> <reference ref="863974442"/> <reference ref="883494424"/> <reference ref="956302290"/> + <reference ref="318614234"/> + <reference ref="12107374"/> + <reference ref="4274411"/> + <reference ref="77688835"/> </array> <reference key="parent" ref="367816088"/> </object> @@ -964,9 +1283,10 @@ A</string> <int key="objectID">107</int> <reference key="object" ref="956302290"/> <array class="NSMutableArray" key="children"> + <reference ref="48200887"/> + <reference ref="1070447769"/> <reference ref="574316115"/> <reference ref="851261397"/> - <reference ref="48200887"/> </array> <reference key="parent" ref="683836898"/> </object> @@ -992,84 +1312,6 @@ A</string> <string key="objectName">Application</string> </object> <object class="IBObjectRecord"> - <int key="objectID">75</int> - <reference key="object" ref="828054736"/> - <array class="NSMutableArray" key="children"> - <reference ref="48017917"/> - </array> - <reference key="parent" ref="863974442"/> - </object> - <object class="IBObjectRecord"> - <int key="objectID">163</int> - <reference key="object" ref="48017917"/> - <reference key="parent" ref="828054736"/> - </object> - <object class="IBObjectRecord"> - <int key="objectID">80</int> - <reference key="object" ref="857867473"/> - <array class="NSMutableArray" key="children"> - <reference ref="818004199"/> - </array> - <reference key="parent" ref="863974442"/> - </object> - <object class="IBObjectRecord"> - <int key="objectID">166</int> - <reference key="object" ref="818004199"/> - <reference key="parent" ref="857867473"/> - </object> - <object class="IBObjectRecord"> - <int key="objectID">79</int> - <reference key="object" ref="1024009464"/> - <array class="NSMutableArray" key="children"> - <reference ref="114998115"/> - </array> - <reference key="parent" ref="863974442"/> - </object> - <object class="IBObjectRecord"> - <int key="objectID">165</int> - <reference key="object" ref="114998115"/> - <reference key="parent" ref="1024009464"/> - </object> - <object class="IBObjectRecord"> - <int key="objectID">82</int> - <reference key="object" ref="98880635"/> - <array class="NSMutableArray" key="children"> - <reference ref="487164406"/> - </array> - <reference key="parent" ref="863974442"/> - </object> - <object class="IBObjectRecord"> - <int key="objectID">167</int> - <reference key="object" ref="487164406"/> - <reference key="parent" ref="98880635"/> - </object> - <object class="IBObjectRecord"> - <int key="objectID">78</int> - <reference key="object" ref="630354728"/> - <array class="NSMutableArray" key="children"> - <reference ref="459195947"/> - </array> - <reference key="parent" ref="863974442"/> - </object> - <object class="IBObjectRecord"> - <int key="objectID">164</int> - <reference key="object" ref="459195947"/> - <reference key="parent" ref="630354728"/> - </object> - <object class="IBObjectRecord"> - <int key="objectID">73</int> - <reference key="object" ref="918426212"/> - <array class="NSMutableArray" key="children"> - <reference ref="998491539"/> - </array> - <reference key="parent" ref="863974442"/> - </object> - <object class="IBObjectRecord"> - <int key="objectID">161</int> - <reference key="object" ref="998491539"/> - <reference key="parent" ref="918426212"/> - </object> - <object class="IBObjectRecord"> <int key="objectID">74</int> <reference key="object" ref="116814744"/> <array class="NSMutableArray" key="children"> @@ -1083,58 +1325,6 @@ A</string> <reference key="parent" ref="116814744"/> </object> <object class="IBObjectRecord"> - <int key="objectID">147</int> - <reference key="object" ref="287498159"/> - <array class="NSMutableArray" key="children"> - <reference ref="367879922"/> - </array> - <reference key="parent" ref="863974442"/> - </object> - <object class="IBObjectRecord"> - <int key="objectID">168</int> - <reference key="object" ref="367879922"/> - <reference key="parent" ref="287498159"/> - </object> - <object class="IBObjectRecord"> - <int key="objectID">148</int> - <reference key="object" ref="1025975821"/> - <array class="NSMutableArray" key="children"> - <reference ref="154283413"/> - </array> - <reference key="parent" ref="863974442"/> - </object> - <object class="IBObjectRecord"> - <int key="objectID">169</int> - <reference key="object" ref="154283413"/> - <reference key="parent" ref="1025975821"/> - </object> - <object class="IBObjectRecord"> - <int key="objectID">149</int> - <reference key="object" ref="439147488"/> - <array class="NSMutableArray" key="children"> - <reference ref="89478486"/> - </array> - <reference key="parent" ref="863974442"/> - </object> - <object class="IBObjectRecord"> - <int key="objectID">170</int> - <reference key="object" ref="89478486"/> - <reference key="parent" ref="439147488"/> - </object> - <object class="IBObjectRecord"> - <int key="objectID">150</int> - <reference key="object" ref="714935571"/> - <array class="NSMutableArray" key="children"> - <reference ref="352584485"/> - </array> - <reference key="parent" ref="863974442"/> - </object> - <object class="IBObjectRecord"> - <int key="objectID">171</int> - <reference key="object" ref="352584485"/> - <reference key="parent" ref="714935571"/> - </object> - <object class="IBObjectRecord"> <int key="objectID">93</int> <reference key="object" ref="982425799"/> <array class="NSMutableArray" key="children"> @@ -1253,6 +1443,240 @@ A</string> <reference key="object" ref="271611192"/> <reference key="parent" ref="48200887"/> </object> + <object class="IBObjectRecord"> + <int key="objectID">179</int> + <reference key="object" ref="318614234"/> + <array class="NSMutableArray" key="children"> + <reference ref="374928377"/> + <reference ref="285922344"/> + <reference ref="1013340557"/> + <reference ref="145781561"/> + <reference ref="828910870"/> + <reference ref="929478763"/> + </array> + <reference key="parent" ref="683836898"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">182</int> + <reference key="object" ref="374928377"/> + <array class="NSMutableArray" key="children"> + <reference ref="579472173"/> + </array> + <reference key="parent" ref="318614234"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">183</int> + <reference key="object" ref="579472173"/> + <reference key="parent" ref="374928377"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">184</int> + <reference key="object" ref="285922344"/> + <array class="NSMutableArray" key="children"> + <reference ref="1068900992"/> + </array> + <reference key="parent" ref="318614234"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">185</int> + <reference key="object" ref="1068900992"/> + <reference key="parent" ref="285922344"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">186</int> + <reference key="object" ref="1013340557"/> + <array class="NSMutableArray" key="children"> + <reference ref="195480730"/> + </array> + <reference key="parent" ref="318614234"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">187</int> + <reference key="object" ref="195480730"/> + <reference key="parent" ref="1013340557"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">188</int> + <reference key="object" ref="145781561"/> + <array class="NSMutableArray" key="children"> + <reference ref="469973994"/> + </array> + <reference key="parent" ref="318614234"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">189</int> + <reference key="object" ref="469973994"/> + <reference key="parent" ref="145781561"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">194</int> + <reference key="object" ref="828910870"/> + <array class="NSMutableArray" key="children"> + <reference ref="666204887"/> + </array> + <reference key="parent" ref="318614234"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">195</int> + <reference key="object" ref="666204887"/> + <reference key="parent" ref="828910870"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">196</int> + <reference key="object" ref="929478763"/> + <array class="NSMutableArray" key="children"> + <reference ref="810864245"/> + </array> + <reference key="parent" ref="318614234"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">197</int> + <reference key="object" ref="810864245"/> + <reference key="parent" ref="929478763"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">180</int> + <reference key="object" ref="1070447769"/> + <array class="NSMutableArray" key="children"> + <reference ref="1021627436"/> + </array> + <reference key="parent" ref="956302290"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">181</int> + <reference key="object" ref="1021627436"/> + <reference key="parent" ref="1070447769"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">82</int> + <reference key="object" ref="98880635"/> + <array class="NSMutableArray" key="children"> + <reference ref="487164406"/> + </array> + <reference key="parent" ref="863974442"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">167</int> + <reference key="object" ref="487164406"/> + <reference key="parent" ref="98880635"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">147</int> + <reference key="object" ref="287498159"/> + <array class="NSMutableArray" key="children"> + <reference ref="367879922"/> + </array> + <reference key="parent" ref="863974442"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">168</int> + <reference key="object" ref="367879922"/> + <reference key="parent" ref="287498159"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">79</int> + <reference key="object" ref="1024009464"/> + <array class="NSMutableArray" key="children"> + <reference ref="114998115"/> + </array> + <reference key="parent" ref="863974442"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">165</int> + <reference key="object" ref="114998115"/> + <reference key="parent" ref="1024009464"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">80</int> + <reference key="object" ref="857867473"/> + <array class="NSMutableArray" key="children"> + <reference ref="818004199"/> + </array> + <reference key="parent" ref="863974442"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">166</int> + <reference key="object" ref="818004199"/> + <reference key="parent" ref="857867473"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">149</int> + <reference key="object" ref="439147488"/> + <array class="NSMutableArray" key="children"> + <reference ref="89478486"/> + </array> + <reference key="parent" ref="863974442"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">170</int> + <reference key="object" ref="89478486"/> + <reference key="parent" ref="439147488"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">73</int> + <reference key="object" ref="918426212"/> + <array class="NSMutableArray" key="children"> + <reference ref="998491539"/> + </array> + <reference key="parent" ref="863974442"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">161</int> + <reference key="object" ref="998491539"/> + <reference key="parent" ref="918426212"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">148</int> + <reference key="object" ref="1025975821"/> + <array class="NSMutableArray" key="children"> + <reference ref="154283413"/> + </array> + <reference key="parent" ref="863974442"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">169</int> + <reference key="object" ref="154283413"/> + <reference key="parent" ref="1025975821"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">78</int> + <reference key="object" ref="630354728"/> + <array class="NSMutableArray" key="children"> + <reference ref="459195947"/> + </array> + <reference key="parent" ref="863974442"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">164</int> + <reference key="object" ref="459195947"/> + <reference key="parent" ref="630354728"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">150</int> + <reference key="object" ref="714935571"/> + <array class="NSMutableArray" key="children"> + <reference ref="352584485"/> + </array> + <reference key="parent" ref="863974442"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">171</int> + <reference key="object" ref="352584485"/> + <reference key="parent" ref="714935571"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">75</int> + <reference key="object" ref="828054736"/> + <array class="NSMutableArray" key="children"> + <reference ref="48017917"/> + </array> + <reference key="parent" ref="863974442"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">163</int> + <reference key="object" ref="48017917"/> + <reference key="parent" ref="828054736"/> + </object> </array> </object> <dictionary class="NSMutableDictionary" key="flattenedProperties"> @@ -1349,6 +1773,21 @@ A</string> <string key="176.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string> <string key="177.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string> <string key="178.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="179.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="180.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="181.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="182.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="183.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="184.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="185.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="186.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="187.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="188.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="189.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="194.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="195.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="196.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="197.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string> <string key="5.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string> <string key="6.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string> <string key="7.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string> @@ -1451,13 +1890,116 @@ A</string> <nil key="activeLocalization"/> <dictionary class="NSMutableDictionary" key="localizations"/> <nil key="sourceID"/> - <int key="maxID">178</int> + <int key="maxID">218</int> </object> <object class="IBClassDescriber" key="IBDocument.Classes"> <array class="NSMutableArray" key="referencedPartialClassDescriptions"> <object class="IBPartialClassDescription"> <string key="className">NetSfPeopsSoftGPUPluginConfigController</string> <string key="superclassName">NSWindowController</string> + <dictionary class="NSMutableDictionary" key="actions"> + <string key="cancel:">id</string> + <string key="hackToggle:">id</string> + <string key="ok:">id</string> + <string key="reset:">id</string> + <string key="selectShader:">id</string> + <string key="toggleShader:">id</string> + </dictionary> + <dictionary class="NSMutableDictionary" key="actionInfosByName"> + <object class="IBActionInfo" key="cancel:"> + <string key="name">cancel:</string> + <string key="candidateClassName">id</string> + </object> + <object class="IBActionInfo" key="hackToggle:"> + <string key="name">hackToggle:</string> + <string key="candidateClassName">id</string> + </object> + <object class="IBActionInfo" key="ok:"> + <string key="name">ok:</string> + <string key="candidateClassName">id</string> + </object> + <object class="IBActionInfo" key="reset:"> + <string key="name">reset:</string> + <string key="candidateClassName">id</string> + </object> + <object class="IBActionInfo" key="selectShader:"> + <string key="name">selectShader:</string> + <string key="candidateClassName">id</string> + </object> + <object class="IBActionInfo" key="toggleShader:"> + <string key="name">toggleShader:</string> + <string key="candidateClassName">id</string> + </object> + </dictionary> + <dictionary class="NSMutableDictionary" key="outlets"> + <string key="autoFullScreen">NSControl</string> + <string key="ditherMode">NSPopUpButton</string> + <string key="fpsCounter">NSControl</string> + <string key="fragmentChooser">NSControl</string> + <string key="fragmentShaderViewablePath">NSTextField</string> + <string key="frameSkipping">NSControl</string> + <string key="hackEnable">NSControl</string> + <string key="hacksView">NSView</string> + <string key="shaders">NSControl</string> + <string key="shadersView">NSView</string> + <string key="vSync">NSControl</string> + <string key="vertexChooser">NSControl</string> + <string key="vertexShaderViewablePath">NSTextField</string> + </dictionary> + <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName"> + <object class="IBToOneOutletInfo" key="autoFullScreen"> + <string key="name">autoFullScreen</string> + <string key="candidateClassName">NSControl</string> + </object> + <object class="IBToOneOutletInfo" key="ditherMode"> + <string key="name">ditherMode</string> + <string key="candidateClassName">NSPopUpButton</string> + </object> + <object class="IBToOneOutletInfo" key="fpsCounter"> + <string key="name">fpsCounter</string> + <string key="candidateClassName">NSControl</string> + </object> + <object class="IBToOneOutletInfo" key="fragmentChooser"> + <string key="name">fragmentChooser</string> + <string key="candidateClassName">NSControl</string> + </object> + <object class="IBToOneOutletInfo" key="fragmentShaderViewablePath"> + <string key="name">fragmentShaderViewablePath</string> + <string key="candidateClassName">NSTextField</string> + </object> + <object class="IBToOneOutletInfo" key="frameSkipping"> + <string key="name">frameSkipping</string> + <string key="candidateClassName">NSControl</string> + </object> + <object class="IBToOneOutletInfo" key="hackEnable"> + <string key="name">hackEnable</string> + <string key="candidateClassName">NSControl</string> + </object> + <object class="IBToOneOutletInfo" key="hacksView"> + <string key="name">hacksView</string> + <string key="candidateClassName">NSView</string> + </object> + <object class="IBToOneOutletInfo" key="shaders"> + <string key="name">shaders</string> + <string key="candidateClassName">NSControl</string> + </object> + <object class="IBToOneOutletInfo" key="shadersView"> + <string key="name">shadersView</string> + <string key="candidateClassName">NSView</string> + </object> + <object class="IBToOneOutletInfo" key="vSync"> + <string key="name">vSync</string> + <string key="candidateClassName">NSControl</string> + </object> + <object class="IBToOneOutletInfo" key="vertexChooser"> + <string key="name">vertexChooser</string> + <string key="candidateClassName">NSControl</string> + </object> + <object class="IBToOneOutletInfo" key="vertexShaderViewablePath"> + <string key="name">vertexShaderViewablePath</string> + <string key="candidateClassName">NSTextField</string> + </object> + </dictionary> <object class="IBClassDescriptionSource" key="sourceIdentifier"> <string key="majorKey">IBProjectSource</string> <string key="minorKey">./Classes/NetSfPeopsSoftGPUPluginConfigController.h</string> @@ -1471,15 +2013,12 @@ A</string> <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> <real value="1060" key="NS.object.0"/> </object> - <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults"> - <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> - <real value="1060" key="NS.object.0"/> - </object> <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool> <int key="IBDocument.defaultPropertyAccessControl">3</int> <dictionary class="NSMutableDictionary" key="IBDocument.LastKnownImageSizes"> - <string key="NSMenuCheckmark">{9, 8}</string> - <string key="NSMenuMixedState">{7, 2}</string> + <string key="NSMenuCheckmark">{11, 11}</string> + <string key="NSMenuMixedState">{10, 3}</string> + <string key="NSSwitch">{15, 15}</string> </dictionary> </data> </archive> diff --git a/macosx/plugins/DFXVideo/PeopsSoftGPU.xcodeproj/project.pbxproj b/macosx/plugins/DFXVideo/PeopsSoftGPU.xcodeproj/project.pbxproj index cd7c3444..42bf192a 100644 --- a/macosx/plugins/DFXVideo/PeopsSoftGPU.xcodeproj/project.pbxproj +++ b/macosx/plugins/DFXVideo/PeopsSoftGPU.xcodeproj/project.pbxproj @@ -19,6 +19,8 @@ 2BD2E769077AF53E00657C69 /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = 2BD2E767077AF53E00657C69 /* Credits.rtf */; }; 2BD7C777076E1FAB000F05ED /* GLUT.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2B51949E06B3D2D200744730 /* GLUT.framework */; }; 552E4CAE1474730B00FB231F /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 552E4CB01474730B00FB231F /* Localizable.strings */; }; + 5555E0C41606839300C0A310 /* gpuPeteOGL2.slf in Resources */ = {isa = PBXBuildFile; fileRef = 5555E0C21606839300C0A310 /* gpuPeteOGL2.slf */; }; + 5555E0C51606839300C0A310 /* gpuPeteOGL2.slv in Resources */ = {isa = PBXBuildFile; fileRef = 5555E0C31606839300C0A310 /* gpuPeteOGL2.slv */; }; 71E9EC06109F24E700E98D1D /* fps.c in Sources */ = {isa = PBXBuildFile; fileRef = 71E9EBF4109F24E600E98D1D /* fps.c */; }; 71E9EC08109F24E700E98D1D /* gpu.c in Sources */ = {isa = PBXBuildFile; fileRef = 71E9EBF6109F24E600E98D1D /* gpu.c */; }; 71E9EC0B109F24E700E98D1D /* key.c in Sources */ = {isa = PBXBuildFile; fileRef = 71E9EBF9109F24E600E98D1D /* key.c */; }; @@ -48,6 +50,9 @@ 2BB260A70777462E00F6854C /* PluginConfigController.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = PluginConfigController.m; path = macsrc/PluginConfigController.m; sourceTree = SOURCE_ROOT; }; 2BD2E768077AF53E00657C69 /* English */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = English; path = English.lproj/Credits.rtf; sourceTree = "<group>"; }; 552E4CAF1474730B00FB231F /* English */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/Localizable.strings; sourceTree = "<group>"; }; + 5555E0C21606839300C0A310 /* gpuPeteOGL2.slf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = gpuPeteOGL2.slf; sourceTree = "<group>"; }; + 5555E0C31606839300C0A310 /* gpuPeteOGL2.slv */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = gpuPeteOGL2.slv; sourceTree = "<group>"; }; + 5555E0CA160695BF00C0A310 /* SGPUPreferences.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SGPUPreferences.h; path = macsrc/SGPUPreferences.h; sourceTree = "<group>"; }; 71E9EBF1109F24E600E98D1D /* cfg.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cfg.h; path = ../../../plugins/dfxvideo/cfg.h; sourceTree = SOURCE_ROOT; }; 71E9EBF2109F24E600E98D1D /* draw.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = draw.h; path = ../../../plugins/dfxvideo/draw.h; sourceTree = SOURCE_ROOT; }; 71E9EBF3109F24E600E98D1D /* externals.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = externals.h; path = ../../../plugins/dfxvideo/externals.h; sourceTree = SOURCE_ROOT; }; @@ -123,6 +128,7 @@ 2BAF4FCA0632967A00DB9A16 /* PluginGLView.m */, 2B3E5D64062B2CC1001D796E /* drawgl.m */, 2B57868106BE7B3700BBA288 /* ExtendedKeys.h */, + 5555E0CA160695BF00C0A310 /* SGPUPreferences.h */, ); name = macsrc; sourceTree = "<group>"; @@ -130,6 +136,8 @@ 2BD2E818077AFB9F00657C69 /* Resources */ = { isa = PBXGroup; children = ( + 5555E0C21606839300C0A310 /* gpuPeteOGL2.slf */, + 5555E0C31606839300C0A310 /* gpuPeteOGL2.slv */, 28586CC714651E9B0082B8EC /* NetSfPeopsSoftGPUConfig.xib */, 28586CCA14651EAB0082B8EC /* NetSfPeopsSoftGPUInterface.xib */, 2BD2E767077AF53E00657C69 /* Credits.rtf */, @@ -190,7 +198,7 @@ 2B3E5A03062AAC1A001D796E /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0420; + LastUpgradeCheck = 0440; }; buildConfigurationList = 717084310FDFD328004F3EB4 /* Build configuration list for PBXProject "PeopsSoftGPU" */; compatibilityVersion = "Xcode 3.2"; @@ -222,6 +230,8 @@ 28586CC914651E9B0082B8EC /* NetSfPeopsSoftGPUConfig.xib in Resources */, 28586CCB14651EAB0082B8EC /* NetSfPeopsSoftGPUInterface.xib in Resources */, 552E4CAE1474730B00FB231F /* Localizable.strings in Resources */, + 5555E0C41606839300C0A310 /* gpuPeteOGL2.slf in Resources */, + 5555E0C51606839300C0A310 /* gpuPeteOGL2.slv in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -288,6 +298,7 @@ 7170842D0FDFD328004F3EB4 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + COMBINE_HIDPI_IMAGES = YES; COPY_PHASE_STRIP = NO; GCC_DYNAMIC_NO_PIC = NO; GCC_GENERATE_DEBUGGING_SYMBOLS = YES; @@ -321,6 +332,7 @@ 7170842E0FDFD328004F3EB4 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + COMBINE_HIDPI_IMAGES = YES; COPY_PHASE_STRIP = YES; GCC_DYNAMIC_NO_PIC = NO; GCC_GENERATE_DEBUGGING_SYMBOLS = NO; @@ -362,7 +374,7 @@ ); MACOSX_DEPLOYMENT_TARGET = 10.6; ONLY_ACTIVE_ARCH = YES; - SDKROOT = macosx10.6; + SDKROOT = macosx; SYMROOT = ../../build; VALID_ARCHS = "i386 x86_64"; }; @@ -378,7 +390,7 @@ ../../../libpcsxcore, ); MACOSX_DEPLOYMENT_TARGET = 10.6; - SDKROOT = macosx10.6; + SDKROOT = macosx; SYMROOT = ../../build; VALID_ARCHS = "i386 x86_64"; }; diff --git a/macosx/plugins/DFXVideo/gpuPeteOGL2.slf b/macosx/plugins/DFXVideo/gpuPeteOGL2.slf new file mode 100755 index 00000000..08e77b18 --- /dev/null +++ b/macosx/plugins/DFXVideo/gpuPeteOGL2.slf @@ -0,0 +1,35 @@ +// ColoredStorybook shader
+// by guest(r)
+// License: GNU-GPL
+
+uniform sampler2D OGL2Texture;
+uniform sampler2D OGL2TMU1;
+
+void main()
+{
+ vec3 paper = texture2D(OGL2TMU1, gl_TexCoord[6].zw).xyz;
+ vec3 c00 = texture2D(OGL2Texture, gl_TexCoord[5].xy).xyz;
+ vec3 c10 = texture2D(OGL2Texture, gl_TexCoord[1].xy).xyz;
+ vec3 c20 = texture2D(OGL2Texture, gl_TexCoord[2].zw).xyz;
+ vec3 c01 = texture2D(OGL2Texture, gl_TexCoord[3].xy).xyz;
+ vec3 c11 = texture2D(OGL2Texture, gl_TexCoord[0].xy).xyz;
+ vec3 c21 = texture2D(OGL2Texture, gl_TexCoord[4].xy).xyz;
+ vec3 c02 = texture2D(OGL2Texture, gl_TexCoord[1].zw).xyz;
+ vec3 c12 = texture2D(OGL2Texture, gl_TexCoord[2].xy).xyz;
+ vec3 c22 = texture2D(OGL2Texture, gl_TexCoord[6].xy).xyz;
+ vec3 dt = vec3(1.0,1.0,1.0);
+
+ c11 = 0.25*(c11+0.5*(c10+c01+c12+c21)+0.25*(c02+c20+c00+c22));
+
+ float d1=dot(abs(c00-c22),dt);
+ float d2=dot(abs(c20-c02),dt);
+ float hl=dot(abs(c01-c21),dt);
+ float vl=dot(abs(c10-c12),dt);
+
+ float d = 0.60*(d1+d2+hl+vl)/(dot(c11,dt)+0.5);
+
+ d = 0.5*pow(d,0.5) + d;
+ c11 = (1.0-0.6*d)*c11;
+
+ gl_FragColor.xyz = mix(paper, c11, pow(max(min(d,1.1)-0.1,0.0),0.5));
+}
diff --git a/macosx/plugins/DFXVideo/gpuPeteOGL2.slv b/macosx/plugins/DFXVideo/gpuPeteOGL2.slv new file mode 100755 index 00000000..639eb41c --- /dev/null +++ b/macosx/plugins/DFXVideo/gpuPeteOGL2.slv @@ -0,0 +1,26 @@ +// by guest(r) - guest.r@gmail.com
+// license: GNU-GPL
+
+uniform vec4 OGL2Param;
+uniform vec4 OGL2Size;
+
+void main()
+{
+float x = (OGL2Size.x/2048.0)*OGL2Param.x;
+float y = (OGL2Size.y/1024.0)*OGL2Param.y;
+vec2 dg1 = vec2( x,y);
+vec2 dg2 = vec2(-x,y);
+vec2 dx = vec2(x,0.0);
+vec2 dy = vec2(0.0,y);
+gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;
+gl_TexCoord[0] = gl_MultiTexCoord0;
+gl_TexCoord[6].zw= gl_MultiTexCoord1.xy;
+gl_TexCoord[1].xy = gl_TexCoord[0].xy - dy;
+gl_TexCoord[2].xy = gl_TexCoord[0].xy + dy;
+gl_TexCoord[3].xy = gl_TexCoord[0].xy - dx;
+gl_TexCoord[4].xy = gl_TexCoord[0].xy + dx;
+gl_TexCoord[5].xy = gl_TexCoord[0].xy - dg1;
+gl_TexCoord[6].xy = gl_TexCoord[0].xy + dg1;
+gl_TexCoord[1].zw = gl_TexCoord[0].xy - dg2;
+gl_TexCoord[2].zw = gl_TexCoord[0].xy + dg2;
+}
diff --git a/macosx/plugins/DFXVideo/macsrc/PluginConfigController.h b/macosx/plugins/DFXVideo/macsrc/PluginConfigController.h index 0e734411..ec9c0203 100644 --- a/macosx/plugins/DFXVideo/macsrc/PluginConfigController.h +++ b/macosx/plugins/DFXVideo/macsrc/PluginConfigController.h @@ -4,7 +4,7 @@ #import <Cocoa/Cocoa.h> -@interface PluginConfigController : NSWindowController +@interface NetSfPeopsSoftGPUPluginConfigController : NSWindowController { IBOutlet NSControl *autoFullScreen; IBOutlet NSPopUpButton *ditherMode; @@ -13,6 +13,15 @@ IBOutlet NSControl *hackEnable; IBOutlet NSView *hacksView; IBOutlet NSControl *vSync; + IBOutlet NSControl *shaders; + IBOutlet NSTextField *vertexShaderViewablePath; + IBOutlet NSTextField *fragmentShaderViewablePath; + IBOutlet NSControl *vertexChooser; + IBOutlet NSControl *fragmentChooser; + IBOutlet NSView *shadersView; + + NSURL *vertexPath; + NSURL *fragmentPath; NSMutableDictionary *keyValues; } @@ -20,6 +29,8 @@ - (IBAction)ok:(id)sender; - (IBAction)reset:(id)sender; - (IBAction)hackToggle:(id)sender; +- (IBAction)toggleShader:(id)sender; +- (IBAction)selectShader:(id)sender; - (void)loadValues; diff --git a/macosx/plugins/DFXVideo/macsrc/PluginConfigController.m b/macosx/plugins/DFXVideo/macsrc/PluginConfigController.m index c765ce5d..b22167ca 100644 --- a/macosx/plugins/DFXVideo/macsrc/PluginConfigController.m +++ b/macosx/plugins/DFXVideo/macsrc/PluginConfigController.m @@ -3,6 +3,7 @@ #include "cfg.h" #include "menu.h" #include "externals.h" +#include "SGPUPreferences.h" #ifdef ENABLE_NLS #include <libintl.h> @@ -89,9 +90,32 @@ void SoftDlgProc() [window makeKeyAndOrderFront:nil]; } +BOOL isShaderEnabled() +{ + NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; + NSDictionary *keyValues = [defaults dictionaryForKey:PrefsKey]; + return [[keyValues objectForKey:@"UseShader"] boolValue]; +} + +NSURL *PSXVertexShader() +{ + NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; + NSDictionary *keyValues = [defaults dictionaryForKey:PrefsKey]; + return [keyValues objectForKey:@"VertexShader"]; +} + +NSURL *PSXFragmentShader() +{ + NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; + NSDictionary *keyValues = [defaults dictionaryForKey:PrefsKey]; + return [keyValues objectForKey:@"FragmentShader"]; +} + + void ReadConfig(void) { NSDictionary *keyValues; + NSBundle *selfBundle = [NSBundle bundleWithIdentifier:APP_ID]; NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; [defaults registerDefaults:[NSDictionary dictionaryWithObjectsAndKeys: [NSMutableDictionary dictionaryWithObjectsAndKeys: @@ -103,6 +127,9 @@ void ReadConfig(void) [NSNumber numberWithBool:NO], @"Enable Hacks", [NSNumber numberWithInt:1], @"Dither Mode", [NSNumber numberWithLong:0], @"Hacks", + [[selfBundle URLForResource:@"gpuPeteOGL2" withExtension:@"slv"] fileReferenceURL], @"VertexShader", + [[selfBundle URLForResource:@"gpuPeteOGL2" withExtension:@"slf"] fileReferenceURL], @"FragmentShader", + [NSNumber numberWithBool:NO], @"UseShader", nil], PrefsKey, nil]]; @@ -143,7 +170,7 @@ void ReadConfig(void) BuildDispMenu(0); } -@implementation PluginConfigController +@implementation NetSfPeopsSoftGPUPluginConfigController - (IBAction)cancel:(id)sender { @@ -161,20 +188,22 @@ void ReadConfig(void) //[writeDic setObject:[NSNumber numberWithInt:[frameLimit intValue]] forKey:@"Frame Limit"]; [writeDic setObject:[NSNumber numberWithInt:[vSync intValue]] forKey:@"VSync"]; [writeDic setObject:[NSNumber numberWithInt:[hackEnable intValue]] forKey:@"Enable Hacks"]; + [writeDic setObject:[NSNumber numberWithInt:[shaders intValue]] forKey:@"UseShader"]; [writeDic setObject:[NSNumber numberWithInt:[ditherMode indexOfSelectedItem]] forKey:@"Dither Mode"]; unsigned long hackValues = 0; - int i; NSArray *views = [hacksView subviews]; - for (i=0; i<[views count]; i++) { - NSView *control = [views objectAtIndex:i]; + for (NSView *control in views) { if ([control isKindOfClass:[NSButton class]]) { hackValues |= [(NSControl *)control intValue] << ([control tag] - 1); } } - [writeDic setObject:[NSNumber numberWithLong:hackValues] forKey:@"Hacks"]; + [writeDic setObject:[NSNumber numberWithUnsignedLong:hackValues] forKey:@"Hacks"]; + + [writeDic setObject:[vertexPath fileReferenceURL] forKey:@"VertexShader"]; + [writeDic setObject:[fragmentPath fileReferenceURL] forKey:@"FragmentShader"]; // write to defaults [defaults setObject:writeDic forKey:PrefsKey]; @@ -196,17 +225,49 @@ void ReadConfig(void) - (IBAction)hackToggle:(id)sender { BOOL enable = [sender intValue] ? YES : NO; - int i; NSArray *views = [hacksView subviews]; - for (i=0; i<[views count]; i++) { - NSView *control = [views objectAtIndex:i]; + for (NSView *control in views) { if ([control isKindOfClass:[NSButton class]]) { [(NSControl *)control setEnabled:enable]; } } } +- (IBAction)toggleShader:(id)sender { + BOOL enable = [sender intValue] ? YES : NO; + NSArray *views = [shadersView subviews]; + + for (NSView *control in views) { + [(NSControl *)control setEnabled:enable]; + } +} + +- (IBAction)selectShader:(id)sender { + NSOpenPanel *openPanel = [[NSOpenPanel openPanel] retain]; + [openPanel setAllowsMultipleSelection:NO]; + [openPanel setCanChooseDirectories:NO]; + [openPanel setCanChooseFiles:YES]; + if ([openPanel runModal] == NSFileHandlingPanelOKButton) + { + if ([sender tag] == 1) { + [vertexPath release]; + vertexPath = [[openPanel URL] copy]; + [vertexShaderViewablePath setTitleWithMnemonic:[vertexPath path]]; + + } else { + [fragmentPath release]; + fragmentPath = [[openPanel URL] copy]; + [fragmentShaderViewablePath setTitleWithMnemonic:[fragmentPath path]]; + + } + } + + + + [openPanel release]; +} + - (void)loadValues { NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; @@ -225,12 +286,14 @@ void ReadConfig(void) [ditherMode selectItemAtIndex:[[keyValues objectForKey:@"Dither Mode"] intValue]]; + vertexPath = [[keyValues objectForKey:@"VertexShader"] copy]; + fragmentPath = [[keyValues objectForKey:@"FragmentShader"] copy]; + [vertexShaderViewablePath setTitleWithMnemonic:[vertexPath path]]; + [fragmentShaderViewablePath setTitleWithMnemonic:[fragmentPath path]]; unsigned long hackValues = [[keyValues objectForKey:@"Hacks"] longValue]; - int i; NSArray *views = [hacksView subviews]; - for (i=0; i<[views count]; i++) { - NSView *control = [views objectAtIndex:i]; + for (NSView *control in views) { if ([control isKindOfClass:[NSButton class]]) { [(NSControl *)control setIntValue:(hackValues >> ([control tag] - 1)) & 1]; } @@ -241,7 +304,17 @@ void ReadConfig(void) - (void)awakeFromNib { + //I don't know why we need to do this... hacksView = [[hacksView subviews] objectAtIndex:0]; + shadersView = [[shadersView subviews] objectAtIndex:0]; +} + +- (void)dealloc +{ + [vertexPath release]; + [fragmentPath release]; + + [super dealloc]; } @end diff --git a/macosx/plugins/DFXVideo/macsrc/PluginGLView.h b/macosx/plugins/DFXVideo/macsrc/PluginGLView.h index fea3b89a..fe2e5f78 100644 --- a/macosx/plugins/DFXVideo/macsrc/PluginGLView.h +++ b/macosx/plugins/DFXVideo/macsrc/PluginGLView.h @@ -29,7 +29,12 @@ GLubyte *image_base; GLubyte *image[IMAGE_COUNT]; + GLboolean useShader; + float shaderQuality; GLint buffers; + GLuint vertexShader; + GLuint fragmentShader; + GLuint program; //GLint frame_rate; GLenum texture_hint; @@ -59,5 +64,8 @@ - (void)swapBuffer; - (void)clearBuffer:(BOOL)display; - (void)loadTextures: (GLboolean)first; +- (GLuint)loadShader:(GLenum)type location:(NSURL*)filename; +- (char*)loadSource:(NSURL *)filename; +void printProgramInfoLog(GLuint obj); @end diff --git a/macosx/plugins/DFXVideo/macsrc/PluginGLView.m b/macosx/plugins/DFXVideo/macsrc/PluginGLView.m index 6046fe79..2c79436b 100644 --- a/macosx/plugins/DFXVideo/macsrc/PluginGLView.m +++ b/macosx/plugins/DFXVideo/macsrc/PluginGLView.m @@ -20,8 +20,8 @@ #import <OpenGL/glext.h> #import <OpenGL/glu.h> #import <GLUT/glut.h> -#import <Carbon/Carbon.h> #import "PluginGLView.h" +#import "SGPUPreferences.h" #include "externals.h" #undef BOOL #include "gpu.h" @@ -141,7 +141,8 @@ void BlitScreen16NS(unsigned char * surf,long x,long y) texture_range = gluCheckExtension ((const unsigned char *)"GL_APPLE_texture_range", strExt) ? GL_TRUE : GL_FALSE; texture_hint = GL_STORAGE_SHARED_APPLE ; client_storage = gluCheckExtension ((const unsigned char *)"GL_APPLE_client_storage", strExt) ? GL_TRUE : GL_FALSE; - rect_texture = gluCheckExtension((const unsigned char *)"GL_EXT_texture_rectangle", strExt) ? GL_TRUE : GL_FALSE; + //rect_texture = gluCheckExtension((const unsigned char *)"GL_EXT_texture_rectangle", strExt) ? GL_TRUE : GL_FALSE; + rect_texture = GL_FALSE; // Setup some basic OpenGL stuff glPixelStorei(GL_UNPACK_ALIGNMENT, 1); @@ -149,7 +150,27 @@ void BlitScreen16NS(unsigned char * surf,long x,long y) glColor4f(1.0f, 1.0f, 1.0f, 1.0f); glClearColor(0.0f, 0.0f, 0.0f, 1.0f); glClear(GL_COLOR_BUFFER_BIT); - + + // Loads the shaders + + if(isShaderEnabled()){ + // --- Params --- + shaderQuality = 4.0; + //vertexShader = LoadShader(GL_VERTEX_SHADER,"/Users/you/shader/gpuPeteOGL2.slv"); + vertexShader = [self loadShader:GL_VERTEX_SHADER location:PSXVertexShader()]; + //fragmentShader = LoadShader(GL_FRAGMENT_SHADER,"/Users/you/shader/gpuPeteOGL2.slf"); + fragmentShader = [self loadShader:GL_FRAGMENT_SHADER location:PSXFragmentShader()]; + + //--- shader loading --- + program = glCreateProgram(); + glAttachShader(program, vertexShader); + glAttachShader(program, fragmentShader); + glLinkProgram(program); + glUseProgram(program); + } + + + [NSOpenGLContext clearCurrentContext]; [glLock unlock]; @@ -292,19 +313,36 @@ void BlitScreen16NS(unsigned char * surf,long x,long y) - (void)renderScreen { int bufferIndex = whichImage; - + if (1/*[glLock tryLock]*/) { // Make this context current [[self openGLContext] makeCurrentContext]; + + // Loads the shaders + //shader=LoadShader(GL_VERTEX_SHADER,"/Users/alexandremathieu/vertex.c"); + //program=glCreateProgram(); + //glAttachShader(program, shader); + //glLinkProgram(program); + //if(program == 0){ + // printf("Program invalide bourdel\n"); + //} + if (PSXDisplay.Disabled) { glClear(GL_COLOR_BUFFER_BIT); } else { // Bind, update and draw new image - if(rect_texture) + if(rect_texture && isShaderEnabled() == NO) // cant go in there if we use shaders { + //printf("Texture Rectangle\n"); + //glActiveTexture(bufferIndex+1); + glActiveTexture(GL_TEXTURE0); glBindTexture(GL_TEXTURE_RECTANGLE_EXT, bufferIndex+1); - + + + glTexSubImage2D(GL_TEXTURE_RECTANGLE_EXT, 0, 0, 0, image_width, image_height, GL_BGRA, image_type, image[bufferIndex]); + + glBegin(GL_QUADS); glTexCoord2f(0.0f, 0.0f); glVertex2f(-1.0f, 1.0f); @@ -321,9 +359,45 @@ void BlitScreen16NS(unsigned char * surf,long x,long y) } else { + NSRect rect = [[[self openGLContext] view] bounds]; + //printf("Texture 2D normale de taille : %d, %d sur un ecran : %f x %f \n",image_width,image_height,rect.size.width,rect.size.height); + //glActiveTexture(whichImage+1); glBindTexture(GL_TEXTURE_2D, whichImage+1); glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, image_width2, image_height2, GL_BGRA, image_type, image[bufferIndex]); + + + if(isShaderEnabled()){ + glUseProgram(program); + + int loc=glGetUniformLocation(program, "OGL2Texture"); + glUniform1i(loc,0); + int loc2=glGetUniformLocation(program, "OGL2Param"); + float param[4]; + param[2]=shaderQuality; + param[0]=param[2]/image_width; + param[1]=param[2]/image_height; + //param[2]=2.0; + param[3]=0.0; + int loc3=glGetUniformLocation(program, "OGL2Size"); + float size[4]; + //NSRect rect = [[[self openGLContext] view] bounds]; + size[0]=image_width; + size[1]=image_height; + size[2]=rect.size.width; + size[3]=rect.size.height; + int loc4=glGetUniformLocation(program, "OGL2InvSize"); + float invSize[4]; + invSize[0]=1.0/size[0]; + invSize[1]=1.0/size[1]; + invSize[2]=1.0/size[2]; + invSize[3]=1.0/size[3]; + //invSize[4]=1.0/size[4]; //Did we goof here? + glUniform4fv(loc2,1,param); + glUniform4fv(loc3,1,size); + glUniform4fv(loc4,1,invSize); + } + glBegin(GL_QUADS); glTexCoord2f(0.0f, 0.0f); glVertex2f(-1.0f, 1.0f); @@ -351,8 +425,9 @@ void BlitScreen16NS(unsigned char * surf,long x,long y) else { szDebugText[0]=0; - - strncat(szDispBuf, szMenuBuf, 63 - strlen(szDispBuf)); + if (szMenuBuf) { + strncat(szDispBuf, szMenuBuf, 63 - strlen(szDispBuf)); + } } NSRect rect = [[[self openGLContext] view] bounds]; @@ -381,6 +456,8 @@ void BlitScreen16NS(unsigned char * surf,long x,long y) glPopMatrix(); } + //printProgramInfoLog(program); + //printf("\n\n\n"); [[self openGLContext] flushBuffer]; [NSOpenGLContext clearCurrentContext]; //[glLock unlock]; @@ -390,7 +467,7 @@ void BlitScreen16NS(unsigned char * surf,long x,long y) - (void)loadTextures:(GLboolean)first { GLint i; - + printf("Loading texture\n"); //[glLock lock]; [[self openGLContext] makeCurrentContext]; @@ -464,9 +541,11 @@ void BlitScreen16NS(unsigned char * surf,long x,long y) } glDisable(GL_TEXTURE_2D); + glActiveTexture(GL_TEXTURE0); glEnable(GL_TEXTURE_RECTANGLE_EXT); glBindTexture(GL_TEXTURE_RECTANGLE_EXT, i+1); - + + glTexParameteri(GL_TEXTURE_RECTANGLE_EXT, GL_TEXTURE_STORAGE_HINT_APPLE , texture_hint); glPixelStorei(GL_UNPACK_CLIENT_STORAGE_APPLE, client_storage); glTexParameteri(GL_TEXTURE_RECTANGLE_EXT, GL_TEXTURE_MIN_FILTER, GL_LINEAR); @@ -504,7 +583,7 @@ void BlitScreen16NS(unsigned char * surf,long x,long y) //if(texture_range) glTextureRangeAPPLE(GL_TEXTURE_2D, IMAGE_COUNT * image_width2 * image_height2 * (image_depth >> 3), image_base); //else glTextureRangeAPPLE(GL_TEXTURE_2D, 0, NULL); - + glTexParameteri(GL_TEXTURE_RECTANGLE_EXT, GL_TEXTURE_STORAGE_HINT_APPLE , texture_hint); glPixelStorei(GL_UNPACK_CLIENT_STORAGE_APPLE, client_storage); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); @@ -581,7 +660,7 @@ void BlitScreen16NS(unsigned char * surf,long x,long y) GLuint lu2 = *((GLuint *)pD+1); GLuint lu3 = *((GLuint *)pD+2); GLuint *dst = ((GLuint *)((surf)+(column*lPitch)+(row<<2))); -#ifdef __BIG_ENDIAN__ +#ifdef __POWERPC__ *(dst)= (((lu1>>24)&0xff)<<16)|(((lu1>>16)&0xff)<<8)|(((lu1>>8)&0xff)); *(dst+1)= @@ -688,4 +767,154 @@ void BlitScreen16NS(unsigned char * surf,long x,long y) lastTime = time; }*/ +- (GLuint)loadShader:(GLenum)type location:(NSURL*)filename +{ + GLuint myShader = 0; + GLsizei logsize = 0; + GLint compile_status = GL_TRUE; + char *log = NULL; + char *src = NULL; + + /* creation d'un shader de sommet */ + myShader = glCreateShader(type); + if(myShader == 0) + { + fprintf(stderr, "impossible de creer le shader\n"); + return 0; + } + + /* chargement du code source */ + src = [self loadSource:filename]; + if(src == NULL) + { + /* theoriquement, la fonction LoadSource a deja affiche un message + d'erreur, nous nous contenterons de supprimer notre shader + et de retourner 0 */ + + glDeleteShader(myShader); + return 0; + } + + /* assignation du code source */ + glShaderSource(myShader, 1, (const GLchar**)&src, NULL); + + /* compilation du shader */ + glCompileShader(myShader); + + /* liberation de la memoire du code source */ + free(src); + src = NULL; + + /* verification du succes de la compilation */ + glGetShaderiv(myShader, GL_COMPILE_STATUS, &compile_status); + if(compile_status != GL_TRUE) + { + /* erreur a la compilation recuperation du log d'erreur */ + + /* on recupere la taille du message d'erreur */ + glGetShaderiv(myShader, GL_INFO_LOG_LENGTH, &logsize); + + /* on alloue un espace memoire dans lequel OpenGL ecrira le message */ + log = malloc(logsize + 1); + if(log == NULL) + { + fprintf(stderr, "impossible d'allouer de la memoire !\n"); + return 0; + } + /* initialisation du contenu */ + memset(log, '\0', logsize + 1); + + glGetShaderInfoLog(myShader, logsize, &logsize, log); + fprintf(stderr, "impossible de compiler le shader '%s' :\n%s", + [[filename path] UTF8String], log); + + /* ne pas oublier de liberer la memoire et notre shader */ + free(log); + glDeleteShader(myShader); + + return 0; + } + + return myShader; +} + +- (char*)loadSource:(NSURL *)filename +{ + /*char *src = NULL; + FILE *fp = NULL; + long size; + long i; + + + // Open the file + fp = fopen(filename, "r"); + // Check if its OK + if(fp == NULL) + { + fprintf(stderr, "Impossible to open the file '%s'\n", filename); + return NULL; + } + + // Get the file size + fseek(fp, 0, SEEK_END); + size = ftell(fp); + + // Go back to the beginning + rewind(fp); + + // Allocate memory + src = malloc(size+1); // +1 for '\0' + if(src == NULL) + { + fclose(fp); + fprintf(stderr, "Memory allocation error!\n"); + return NULL; + } + + // The the file + for(i=0; i<size; i++) + src[i] = fgetc(fp); + + // Put the last char as '\0' + src[size] = '\0'; + + fclose(fp); + + return src;*/ + //NSURL *actualFile = [filename filePathURL]; + //Since we're passing Cocoa NSURLs, let's use Cocoa's methods + NSNumber *filesizeAsNS = nil; + long long filesize = 0; + [filename getResourceValue:&filesizeAsNS forKey:NSURLFileSizeKey error:nil]; + if (filesizeAsNS == nil) { + return NULL; + } + filesize = [filesizeAsNS longLongValue]; + if (filesize == 0) { + return NULL; + } + NSMutableData *shaderData = [NSMutableData dataWithContentsOfURL:filename]; + [shaderData appendBytes:"\0" length:1]; + char *shaderText = malloc(filesize + 1); + memcpy(shaderText, [shaderData bytes], filesize + 1); + return shaderText; +} + +void printProgramInfoLog(GLuint obj) +{ + int infologLength = 0; + int charsWritten = 0; + char *infoLog; + + glGetProgramiv(obj, GL_INFO_LOG_LENGTH, &infologLength); + + if (infologLength > 0) + { + infoLog = (char *)malloc(infologLength); + glGetProgramInfoLog(obj, infologLength, &charsWritten, infoLog); + printf("%s\n",infoLog); + free(infoLog); + } +} + @end diff --git a/macosx/plugins/DFXVideo/macsrc/SGPUPreferences.h b/macosx/plugins/DFXVideo/macsrc/SGPUPreferences.h new file mode 100644 index 00000000..a4cb1054 --- /dev/null +++ b/macosx/plugins/DFXVideo/macsrc/SGPUPreferences.h @@ -0,0 +1,18 @@ +// +// SGPUPreferences.h +// PeopsSoftGPU +// +// Created by C.W. Betts on 9/16/12. +// +// + +#ifndef PeopsSoftGPU_SGPUPreferences_h +#define PeopsSoftGPU_SGPUPreferences_h + +#import <Cocoa/Cocoa.h> + +BOOL isShaderEnabled(); +NSURL *PSXFragmentShader(); +NSURL *PSXVertexShader(); + +#endif diff --git a/macosx/plugins/PeopsXgl/PeopsXGL.xcodeproj/project.pbxproj b/macosx/plugins/PeopsXgl/PeopsXGL.xcodeproj/project.pbxproj index 037ea76d..5357a69b 100644 --- a/macosx/plugins/PeopsXgl/PeopsXGL.xcodeproj/project.pbxproj +++ b/macosx/plugins/PeopsXgl/PeopsXGL.xcodeproj/project.pbxproj @@ -200,7 +200,7 @@ 2B3E5A03062AAC1A001D796E /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0420; + LastUpgradeCheck = 0440; }; buildConfigurationList = 717084310FDFD328004F3EB4 /* Build configuration list for PBXProject "PeopsXGL" */; compatibilityVersion = "Xcode 3.2"; @@ -301,6 +301,7 @@ 7170842D0FDFD328004F3EB4 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + COMBINE_HIDPI_IMAGES = YES; COPY_PHASE_STRIP = NO; GCC_DYNAMIC_NO_PIC = NO; GCC_GENERATE_DEBUGGING_SYMBOLS = YES; @@ -334,6 +335,7 @@ 7170842E0FDFD328004F3EB4 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + COMBINE_HIDPI_IMAGES = YES; COPY_PHASE_STRIP = YES; GCC_DYNAMIC_NO_PIC = NO; GCC_GENERATE_DEBUGGING_SYMBOLS = NO; @@ -375,7 +377,7 @@ ); MACOSX_DEPLOYMENT_TARGET = 10.6; ONLY_ACTIVE_ARCH = YES; - SDKROOT = macosx10.6; + SDKROOT = macosx; SYMROOT = ../../build; VALID_ARCHS = "i386 x86_64"; WARNING_CFLAGS = "-Wall"; @@ -398,7 +400,7 @@ ); MACOSX_DEPLOYMENT_TARGET = 10.6; OTHER_CFLAGS = "-fomit-frame-pointer"; - SDKROOT = macosx10.6; + SDKROOT = macosx; SYMROOT = ../../build; VALID_ARCHS = "i386 x86_64"; WARNING_CFLAGS = "-Wall"; |
