From Eric Wing, XCode project files.
This commit is contained in:
BIN
Xcode/XcodeTemplates/OSG Application/English.lproj/InfoPlist.strings
Executable file
BIN
Xcode/XcodeTemplates/OSG Application/English.lproj/InfoPlist.strings
Executable file
Binary file not shown.
4
Xcode/XcodeTemplates/OSG Application/English.lproj/main.nib/classes.nib
generated
Executable file
4
Xcode/XcodeTemplates/OSG Application/English.lproj/main.nib/classes.nib
generated
Executable file
@@ -0,0 +1,4 @@
|
||||
{
|
||||
IBClasses = ();
|
||||
IBVersion = 1;
|
||||
}
|
||||
19
Xcode/XcodeTemplates/OSG Application/English.lproj/main.nib/info.nib
generated
Executable file
19
Xcode/XcodeTemplates/OSG Application/English.lproj/main.nib/info.nib
generated
Executable file
@@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>IBFramework Version</key>
|
||||
<string>345.0</string>
|
||||
<key>IBOldestOS</key>
|
||||
<integer>3</integer>
|
||||
<key>IBOpenObjects</key>
|
||||
<array>
|
||||
<integer>29</integer>
|
||||
<integer>166</integer>
|
||||
</array>
|
||||
<key>IBSystem Version</key>
|
||||
<string>7B44</string>
|
||||
<key>targetFramework</key>
|
||||
<string>IBCarbonFramework</string>
|
||||
</dict>
|
||||
</plist>
|
||||
271
Xcode/XcodeTemplates/OSG Application/English.lproj/main.nib/objects.xib
Executable file
271
Xcode/XcodeTemplates/OSG Application/English.lproj/main.nib/objects.xib
Executable file
@@ -0,0 +1,271 @@
|
||||
<?xml version="1.0" standalone="yes"?>
|
||||
<object class="NSIBObjectData">
|
||||
<string name="targetFramework">IBCarbonFramework</string>
|
||||
<object name="rootObject" class="NSCustomObject" id="1">
|
||||
<string name="customClass">NSApplication</string>
|
||||
</object>
|
||||
<array count="38" name="allObjects">
|
||||
<object class="IBCarbonMenu" id="29">
|
||||
<string name="title">main</string>
|
||||
<array count="4" name="items">
|
||||
<object class="IBCarbonMenuItem" id="185">
|
||||
<string name="title">Foo</string>
|
||||
<object name="submenu" class="IBCarbonMenu" id="184">
|
||||
<string name="title">Foo</string>
|
||||
<array count="1" name="items">
|
||||
<object class="IBCarbonMenuItem" id="187">
|
||||
<string name="title">About Foo</string>
|
||||
<int name="keyEquivalentModifier">0</int>
|
||||
<ostype name="command">abou</ostype>
|
||||
</object>
|
||||
</array>
|
||||
<string name="name">_NSAppleMenu</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="127">
|
||||
<string name="title">File</string>
|
||||
<object name="submenu" class="IBCarbonMenu" id="131">
|
||||
<string name="title">File</string>
|
||||
<array count="10" name="items">
|
||||
<object class="IBCarbonMenuItem" id="139">
|
||||
<string name="title">New</string>
|
||||
<string name="keyEquivalent">n</string>
|
||||
<ostype name="command">new </ostype>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="134">
|
||||
<string name="title">Open…</string>
|
||||
<string name="keyEquivalent">o</string>
|
||||
<ostype name="command">open</ostype>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="133">
|
||||
<boolean name="separator">TRUE</boolean>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="130">
|
||||
<string name="title">Close</string>
|
||||
<string name="keyEquivalent">w</string>
|
||||
<ostype name="command">clos</ostype>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="138">
|
||||
<string name="title">Save</string>
|
||||
<string name="keyEquivalent">s</string>
|
||||
<ostype name="command">save</ostype>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="137">
|
||||
<string name="title">Save As…</string>
|
||||
<string name="keyEquivalent">S</string>
|
||||
<ostype name="command">svas</ostype>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="132">
|
||||
<string name="title">Revert</string>
|
||||
<string name="keyEquivalent">r</string>
|
||||
<ostype name="command">rvrt</ostype>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="128">
|
||||
<boolean name="separator">TRUE</boolean>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="135">
|
||||
<string name="title">Page Setup…</string>
|
||||
<string name="keyEquivalent">P</string>
|
||||
<ostype name="command">page</ostype>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="136">
|
||||
<string name="title">Print…</string>
|
||||
<string name="keyEquivalent">p</string>
|
||||
<ostype name="command">prnt</ostype>
|
||||
</object>
|
||||
</array>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="152">
|
||||
<string name="title">Edit</string>
|
||||
<object name="submenu" class="IBCarbonMenu" id="147">
|
||||
<string name="title">Edit</string>
|
||||
<array count="10" name="items">
|
||||
<object class="IBCarbonMenuItem" id="141">
|
||||
<string name="title">Undo</string>
|
||||
<string name="keyEquivalent">z</string>
|
||||
<ostype name="command">undo</ostype>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="146">
|
||||
<string name="title">Redo</string>
|
||||
<string name="keyEquivalent">Z</string>
|
||||
<ostype name="command">redo</ostype>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="142">
|
||||
<boolean name="separator">TRUE</boolean>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="143">
|
||||
<string name="title">Cut</string>
|
||||
<string name="keyEquivalent">x</string>
|
||||
<ostype name="command">cut </ostype>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="149">
|
||||
<string name="title">Copy</string>
|
||||
<string name="keyEquivalent">c</string>
|
||||
<ostype name="command">copy</ostype>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="144">
|
||||
<string name="title">Paste</string>
|
||||
<string name="keyEquivalent">v</string>
|
||||
<ostype name="command">past</ostype>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="151">
|
||||
<string name="title">Delete</string>
|
||||
<ostype name="command">clea</ostype>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="148">
|
||||
<string name="title">Select All</string>
|
||||
<string name="keyEquivalent">a</string>
|
||||
<ostype name="command">sall</ostype>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="199">
|
||||
<boolean name="separator">TRUE</boolean>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="198">
|
||||
<string name="title">Special Characters…</string>
|
||||
<ostype name="command">chrp</ostype>
|
||||
</object>
|
||||
</array>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="192">
|
||||
<string name="title">Window</string>
|
||||
<object name="submenu" class="IBCarbonMenu" id="195">
|
||||
<string name="title">Window</string>
|
||||
<array count="6" name="items">
|
||||
<object class="IBCarbonMenuItem" id="197">
|
||||
<string name="title">Zoom Window</string>
|
||||
<ostype name="command">zoom</ostype>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="190">
|
||||
<boolean name="dynamic">TRUE</boolean>
|
||||
<string name="title">Minimize Window</string>
|
||||
<string name="keyEquivalent">m</string>
|
||||
<ostype name="command">mini</ostype>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="191">
|
||||
<boolean name="dynamic">TRUE</boolean>
|
||||
<string name="title">Minimize All Windows</string>
|
||||
<string name="keyEquivalent">m</string>
|
||||
<int name="keyEquivalentModifier">1572864</int>
|
||||
<ostype name="command">mina</ostype>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="194">
|
||||
<boolean name="separator">TRUE</boolean>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="196">
|
||||
<boolean name="dynamic">TRUE</boolean>
|
||||
<string name="title">Bring All to Front</string>
|
||||
<ostype name="command">bfrt</ostype>
|
||||
</object>
|
||||
<object class="IBCarbonMenuItem" id="193">
|
||||
<boolean name="dynamic">TRUE</boolean>
|
||||
<string name="title">Arrange in Front</string>
|
||||
<int name="keyEquivalentModifier">1572864</int>
|
||||
<ostype name="command">frnt</ostype>
|
||||
</object>
|
||||
</array>
|
||||
<string name="name">_NSWindowsMenu</string>
|
||||
</object>
|
||||
</object>
|
||||
</array>
|
||||
<string name="name">_NSMainMenu</string>
|
||||
</object>
|
||||
<reference idRef="127"/>
|
||||
<reference idRef="128"/>
|
||||
<reference idRef="130"/>
|
||||
<reference idRef="131"/>
|
||||
<reference idRef="132"/>
|
||||
<reference idRef="133"/>
|
||||
<reference idRef="134"/>
|
||||
<reference idRef="135"/>
|
||||
<reference idRef="136"/>
|
||||
<reference idRef="137"/>
|
||||
<reference idRef="138"/>
|
||||
<reference idRef="139"/>
|
||||
<reference idRef="141"/>
|
||||
<reference idRef="142"/>
|
||||
<reference idRef="143"/>
|
||||
<reference idRef="144"/>
|
||||
<reference idRef="146"/>
|
||||
<reference idRef="147"/>
|
||||
<reference idRef="148"/>
|
||||
<reference idRef="149"/>
|
||||
<reference idRef="151"/>
|
||||
<reference idRef="152"/>
|
||||
<object class="IBCarbonWindow" id="166">
|
||||
<string name="windowRect">204 300 564 780 </string>
|
||||
<string name="title">Window</string>
|
||||
<object name="rootControl" class="IBCarbonRootControl" id="167">
|
||||
<string name="bounds">0 0 360 480 </string>
|
||||
<string name="viewFrame">0 0 480 360 </string>
|
||||
</object>
|
||||
<boolean name="receiveUpdates">FALSE</boolean>
|
||||
<boolean name="liveResize">TRUE</boolean>
|
||||
<boolean name="compositing">TRUE</boolean>
|
||||
</object>
|
||||
<reference idRef="167"/>
|
||||
<reference idRef="184"/>
|
||||
<reference idRef="185"/>
|
||||
<reference idRef="187"/>
|
||||
<reference idRef="190"/>
|
||||
<reference idRef="191"/>
|
||||
<reference idRef="192"/>
|
||||
<reference idRef="193"/>
|
||||
<reference idRef="194"/>
|
||||
<reference idRef="195"/>
|
||||
<reference idRef="196"/>
|
||||
<reference idRef="197"/>
|
||||
<reference idRef="198"/>
|
||||
<reference idRef="199"/>
|
||||
</array>
|
||||
<array count="38" name="allParents">
|
||||
<reference idRef="1"/>
|
||||
<reference idRef="29"/>
|
||||
<reference idRef="131"/>
|
||||
<reference idRef="131"/>
|
||||
<reference idRef="127"/>
|
||||
<reference idRef="131"/>
|
||||
<reference idRef="131"/>
|
||||
<reference idRef="131"/>
|
||||
<reference idRef="131"/>
|
||||
<reference idRef="131"/>
|
||||
<reference idRef="131"/>
|
||||
<reference idRef="131"/>
|
||||
<reference idRef="131"/>
|
||||
<reference idRef="147"/>
|
||||
<reference idRef="147"/>
|
||||
<reference idRef="147"/>
|
||||
<reference idRef="147"/>
|
||||
<reference idRef="147"/>
|
||||
<reference idRef="152"/>
|
||||
<reference idRef="147"/>
|
||||
<reference idRef="147"/>
|
||||
<reference idRef="147"/>
|
||||
<reference idRef="29"/>
|
||||
<reference idRef="1"/>
|
||||
<reference idRef="166"/>
|
||||
<reference idRef="185"/>
|
||||
<reference idRef="29"/>
|
||||
<reference idRef="184"/>
|
||||
<reference idRef="195"/>
|
||||
<reference idRef="195"/>
|
||||
<reference idRef="29"/>
|
||||
<reference idRef="195"/>
|
||||
<reference idRef="195"/>
|
||||
<reference idRef="192"/>
|
||||
<reference idRef="195"/>
|
||||
<reference idRef="195"/>
|
||||
<reference idRef="147"/>
|
||||
<reference idRef="147"/>
|
||||
</array>
|
||||
<dictionary count="3" name="nameTable">
|
||||
<string>Files Owner</string>
|
||||
<reference idRef="1"/>
|
||||
<string>MainWindow</string>
|
||||
<reference idRef="166"/>
|
||||
<string>MenuBar</string>
|
||||
<reference idRef="29"/>
|
||||
</dictionary>
|
||||
<unsigned_int name="nextObjectID">200</unsigned_int>
|
||||
</object>
|
||||
24
Xcode/XcodeTemplates/OSG Application/Info.plist
Normal file
24
Xcode/XcodeTemplates/OSG Application/Info.plist
Normal file
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>«PROJECTNAMEASXML»</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.apple.myOSGApp</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<key>CSResourcesFileMapped</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
13
Xcode/XcodeTemplates/OSG Application/OSGApp.pbproj/TemplateInfo.plist
Executable file
13
Xcode/XcodeTemplates/OSG Application/OSGApp.pbproj/TemplateInfo.plist
Executable file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
FilesToRename = {
|
||||
"osgApp_Prefix.pch" = "<22>PROJECTNAME<4D>_Prefix.pch";
|
||||
};
|
||||
FilesToMacroExpand = (
|
||||
"<22>PROJECTNAME<4D>_Prefix.pch",
|
||||
"main.c",
|
||||
"Info.plist",
|
||||
"English.lproj/InfoPlist.strings",
|
||||
"English.lproj/main.nib/objects.xib",
|
||||
);
|
||||
Description = "This project builds a OSG application.";
|
||||
}
|
||||
571
Xcode/XcodeTemplates/OSG Application/OSGApp.pbproj/project.pbxproj
Executable file
571
Xcode/XcodeTemplates/OSG Application/OSGApp.pbproj/project.pbxproj
Executable file
@@ -0,0 +1,571 @@
|
||||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 39;
|
||||
objects = {
|
||||
02345980000FD03B11CA0E72 = {
|
||||
children = (
|
||||
1870340FFE93FCAF11CA0CD7,
|
||||
);
|
||||
isa = PBXVariantGroup;
|
||||
name = main.nib;
|
||||
refType = 4;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
//020
|
||||
//021
|
||||
//022
|
||||
//023
|
||||
//024
|
||||
//080
|
||||
//081
|
||||
//082
|
||||
//083
|
||||
//084
|
||||
0867D6AAFE840B52C02AAC07 = {
|
||||
children = (
|
||||
0867D6ABFE840B52C02AAC07,
|
||||
);
|
||||
isa = PBXVariantGroup;
|
||||
name = InfoPlist.strings;
|
||||
refType = 4;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
0867D6ABFE840B52C02AAC07 = {
|
||||
fileEncoding = 10;
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = text.plist.strings;
|
||||
name = English;
|
||||
path = English.lproj/InfoPlist.strings;
|
||||
refType = 4;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
//080
|
||||
//081
|
||||
//082
|
||||
//083
|
||||
//084
|
||||
//180
|
||||
//181
|
||||
//182
|
||||
//183
|
||||
//184
|
||||
1870340FFE93FCAF11CA0CD7 = {
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = wrapper.nib;
|
||||
name = English;
|
||||
path = English.lproj/main.nib;
|
||||
refType = 4;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
//180
|
||||
//181
|
||||
//182
|
||||
//183
|
||||
//184
|
||||
//190
|
||||
//191
|
||||
//192
|
||||
//193
|
||||
//194
|
||||
195DF8CFFE9D517E11CA2CBB = {
|
||||
children = (
|
||||
8D0C4E970486CD37000505A6,
|
||||
);
|
||||
isa = PBXGroup;
|
||||
name = Products;
|
||||
refType = 4;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
//190
|
||||
//191
|
||||
//192
|
||||
//193
|
||||
//194
|
||||
//1F0
|
||||
//1F1
|
||||
//1F2
|
||||
//1F3
|
||||
//1F4
|
||||
1F49F6FE07AD6F150058BE5D = {
|
||||
children = (
|
||||
1FF61109082F118D004EB1E4,
|
||||
1FF6110A082F118D004EB1E4,
|
||||
1F9A4950082D65C40032CDE9,
|
||||
1F49F70407AD6F2D0058BE5D,
|
||||
1F49F70507AD6F2D0058BE5D,
|
||||
1F49F70607AD6F2D0058BE5D,
|
||||
1F49F70707AD6F2D0058BE5D,
|
||||
1FD8F431088C87A500B4318C,
|
||||
1F49F70807AD6F2D0058BE5D,
|
||||
1F49F70907AD6F2D0058BE5D,
|
||||
1F49F70A07AD6F2D0058BE5D,
|
||||
1F49F70B07AD6F2D0058BE5D,
|
||||
1F49F70D07AD6F2D0058BE5D,
|
||||
);
|
||||
isa = PBXGroup;
|
||||
name = OSG;
|
||||
refType = 4;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
1F49F70407AD6F2D0058BE5D = {
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = wrapper.framework;
|
||||
name = osgParticle.framework;
|
||||
path = /Library/Frameworks/osgParticle.framework;
|
||||
refType = 0;
|
||||
sourceTree = "<absolute>";
|
||||
};
|
||||
1F49F70507AD6F2D0058BE5D = {
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = wrapper.framework;
|
||||
name = osgSim.framework;
|
||||
path = /Library/Frameworks/osgSim.framework;
|
||||
refType = 0;
|
||||
sourceTree = "<absolute>";
|
||||
};
|
||||
1F49F70607AD6F2D0058BE5D = {
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = wrapper.framework;
|
||||
name = OpenThreads.framework;
|
||||
path = /Library/Frameworks/OpenThreads.framework;
|
||||
refType = 0;
|
||||
sourceTree = "<absolute>";
|
||||
};
|
||||
1F49F70707AD6F2D0058BE5D = {
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = wrapper.framework;
|
||||
name = osgGA.framework;
|
||||
path = /Library/Frameworks/osgGA.framework;
|
||||
refType = 0;
|
||||
sourceTree = "<absolute>";
|
||||
};
|
||||
1F49F70807AD6F2D0058BE5D = {
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = wrapper.framework;
|
||||
name = osg.framework;
|
||||
path = /Library/Frameworks/osg.framework;
|
||||
refType = 0;
|
||||
sourceTree = "<absolute>";
|
||||
};
|
||||
1F49F70907AD6F2D0058BE5D = {
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = wrapper.framework;
|
||||
name = osgTerrain.framework;
|
||||
path = /Library/Frameworks/osgTerrain.framework;
|
||||
refType = 0;
|
||||
sourceTree = "<absolute>";
|
||||
};
|
||||
1F49F70A07AD6F2D0058BE5D = {
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = wrapper.framework;
|
||||
name = osgFX.framework;
|
||||
path = /Library/Frameworks/osgFX.framework;
|
||||
refType = 0;
|
||||
sourceTree = "<absolute>";
|
||||
};
|
||||
1F49F70B07AD6F2D0058BE5D = {
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = wrapper.framework;
|
||||
name = osgText.framework;
|
||||
path = /Library/Frameworks/osgText.framework;
|
||||
refType = 0;
|
||||
sourceTree = "<absolute>";
|
||||
};
|
||||
1F49F70D07AD6F2D0058BE5D = {
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = wrapper.framework;
|
||||
name = osgDB.framework;
|
||||
path = /Library/Frameworks/osgDB.framework;
|
||||
refType = 0;
|
||||
sourceTree = "<absolute>";
|
||||
};
|
||||
1F49F70F07AD6F2D0058BE5D = {
|
||||
fileRef = 1F49F70407AD6F2D0058BE5D;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
1F49F71007AD6F2D0058BE5D = {
|
||||
fileRef = 1F49F70507AD6F2D0058BE5D;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
1F49F71107AD6F2D0058BE5D = {
|
||||
fileRef = 1F49F70607AD6F2D0058BE5D;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
1F49F71207AD6F2D0058BE5D = {
|
||||
fileRef = 1F49F70707AD6F2D0058BE5D;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
1F49F71307AD6F2D0058BE5D = {
|
||||
fileRef = 1F49F70807AD6F2D0058BE5D;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
1F49F71507AD6F2D0058BE5D = {
|
||||
fileRef = 1F49F70A07AD6F2D0058BE5D;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
1F49F71607AD6F2D0058BE5D = {
|
||||
fileRef = 1F49F70B07AD6F2D0058BE5D;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
1F49F71807AD6F2D0058BE5D = {
|
||||
fileRef = 1F49F70D07AD6F2D0058BE5D;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
1F49F83507AD6F520058BE5D = {
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = wrapper.framework;
|
||||
name = OpenGL.framework;
|
||||
path = /System/Library/Frameworks/OpenGL.framework;
|
||||
refType = 0;
|
||||
sourceTree = "<absolute>";
|
||||
};
|
||||
1F49F83707AD6F520058BE5D = {
|
||||
fileRef = 1F49F83507AD6F520058BE5D;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
1F9A4950082D65C40032CDE9 = {
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = wrapper.framework;
|
||||
name = osgUtil.framework;
|
||||
path = /Library/Frameworks/osgUtil.framework;
|
||||
refType = 0;
|
||||
sourceTree = "<absolute>";
|
||||
};
|
||||
1F9A4951082D65C40032CDE9 = {
|
||||
fileRef = 1F9A4950082D65C40032CDE9;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
1FD8F431088C87A500B4318C = {
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = wrapper.framework;
|
||||
name = osgIntrospection.framework;
|
||||
path = /Library/Frameworks/osgIntrospection.framework;
|
||||
refType = 0;
|
||||
sourceTree = "<absolute>";
|
||||
};
|
||||
1FD8F432088C87A500B4318C = {
|
||||
fileRef = 1FD8F431088C87A500B4318C;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
1FD8F6B1088C9F0700B4318C = {
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = wrapper.framework;
|
||||
name = gdal.framework;
|
||||
path = /Library/Frameworks/gdal.framework;
|
||||
refType = 0;
|
||||
sourceTree = "<absolute>";
|
||||
};
|
||||
1FF61109082F118D004EB1E4 = {
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = wrapper.framework;
|
||||
name = osgProducer.framework;
|
||||
path = /Library/Frameworks/osgProducer.framework;
|
||||
refType = 0;
|
||||
sourceTree = "<absolute>";
|
||||
};
|
||||
1FF6110A082F118D004EB1E4 = {
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = wrapper.framework;
|
||||
name = Producer.framework;
|
||||
path = /Library/Frameworks/Producer.framework;
|
||||
refType = 0;
|
||||
sourceTree = "<absolute>";
|
||||
};
|
||||
1FF6110B082F118D004EB1E4 = {
|
||||
fileRef = 1FF61109082F118D004EB1E4;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
1FF6110C082F118D004EB1E4 = {
|
||||
fileRef = 1FF6110A082F118D004EB1E4;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
//1F0
|
||||
//1F1
|
||||
//1F2
|
||||
//1F3
|
||||
//1F4
|
||||
//200
|
||||
//201
|
||||
//202
|
||||
//203
|
||||
//204
|
||||
20286C28FDCF999611CA2CEA = {
|
||||
buildSettings = {
|
||||
};
|
||||
buildStyles = (
|
||||
4A9504C5FFE6A39111CA0CBA,
|
||||
4A9504C6FFE6A39111CA0CBA,
|
||||
);
|
||||
hasScannedForEncodings = 1;
|
||||
isa = PBXProject;
|
||||
mainGroup = 20286C29FDCF999611CA2CEA;
|
||||
projectDirPath = "";
|
||||
targets = (
|
||||
8D0C4E890486CD37000505A6,
|
||||
);
|
||||
};
|
||||
20286C29FDCF999611CA2CEA = {
|
||||
children = (
|
||||
20286C2AFDCF999611CA2CEA,
|
||||
20286C2CFDCF999611CA2CEA,
|
||||
20286C32FDCF999611CA2CEA,
|
||||
195DF8CFFE9D517E11CA2CBB,
|
||||
);
|
||||
isa = PBXGroup;
|
||||
name = "«PROJECTNAMEASXML»";
|
||||
path = "";
|
||||
refType = 4;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
20286C2AFDCF999611CA2CEA = {
|
||||
children = (
|
||||
32DBCF6D0370B57F00C91783,
|
||||
20286C2BFDCF999611CA2CEA,
|
||||
);
|
||||
isa = PBXGroup;
|
||||
name = Sources;
|
||||
path = "";
|
||||
refType = 4;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
20286C2BFDCF999611CA2CEA = {
|
||||
fileEncoding = 4;
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = sourcecode.cpp.cpp;
|
||||
path = main.cpp;
|
||||
refType = 4;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
20286C2CFDCF999611CA2CEA = {
|
||||
children = (
|
||||
8D0C4E960486CD37000505A6,
|
||||
0867D6AAFE840B52C02AAC07,
|
||||
02345980000FD03B11CA0E72,
|
||||
);
|
||||
isa = PBXGroup;
|
||||
name = Resources;
|
||||
path = "";
|
||||
refType = 4;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
20286C32FDCF999611CA2CEA = {
|
||||
children = (
|
||||
1FD8F6B1088C9F0700B4318C,
|
||||
1F49F6FE07AD6F150058BE5D,
|
||||
1F49F83507AD6F520058BE5D,
|
||||
20286C33FDCF999611CA2CEA,
|
||||
);
|
||||
isa = PBXGroup;
|
||||
name = "External Frameworks and Libraries";
|
||||
path = "";
|
||||
refType = 4;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
20286C33FDCF999611CA2CEA = {
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = wrapper.framework;
|
||||
name = Carbon.framework;
|
||||
path = /System/Library/Frameworks/Carbon.framework;
|
||||
refType = 0;
|
||||
sourceTree = "<absolute>";
|
||||
};
|
||||
//200
|
||||
//201
|
||||
//202
|
||||
//203
|
||||
//204
|
||||
//320
|
||||
//321
|
||||
//322
|
||||
//323
|
||||
//324
|
||||
32DBCF6D0370B57F00C91783 = {
|
||||
fileEncoding = 4;
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = file;
|
||||
path = "«PROJECTNAME»_Prefix.pch";
|
||||
refType = 4;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
//320
|
||||
//321
|
||||
//322
|
||||
//323
|
||||
//324
|
||||
//4A0
|
||||
//4A1
|
||||
//4A2
|
||||
//4A3
|
||||
//4A4
|
||||
4A9504C5FFE6A39111CA0CBA = {
|
||||
buildSettings = {
|
||||
COPY_PHASE_STRIP = NO;
|
||||
GCC_DYNAMIC_NO_PIC = NO;
|
||||
GCC_ENABLE_FIX_AND_CONTINUE = YES;
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
PREBINDING = NO;
|
||||
ZERO_LINK = YES;
|
||||
};
|
||||
isa = PBXBuildStyle;
|
||||
name = Development;
|
||||
};
|
||||
4A9504C6FFE6A39111CA0CBA = {
|
||||
buildSettings = {
|
||||
COPY_PHASE_STRIP = YES;
|
||||
GCC_ENABLE_FIX_AND_CONTINUE = NO;
|
||||
ZERO_LINK = NO;
|
||||
};
|
||||
isa = PBXBuildStyle;
|
||||
name = Deployment;
|
||||
};
|
||||
//4A0
|
||||
//4A1
|
||||
//4A2
|
||||
//4A3
|
||||
//4A4
|
||||
//8D0
|
||||
//8D1
|
||||
//8D2
|
||||
//8D3
|
||||
//8D4
|
||||
8D0C4E890486CD37000505A6 = {
|
||||
buildPhases = (
|
||||
8D0C4E8C0486CD37000505A6,
|
||||
8D0C4E8F0486CD37000505A6,
|
||||
8D0C4E910486CD37000505A6,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
buildSettings = {
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
|
||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||
GCC_PREFIX_HEADER = "«PROJECTNAME»_Prefix.pch";
|
||||
GCC_PREPROCESSOR_DEFINITIONS = "__USE_OSX_AGL_IMPLEMENTATION__ ";
|
||||
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Applications";
|
||||
PRODUCT_NAME = "«PROJECTNAME»";
|
||||
WRAPPER_EXTENSION = app;
|
||||
};
|
||||
dependencies = (
|
||||
);
|
||||
isa = PBXNativeTarget;
|
||||
name = "«PROJECTNAME»";
|
||||
productInstallPath = "$(HOME)/Applications";
|
||||
productName = "«PROJECTNAME»";
|
||||
productReference = 8D0C4E970486CD37000505A6;
|
||||
productType = "com.apple.product-type.application";
|
||||
};
|
||||
8D0C4E8C0486CD37000505A6 = {
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8D0C4E8D0486CD37000505A6,
|
||||
8D0C4E8E0486CD37000505A6,
|
||||
);
|
||||
isa = PBXResourcesBuildPhase;
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
8D0C4E8D0486CD37000505A6 = {
|
||||
fileRef = 0867D6AAFE840B52C02AAC07;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
8D0C4E8E0486CD37000505A6 = {
|
||||
fileRef = 02345980000FD03B11CA0E72;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
8D0C4E8F0486CD37000505A6 = {
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8D0C4E900486CD37000505A6,
|
||||
);
|
||||
isa = PBXSourcesBuildPhase;
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
8D0C4E900486CD37000505A6 = {
|
||||
fileRef = 20286C2BFDCF999611CA2CEA;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
ATTRIBUTES = (
|
||||
);
|
||||
};
|
||||
};
|
||||
8D0C4E910486CD37000505A6 = {
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8D0C4E920486CD37000505A6,
|
||||
1F49F70F07AD6F2D0058BE5D,
|
||||
1F49F71007AD6F2D0058BE5D,
|
||||
1F49F71107AD6F2D0058BE5D,
|
||||
1F49F71207AD6F2D0058BE5D,
|
||||
1F49F71307AD6F2D0058BE5D,
|
||||
1F49F71507AD6F2D0058BE5D,
|
||||
1F49F71607AD6F2D0058BE5D,
|
||||
1F49F71807AD6F2D0058BE5D,
|
||||
1F49F83707AD6F520058BE5D,
|
||||
1F9A4951082D65C40032CDE9,
|
||||
1FF6110B082F118D004EB1E4,
|
||||
1FF6110C082F118D004EB1E4,
|
||||
1FD8F432088C87A500B4318C,
|
||||
);
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
8D0C4E920486CD37000505A6 = {
|
||||
fileRef = 20286C33FDCF999611CA2CEA;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
8D0C4E960486CD37000505A6 = {
|
||||
fileEncoding = 4;
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = text.plist;
|
||||
path = Info.plist;
|
||||
refType = 4;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8D0C4E970486CD37000505A6 = {
|
||||
explicitFileType = wrapper.application;
|
||||
includeInIndex = 0;
|
||||
isa = PBXFileReference;
|
||||
path = "«PROJECTNAME».app";
|
||||
refType = 3;
|
||||
sourceTree = BUILT_PRODUCTS_DIR;
|
||||
};
|
||||
};
|
||||
rootObject = 20286C28FDCF999611CA2CEA;
|
||||
}
|
||||
170
Xcode/XcodeTemplates/OSG Application/main.cpp
Normal file
170
Xcode/XcodeTemplates/OSG Application/main.cpp
Normal file
@@ -0,0 +1,170 @@
|
||||
#include <osg/Group>
|
||||
#include <osg/Node>
|
||||
#include <osg/Geode>
|
||||
#include <osg/Geometry>
|
||||
#include <osg/Texture2D>
|
||||
#include <osgDB/ReadFile>
|
||||
#include <osgProducer/Viewer>
|
||||
#include <osg/PositionAttitudeTransform>
|
||||
|
||||
int main()
|
||||
{
|
||||
osgProducer::Viewer viewer;
|
||||
osg::Group* root = new osg::Group();
|
||||
osg::Geode* pyramidGeode = new osg::Geode();
|
||||
osg::Geometry* pyramidGeometry = new osg::Geometry();
|
||||
|
||||
//Associate the pyramid geometry with the pyramid geode
|
||||
// Add the pyramid geode to the root node of the scene graph.
|
||||
|
||||
pyramidGeode->addDrawable(pyramidGeometry);
|
||||
root->addChild(pyramidGeode);
|
||||
|
||||
//Declare an array of vertices. Each vertex will be represented by
|
||||
//a triple -- an instances of the vec3 class. An instance of
|
||||
//osg::Vec3Array can be used to store these triples. Since
|
||||
//osg::Vec3Array is derived from the STL vector class, we can use the
|
||||
//push_back method to add array elements. Push back adds elements to
|
||||
//the end of the vector, thus the index of first element entered is
|
||||
//zero, the second entries index is 1, etc.
|
||||
//Using a right-handed coordinate system with 'z' up, array
|
||||
//elements zero..four below represent the 5 points required to create
|
||||
//a simple pyramid.
|
||||
|
||||
osg::Vec3Array* pyramidVertices = new osg::Vec3Array;
|
||||
pyramidVertices->push_back( osg::Vec3( 0, 0, 0) ); // front left
|
||||
pyramidVertices->push_back( osg::Vec3(10, 0, 0) ); // front right
|
||||
pyramidVertices->push_back( osg::Vec3(10,10, 0) ); // back right
|
||||
pyramidVertices->push_back( osg::Vec3( 0,10, 0) ); // back left
|
||||
pyramidVertices->push_back( osg::Vec3( 5, 5,10) ); // peak
|
||||
|
||||
//Associate this set of vertices with the geometry associated with the
|
||||
//geode we added to the scene.
|
||||
|
||||
pyramidGeometry->setVertexArray( pyramidVertices );
|
||||
|
||||
//Next, create a primitive set and add it to the pyramid geometry.
|
||||
//Use the first four points of the pyramid to define the base using an
|
||||
//instance of the DrawElementsUint class. Again this class is derived
|
||||
//from the STL vector, so the push_back method will add elements in
|
||||
//sequential order. To ensure proper backface cullling, vertices
|
||||
//should be specified in counterclockwise order. The arguments for the
|
||||
//constructor are the enumerated type for the primitive
|
||||
//(same as the OpenGL primitive enumerated types), and the index in
|
||||
//the vertex array to start from.
|
||||
|
||||
osg::DrawElementsUInt* pyramidBase =
|
||||
new osg::DrawElementsUInt(osg::PrimitiveSet::QUADS, 0);
|
||||
pyramidBase->push_back(3);
|
||||
pyramidBase->push_back(2);
|
||||
pyramidBase->push_back(1);
|
||||
pyramidBase->push_back(0);
|
||||
pyramidGeometry->addPrimitiveSet(pyramidBase);
|
||||
|
||||
//Repeat the same for each of the four sides. Again, vertices are
|
||||
//specified in counter-clockwise order.
|
||||
|
||||
osg::DrawElementsUInt* pyramidFaceOne =
|
||||
new osg::DrawElementsUInt(osg::PrimitiveSet::TRIANGLES, 0);
|
||||
pyramidFaceOne->push_back(0);
|
||||
pyramidFaceOne->push_back(1);
|
||||
pyramidFaceOne->push_back(4);
|
||||
pyramidGeometry->addPrimitiveSet(pyramidFaceOne);
|
||||
|
||||
osg::DrawElementsUInt* pyramidFaceTwo =
|
||||
new osg::DrawElementsUInt(osg::PrimitiveSet::TRIANGLES, 0);
|
||||
pyramidFaceTwo->push_back(1);
|
||||
pyramidFaceTwo->push_back(2);
|
||||
pyramidFaceTwo->push_back(4);
|
||||
pyramidGeometry->addPrimitiveSet(pyramidFaceTwo);
|
||||
|
||||
osg::DrawElementsUInt* pyramidFaceThree =
|
||||
new osg::DrawElementsUInt(osg::PrimitiveSet::TRIANGLES, 0);
|
||||
pyramidFaceThree->push_back(2);
|
||||
pyramidFaceThree->push_back(3);
|
||||
pyramidFaceThree->push_back(4);
|
||||
pyramidGeometry->addPrimitiveSet(pyramidFaceThree);
|
||||
|
||||
osg::DrawElementsUInt* pyramidFaceFour =
|
||||
new osg::DrawElementsUInt(osg::PrimitiveSet::TRIANGLES, 0);
|
||||
pyramidFaceFour->push_back(3);
|
||||
pyramidFaceFour->push_back(0);
|
||||
pyramidFaceFour->push_back(4);
|
||||
pyramidGeometry->addPrimitiveSet(pyramidFaceFour);
|
||||
|
||||
//Declare and load an array of Vec4 elements to store colors.
|
||||
|
||||
osg::Vec4Array* colors = new osg::Vec4Array;
|
||||
colors->push_back(osg::Vec4(1.0f, 0.0f, 0.0f, 1.0f) ); //index 0 red
|
||||
colors->push_back(osg::Vec4(0.0f, 1.0f, 0.0f, 1.0f) ); //index 1 green
|
||||
colors->push_back(osg::Vec4(0.0f, 0.0f, 1.0f, 1.0f) ); //index 2 blue
|
||||
colors->push_back(osg::Vec4(1.0f, 1.0f, 1.0f, 1.0f) ); //index 3 white
|
||||
|
||||
//Declare the variable that will match vertex array elements to color
|
||||
//array elements. This vector should have the same number of elements
|
||||
//as the number of vertices. This vector serves as a link between
|
||||
//vertex arrays and color arrays. Entries in this index array
|
||||
//coorespond to elements in the vertex array. Their values coorespond
|
||||
//to the index in he color array. This same scheme would be followed
|
||||
//if vertex array elements were matched with normal or texture
|
||||
//coordinate arrays.
|
||||
// Note that in this case, we are assigning 5 vertices to four
|
||||
// colors. Vertex array element zero (bottom left) and four (peak)
|
||||
// are both assigned to color array element zero (red).
|
||||
|
||||
osg::TemplateIndexArray
|
||||
<GLint, osg::Array::UIntArrayType,4,4> *colorIndexArray;
|
||||
colorIndexArray =
|
||||
new osg::TemplateIndexArray<GLint, osg::Array::UIntArrayType,4,4>;
|
||||
colorIndexArray->push_back(0); // vertex 0 assigned color array element 0
|
||||
colorIndexArray->push_back(1); // vertex 1 assigned color array element 1
|
||||
colorIndexArray->push_back(2); // vertex 2 assigned color array element 2
|
||||
colorIndexArray->push_back(3); // vertex 3 assigned color array element 3
|
||||
colorIndexArray->push_back(0); // vertex 4 assigned color array element 0
|
||||
|
||||
//The next step is to associate the array of colors with the geometry,
|
||||
//assign the color indices created above to the geometry and set the
|
||||
//binding mode to _PER_VERTEX.
|
||||
|
||||
pyramidGeometry->setColorArray(colors);
|
||||
pyramidGeometry->setColorIndices(colorIndexArray);
|
||||
pyramidGeometry->setColorBinding(osg::Geometry::BIND_PER_VERTEX);
|
||||
|
||||
//Now that we have created a geometry node and added it to the scene
|
||||
//we can reuse this geometry. For example, if we wanted to put a
|
||||
//second pyramid 15 units to the right of the first one, we could add
|
||||
//this geode as the child of a transform node in our scene graph.
|
||||
|
||||
// Declare and initialize a transform node.
|
||||
osg::PositionAttitudeTransform* pyramidTwoXForm =
|
||||
new osg::PositionAttitudeTransform();
|
||||
|
||||
// Use the 'addChild' method of the osg::Group class to
|
||||
// add the transform as a child of the root node and the
|
||||
// pyramid node as a child of the transform.
|
||||
|
||||
root->addChild(pyramidTwoXForm);
|
||||
pyramidTwoXForm->addChild(pyramidGeode);
|
||||
|
||||
// Declare and initialize a Vec3 instance to change the
|
||||
// position of the tank model in the scene
|
||||
|
||||
osg::Vec3 pyramidTwoPosition(15,0,0);
|
||||
pyramidTwoXForm->setPosition( pyramidTwoPosition );
|
||||
|
||||
//The final step is to set up and enter a simulation loop.
|
||||
|
||||
viewer.setUpViewer(osgProducer::Viewer::STANDARD_SETTINGS);
|
||||
viewer.setSceneData( root );
|
||||
|
||||
viewer.realize();
|
||||
|
||||
while( !viewer.done() )
|
||||
{
|
||||
viewer.sync();
|
||||
viewer.update();
|
||||
viewer.frame();
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
387
Xcode/XcodeTemplates/OSG Application/osgApp_Prefix.pch
Normal file
387
Xcode/XcodeTemplates/OSG Application/osgApp_Prefix.pch
Normal file
@@ -0,0 +1,387 @@
|
||||
/*
|
||||
* Prefix header for all source files of the '<27>PROJECTNAME<4D>' target in the '<27>PROJECTNAME<4D>' project.
|
||||
* Keep the ones you need, remove the ones you don't.
|
||||
* Add headers specific to your project we don't list (e.g. <Carbon/Carbon.h>, <Cocoa/Cocoa.h>).
|
||||
*/
|
||||
|
||||
/*
|
||||
#include <Carbon/Carbon.h>
|
||||
*/
|
||||
|
||||
/*
|
||||
#ifdef __OBJC__
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#endif
|
||||
*/
|
||||
|
||||
/* Put all your C++ headers inside the __cplusplus guard. */
|
||||
#ifdef __cplusplus
|
||||
|
||||
/* You may not need the OpenThreads and Producer headers for your project.
|
||||
* In those cases, you can comment out these blocks if you wish.
|
||||
*/
|
||||
#include <OpenThreads/Barrier>
|
||||
#include <OpenThreads/Condition>
|
||||
#include <OpenThreads/Exports>
|
||||
#include <OpenThreads/Mutex>
|
||||
#include <OpenThreads/ScopedLock>
|
||||
#include <OpenThreads/Thread>
|
||||
|
||||
#include <Producer/Block>
|
||||
#include <Producer/BlockingQueue>
|
||||
#include <Producer/CameraConfig>
|
||||
#include <Producer/CameraGroup>
|
||||
#include <Producer/Events>
|
||||
#include <Producer/Export>
|
||||
#include <Producer/InputArea>
|
||||
#include <Producer/Keyboard>
|
||||
#include <Producer/KeyboardMouse>
|
||||
#include <Producer/Math>
|
||||
#include <Producer/Referenced>
|
||||
#include <Producer/RefOpenThreads>
|
||||
#include <Producer/RenderSurface>
|
||||
#include <Producer/Timer>
|
||||
#include <Producer/Trackball>
|
||||
#include <Producer/Types>
|
||||
#include <Producer/Version>
|
||||
#include <Producer/VisualChooser>
|
||||
#include <Producer/Window3D>
|
||||
|
||||
#include <osg/AlphaFunc>
|
||||
#include <osg/AnimationPath>
|
||||
#include <osg/ApplicationUsage>
|
||||
#include <osg/ArgumentParser>
|
||||
#include <osg/Array>
|
||||
#include <osg/AutoTransform>
|
||||
#include <osg/Billboard>
|
||||
#include <osg/BlendColor>
|
||||
#include <osg/BlendEquation>
|
||||
#include <osg/BlendFunc>
|
||||
#include <osg/BoundingBox>
|
||||
#include <osg/BoundingSphere>
|
||||
#include <osg/BoundsChecking>
|
||||
#include <osg/BufferObject>
|
||||
#include <osg/CameraNode>
|
||||
#include <osg/CameraView>
|
||||
#include <osg/ClearNode>
|
||||
#include <osg/ClipNode>
|
||||
#include <osg/ClipPlane>
|
||||
#include <osg/ClusterCullingCallback>
|
||||
#include <osg/CollectOccludersVisitor>
|
||||
#include <osg/ColorMask>
|
||||
#include <osg/ColorMatrix>
|
||||
#include <osg/ConvexPlanarOccluder>
|
||||
#include <osg/ConvexPlanarPolygon>
|
||||
#include <osg/CoordinateSystemNode>
|
||||
#include <osg/CopyOp>
|
||||
#include <osg/CullFace>
|
||||
#include <osg/CullSettings>
|
||||
#include <osg/CullStack>
|
||||
#include <osg/CullingSet>
|
||||
#include <osg/Depth>
|
||||
#include <osg/DisplaySettings>
|
||||
#include <osg/DrawPixels>
|
||||
#include <osg/Drawable>
|
||||
#include <osg/Endian>
|
||||
#include <osg/Export>
|
||||
#include <osg/Fog>
|
||||
#include <osg/FragmentProgram>
|
||||
#include <osg/FrameBufferObject>
|
||||
#include <osg/FrameStamp>
|
||||
#include <osg/FrontFace>
|
||||
#include <osg/GL>
|
||||
#include <osg/GL2Extensions>
|
||||
#include <osg/GLExtensions>
|
||||
#include <osg/GLU>
|
||||
#include <osg/Geode>
|
||||
#include <osg/Geometry>
|
||||
#include <osg/GraphicsContext>
|
||||
#include <osg/GraphicsThread>
|
||||
#include <osg/Group>
|
||||
#include <osg/Image>
|
||||
#include <osg/ImageStream>
|
||||
#include <osg/LOD>
|
||||
#include <osg/Light>
|
||||
#include <osg/LightModel>
|
||||
#include <osg/LightSource>
|
||||
#include <osg/LineSegment>
|
||||
#include <osg/LineStipple>
|
||||
#include <osg/LineWidth>
|
||||
#include <osg/LogicOp>
|
||||
#include <osg/Material>
|
||||
#include <osg/Math>
|
||||
#include <osg/Matrix>
|
||||
#include <osg/MatrixTransform>
|
||||
#include <osg/Matrixd>
|
||||
#include <osg/Matrixf>
|
||||
#include <osg/Multisample>
|
||||
#include <osg/Node>
|
||||
#include <osg/NodeCallback>
|
||||
#include <osg/NodeTrackerCallback>
|
||||
#include <osg/NodeVisitor>
|
||||
#include <osg/Notify>
|
||||
#include <osg/Object>
|
||||
#include <osg/OccluderNode>
|
||||
#include <osg/PagedLOD>
|
||||
#include <osg/Plane>
|
||||
#include <osg/Point>
|
||||
#include <osg/PointSprite>
|
||||
#include <osg/PolygonMode>
|
||||
#include <osg/PolygonOffset>
|
||||
#include <osg/PolygonStipple>
|
||||
#include <osg/Polytope>
|
||||
#include <osg/PositionAttitudeTransform>
|
||||
#include <osg/PrimitiveSet>
|
||||
#include <osg/Program>
|
||||
#include <osg/Projection>
|
||||
#include <osg/ProxyNode>
|
||||
#include <osg/Quat>
|
||||
#include <osg/RefNodePath>
|
||||
#include <osg/Referenced>
|
||||
#include <osg/Sequence>
|
||||
#include <osg/ShadeModel>
|
||||
#include <osg/Shader>
|
||||
#include <osg/ShadowVolumeOccluder>
|
||||
#include <osg/Shape>
|
||||
#include <osg/ShapeDrawable>
|
||||
#include <osg/Scissor>
|
||||
#include <osg/State>
|
||||
#include <osg/StateAttribute>
|
||||
#include <osg/StateSet>
|
||||
#include <osg/Stencil>
|
||||
#include <osg/Switch>
|
||||
#include <osg/TexEnv>
|
||||
#include <osg/TexEnvCombine>
|
||||
#include <osg/TexEnvFilter>
|
||||
#include <osg/TexGen>
|
||||
#include <osg/TexGenNode>
|
||||
#include <osg/TexMat>
|
||||
#include <osg/Texture>
|
||||
#include <osg/Texture1D>
|
||||
#include <osg/Texture2D>
|
||||
#include <osg/Texture3D>
|
||||
#include <osg/TextureCubeMap>
|
||||
#include <osg/TextureRectangle>
|
||||
#include <osg/Timer>
|
||||
#include <osg/Transform>
|
||||
#include <osg/TriangleFunctor>
|
||||
#include <osg/TriangleIndexFunctor>
|
||||
#include <osg/UByte4>
|
||||
#include <osg/Uniform>
|
||||
#include <osg/UnitTestFramework>
|
||||
#include <osg/Vec2>
|
||||
#include <osg/Vec2b>
|
||||
#include <osg/Vec2d>
|
||||
#include <osg/Vec2f>
|
||||
#include <osg/Vec2s>
|
||||
#include <osg/Vec3>
|
||||
#include <osg/Vec3b>
|
||||
#include <osg/Vec3d>
|
||||
#include <osg/Vec3f>
|
||||
#include <osg/Vec3s>
|
||||
#include <osg/Vec4>
|
||||
#include <osg/Vec4b>
|
||||
#include <osg/Vec4d>
|
||||
#include <osg/Vec4f>
|
||||
#include <osg/Vec4s>
|
||||
#include <osg/Version>
|
||||
#include <osg/VertexProgram>
|
||||
#include <osg/Viewport>
|
||||
#include <osg/buffered_value>
|
||||
#include <osg/fast_back_stack>
|
||||
#include <osg/io_utils>
|
||||
#include <osg/ref_ptr>
|
||||
|
||||
#include <osgDB/Archive>
|
||||
#include <osgDB/DatabasePager>
|
||||
#include <osgDB/DotOsgWrapper>
|
||||
#include <osgDB/DynamicLibrary>
|
||||
#include <osgDB/Export>
|
||||
#include <osgDB/Field>
|
||||
#include <osgDB/FieldReader>
|
||||
#include <osgDB/FieldReaderIterator>
|
||||
#include <osgDB/FileNameUtils>
|
||||
#include <osgDB/FileUtils>
|
||||
#include <osgDB/ImageOptions>
|
||||
#include <osgDB/Input>
|
||||
#include <osgDB/Output>
|
||||
#include <osgDB/ParameterOutput>
|
||||
#include <osgDB/ReadFile>
|
||||
#include <osgDB/ReaderWriter>
|
||||
#include <osgDB/ReentrantMutex>
|
||||
#include <osgDB/Registry>
|
||||
#include <osgDB/SharedStateManager>
|
||||
#include <osgDB/Version>
|
||||
#include <osgDB/WriteFile>
|
||||
|
||||
#include <osgFX/AnisotropicLighting>
|
||||
#include <osgFX/BumpMapping>
|
||||
#include <osgFX/Cartoon>
|
||||
#include <osgFX/Effect>
|
||||
#include <osgFX/Export>
|
||||
#include <osgFX/MultiTextureControl>
|
||||
#include <osgFX/Registry>
|
||||
#include <osgFX/Scribe>
|
||||
#include <osgFX/SpecularHighlights>
|
||||
#include <osgFX/Technique>
|
||||
#include <osgFX/Validator>
|
||||
|
||||
#include <osgGA/AnimationPathManipulator>
|
||||
#include <osgGA/DriveManipulator>
|
||||
#include <osgGA/EventVisitor>
|
||||
#include <osgGA/Export>
|
||||
#include <osgGA/FlightManipulator>
|
||||
#include <osgGA/GUIActionAdapter>
|
||||
#include <osgGA/GUIEventAdapter>
|
||||
#include <osgGA/GUIEventHandler>
|
||||
#include <osgGA/GUIEventHandlerVisitor>
|
||||
#include <osgGA/KeySwitchMatrixManipulator>
|
||||
#include <osgGA/MatrixManipulator>
|
||||
#include <osgGA/NodeTrackerManipulator>
|
||||
#include <osgGA/SetSceneViewVisitor>
|
||||
#include <osgGA/StateSetManipulator>
|
||||
#include <osgGA/TerrainManipulator>
|
||||
#include <osgGA/TrackballManipulator>
|
||||
#include <osgGA/UFOManipulator>
|
||||
#include <osgGA/Version>
|
||||
|
||||
#include <osgIntrospection/Attributes>
|
||||
#include <osgIntrospection/Comparator>
|
||||
#include <osgIntrospection/ConstructorInfo>
|
||||
#include <osgIntrospection/Converter>
|
||||
#include <osgIntrospection/ConverterProxy>
|
||||
#include <osgIntrospection/CustomAttribute>
|
||||
#include <osgIntrospection/CustomAttributeProvider>
|
||||
#include <osgIntrospection/Exceptions>
|
||||
#include <osgIntrospection/Export>
|
||||
#include <osgIntrospection/InstanceCreator>
|
||||
#include <osgIntrospection/MethodInfo>
|
||||
#include <osgIntrospection/ParameterInfo>
|
||||
#include <osgIntrospection/PropertyInfo>
|
||||
#include <osgIntrospection/ReaderWriter>
|
||||
#include <osgIntrospection/Reflection>
|
||||
#include <osgIntrospection/ReflectionMacros>
|
||||
#include <osgIntrospection/Reflector>
|
||||
#include <osgIntrospection/StaticMethodInfo>
|
||||
#include <osgIntrospection/Type>
|
||||
#include <osgIntrospection/TypeNameAliasProxy>
|
||||
#include <osgIntrospection/TypedConstructorInfo>
|
||||
#include <osgIntrospection/TypedMethodInfo>
|
||||
#include <osgIntrospection/Utility>
|
||||
#include <osgIntrospection/Value>
|
||||
#include <osgIntrospection/variant_cast>
|
||||
|
||||
#include <osgParticle/AccelOperator>
|
||||
#include <osgParticle/AngularAccelOperator>
|
||||
#include <osgParticle/CenteredPlacer>
|
||||
#include <osgParticle/ConnectedParticleSystem>
|
||||
#include <osgParticle/ConstantRateCounter>
|
||||
#include <osgParticle/Counter>
|
||||
#include <osgParticle/Emitter>
|
||||
#include <osgParticle/ExplosionDebrisEffect>
|
||||
#include <osgParticle/ExplosionEffect>
|
||||
#include <osgParticle/Export>
|
||||
#include <osgParticle/FireEffect>
|
||||
#include <osgParticle/FluidFrictionOperator>
|
||||
#include <osgParticle/FluidProgram>
|
||||
#include <osgParticle/ForceOperator>
|
||||
#include <osgParticle/Interpolator>
|
||||
#include <osgParticle/LinearInterpolator>
|
||||
#include <osgParticle/ModularEmitter>
|
||||
#include <osgParticle/ModularProgram>
|
||||
#include <osgParticle/MultiSegmentPlacer>
|
||||
#include <osgParticle/Operator>
|
||||
#include <osgParticle/Particle>
|
||||
#include <osgParticle/ParticleEffect>
|
||||
#include <osgParticle/ParticleProcessor>
|
||||
#include <osgParticle/ParticleSystem>
|
||||
#include <osgParticle/ParticleSystemUpdater>
|
||||
#include <osgParticle/Placer>
|
||||
#include <osgParticle/PointPlacer>
|
||||
#include <osgParticle/Program>
|
||||
#include <osgParticle/RadialShooter>
|
||||
#include <osgParticle/RandomRateCounter>
|
||||
#include <osgParticle/SectorPlacer>
|
||||
#include <osgParticle/SegmentPlacer>
|
||||
#include <osgParticle/Shooter>
|
||||
#include <osgParticle/SmokeEffect>
|
||||
#include <osgParticle/SmokeTrailEffect>
|
||||
#include <osgParticle/VariableRateCounter>
|
||||
#include <osgParticle/Version>
|
||||
#include <osgParticle/range>
|
||||
|
||||
#include <osgProducer/EventAdapter>
|
||||
#include <osgProducer/Export>
|
||||
#include <osgProducer/GraphicsContextImplementation>
|
||||
#include <osgProducer/KeyboardMouseCallback>
|
||||
#include <osgProducer/OsgCameraGroup>
|
||||
#include <osgProducer/OsgSceneHandler>
|
||||
#include <osgProducer/Version>
|
||||
#include <osgProducer/Viewer>
|
||||
#include <osgProducer/ViewerEventHandler>
|
||||
|
||||
#include <osgSim/BlinkSequence>
|
||||
#include <osgSim/ColorRange>
|
||||
#include <osgSim/DOFTransform>
|
||||
#include <osgSim/Export>
|
||||
#include <osgSim/GeographicLocation>
|
||||
#include <osgSim/Impostor>
|
||||
#include <osgSim/ImpostorSprite>
|
||||
#include <osgSim/InsertImpostorsVisitor>
|
||||
#include <osgSim/LightPoint>
|
||||
#include <osgSim/LightPointNode>
|
||||
#include <osgSim/LightPointSystem>
|
||||
#include <osgSim/MultiSwitch>
|
||||
#include <osgSim/OverlayNode>
|
||||
#include <osgSim/ScalarBar>
|
||||
#include <osgSim/ScalarsToColors>
|
||||
#include <osgSim/Sector>
|
||||
#include <osgSim/SphereSegment>
|
||||
#include <osgSim/Version>
|
||||
#include <osgSim/VisibilityGroup>
|
||||
|
||||
/* osgTerrain is an optional framework. If you're not using it or don't have it installed,
|
||||
* you should comment out this block.
|
||||
*/
|
||||
#include <osgTerrain/DataSet>
|
||||
#include <osgTerrain/Export>
|
||||
#include <osgTerrain/HeightFieldNode>
|
||||
#include <osgTerrain/HeightFieldRenderer>
|
||||
#include <osgTerrain/Version>
|
||||
|
||||
#include <osgText/Export>
|
||||
#include <osgText/Font>
|
||||
#include <osgText/String>
|
||||
#include <osgText/Text>
|
||||
#include <osgText/Version>
|
||||
|
||||
#include <osgUtil/CubeMapGenerator>
|
||||
#include <osgUtil/CullVisitor>
|
||||
#include <osgUtil/DelaunayTriangulator>
|
||||
#include <osgUtil/DisplayRequirementsVisitor>
|
||||
#include <osgUtil/Export>
|
||||
#include <osgUtil/GLObjectsVisitor>
|
||||
#include <osgUtil/HalfWayMapGenerator>
|
||||
#include <osgUtil/HighlightMapGenerator>
|
||||
#include <osgUtil/IntersectVisitor>
|
||||
#include <osgUtil/Optimizer>
|
||||
#include <osgUtil/PositionalStateContainer>
|
||||
#include <osgUtil/ReflectionMapGenerator>
|
||||
#include <osgUtil/RenderBin>
|
||||
#include <osgUtil/RenderLeaf>
|
||||
#include <osgUtil/RenderStage>
|
||||
#include <osgUtil/SceneView>
|
||||
#include <osgUtil/Simplifier>
|
||||
#include <osgUtil/SmoothingVisitor>
|
||||
#include <osgUtil/StateGraph>
|
||||
#include <osgUtil/Statistics>
|
||||
#include <osgUtil/TangentSpaceGenerator>
|
||||
#include <osgUtil/Tesselator>
|
||||
#include <osgUtil/TransformAttributeFunctor>
|
||||
#include <osgUtil/TransformCallback>
|
||||
#include <osgUtil/TriStripVisitor>
|
||||
#include <osgUtil/UpdateVisitor>
|
||||
#include <osgUtil/Version>
|
||||
|
||||
#endif /* __cplusplus */
|
||||
|
||||
16
Xcode/XcodeTemplates/OSG Application/version.plist
Normal file
16
Xcode/XcodeTemplates/OSG Application/version.plist
Normal file
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>BuildVersion</key>
|
||||
<string>92</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<key>ProductBuildVersion</key>
|
||||
<string>7K571</string>
|
||||
<key>ProjectName</key>
|
||||
<string>NibPBTemplates</string>
|
||||
<key>SourceVersion</key>
|
||||
<string>1200000</string>
|
||||
</dict>
|
||||
</plist>
|
||||
47
Xcode/XcodeTemplates/TemplateNotes.rtf
Normal file
47
Xcode/XcodeTemplates/TemplateNotes.rtf
Normal file
@@ -0,0 +1,47 @@
|
||||
{\rtf1\mac\ansicpg10000\cocoartf824\cocoasubrtf230
|
||||
{\fonttbl\f0\fswiss\fcharset77 Helvetica-Bold;\f1\fswiss\fcharset77 Helvetica;\f2\fnil\fcharset77 Monaco;
|
||||
}
|
||||
{\colortbl;\red255\green255\blue255;}
|
||||
\margl1440\margr1440\vieww9960\viewh11680\viewkind0
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
|
||||
\f0\b\fs24 \cf0 Xcode Templates:\
|
||||
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
|
||||
|
||||
\f1\b0 \cf0 \
|
||||
We have included a "New Project" template for OpenSceneGraph projects. We recommend you place the "OSG Application" folder into either:\
|
||||
\
|
||||
/Library/Application Support/Apple/Developer Tools/Project Templates/Appllcation (for system-wide)
|
||||
\f0\b \
|
||||
|
||||
\f1\b0 ~/Library/Application Support/Apple/Developer Tools/Project Templates/Appllcation (for per-user)
|
||||
\f0\b \
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
|
||||
\f1\b0 \cf0 \
|
||||
After doing this, when doing a File->New Project, you will see "OSG Application" under the Application category. Selecting this will create a simple OSG project with some sample source code already in place which currently renders 2 colored tetrahedrons.\
|
||||
\
|
||||
All the OSG related frameworks are listed already, though gdal and osgTerrain are not checked by default. To link against them, you must check their checkboxes to enable them. Feel free to uncheck or remove frameworks you don't need.\
|
||||
\
|
||||
The OSGTemplate target defines __USE_OSX_AGL_IMPLEMENTATION__ as a Preprocessor macro already for you.\
|
||||
\
|
||||
A prefix header file has been included which lists all the OSG headers. This will take some additional time to compile your first time. If you don't need all the headers, you may remove them as you see fit.\
|
||||
\
|
||||
You are encouraged to setup a "Copy Files Build Phase" for your project to automatically bundle the OSG frameworks and PlugIns. (And of course, use the "Bundle Resources" to include your Resources. We did not set this up automatically for you because if you use the development frameworks, they can be several hundred megabytes.\
|
||||
\
|
||||
To learn more about Framework bundling, a good demonstration video and sample project exists here:\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
{\field{\*\fldinst{HYPERLINK "http://rentzsch.com/cocoa/embeddedFrameworks"}}{\fldrslt \cf0 http://rentzsch.com/cocoa/embeddedFrameworks}}\
|
||||
\
|
||||
\
|
||||
Do not use the
|
||||
\f2\fs22 -fvisibility=hidden
|
||||
\f1\fs24 flag unless you know what you're doing. In some cases, Xcode 2.2 seems to enable this by default in the project settings. You should verify your project settings and make sure this is disabled. Among other things, this flag will hide RTTI information causing dynamic_cast<> operations to fail. Since parts of OSG are dependent on RTTI, this option should remain off. The flag
|
||||
\f2\fs22 -fvisibility-inlines-hidden
|
||||
\f1\fs24 may be safe to use. (This is actually enabled in our Xcode projects. If there are problems, please let us know.)\
|
||||
\
|
||||
Finally, there may still be issues with Zerolink. We defer to the default for this option and in current Xcode versions, the default is on. In the worst cases, scenes will not render correctly or the application may crash. The worst thing about this is that the problems are so strange, you may not realize Zerolink is the problem. To see this for yourself (we tried in Xcode 2.2), you might try comparing the osgdelaunay example with and without Zerolink, toggling through all values of 'n'. With Zerolink certain objects do not even appear and it crashes. So you are probably should disable this to be safe. However, for the daring, Zerolink does seem to work for some projects though we do not fully understand the criteria for this. Furthermore, Apple constantly works on improving this feature so maybe one day it will all just work right.\
|
||||
\
|
||||
\
|
||||
\
|
||||
}
|
||||
Reference in New Issue
Block a user