Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

added John Becker's 2.5.6 blender export fix

  • Loading branch information...
commit 6732bf1ff50a3737357503a55e567352f3591a23 1 parent 7a5172b
jlamarche authored
View
175 Blender Export/objc-export-2.5/objc_blend2_5.5.py
@@ -0,0 +1,175 @@
+#
+#
+# Name: 'Objective-C Header (.h)'
+#
+#
+
+bl_addon_info = {
+ 'name': 'Export: Objective-C header (.h)',
+ 'author': 'Jeff, Paul',
+ 'version': '1.1',
+ 'blender': (2, 5, 5),
+ 'location': 'File > Export',
+ 'description': 'Export Objective C header file (.h)',
+ 'warning': '', # used for warning icon and text in addons panel
+ 'wiki_url': '',
+ 'tracker_url': '',
+ 'category': 'Import/Export'}
+
+import bpy
+import os
+import operator
+
+def write_objc(filepath,context):
+ out = open(filepath, 'w')
+ current_scene = bpy.context.scene
+ objs = current_scene.objects
+
+ #i know there has to be an easier way to do this, but i'm too lazy to look it up
+ for next_obj in objs:
+ if next_obj.type == 'MESH':
+ mesh = next_obj
+
+ print("Writing Object")
+
+ for i in current_scene.objects:
+ i.select = False #deselect all objects
+ mesh.select = True
+ current_scene.objects.active = mesh #set the mesh object to current
+ bpy.ops.object.mode_set(mode='EDIT') #Operators
+ bpy.ops.mesh.select_all(action='SELECT')#select all the face/vertex/edge
+ bpy.ops.mesh.quads_convert_to_tris() #Operators
+ current_scene.update()
+ bpy.ops.object.mode_set(mode='OBJECT') # set it in object
+
+ mesh = mesh.data
+
+ objectname = mesh.name
+ basename = objectname.capitalize()
+
+ out.write('#import "OpenGLCommon.h"\n\n\n')
+
+ if len(mesh.uv_textures) > 0:
+ out.write('static const TexturedVertexData3D %sVertexData[] = {\n' % basename)
+ #for face in uv: #loop through the faces
+ uv_layer = mesh.active_uv_texture
+ for face in mesh.faces:
+ faceUV = uv_layer.data[face.index]
+ i=0
+ for index in face.verts:
+ if len(face.verts) == 3:
+ vert = mesh.verts[index]
+ out.write('\t{/*v:*/{%f, %f, %f}, ' % (vert.co.x, vert.co.y, vert.co.z) )
+ out.write('/*n:*/{%f, %f, %f}, ' % (vert.normal.x, vert.normal.y, vert.normal.z))
+ out.write('/*t:*/{%f, %f}' % ( faceUV.uv[i][0], faceUV.uv[i][1] ) )
+ out.write('},\n')
+ i+=1
+ out.write('};\n\n')
+ elif len(mesh.vertex_colors) > 0:
+ out.write('static const ColoredVertexData3D %sVertexData[] = {\n' % basename)
+ color_layer = mesh.active_vertex_color
+ for face in mesh.faces:
+ if len(face.verts) == 3:
+ faceC = color_layer.data[face.index]
+ i=0
+ for index in face.verts:
+ vert = mesh.verts[index]
+ out.write('\t{/*v:*/{%f, %f, %f}, ' % (vert.co.x, vert.co.y, vert.co.z) )
+ out.write('/*n:*/{%f, %f, %f}, ' % (vert.normal.x, vert.normal.y, vert.normal.z))
+ out.write('/*c:*/{%f, %f, %f, %f}' % ( faceC.color1[i], faceC.color2[i], faceC.color3[i], faceC.color4[i]) )
+ out.write('},\n')
+ i+=1
+ out.write('};\n\n')
+ else:
+ out.write
+ out.write('static const VertexData3D %sVertexData[] = {\n' % basename)
+ for face in mesh.faces:
+ if len(face.verts) == 3:
+ for index in face.verts:
+ vert = mesh.verts[index]
+ out.write('\t{/*v:*/{%f, %f, %f}, ' % (vert.co.x, vert.co.y, vert.co.z) )
+ out.write('/*n:*/{%f, %f, %f} ' % (vert.normal.x, vert.normal.y, vert.normal.z))
+ out.write('},\n')
+ out.write('};\n\n')
+
+ #if editmode: Window.EditMode(1)
+ out.write('#define k%sNumberOfVertices\t%i\n' % (basename, len(mesh.faces) * 3) )
+
+ out.write('// Drawing Code:\n')
+ out.write('// glEnableClientState(GL_VERTEX_ARRAY);\n')
+ if len(mesh.uv_textures) > 0:
+ out.write('// glEnableClientState(GL_TEXTURE_COORD_ARRAY);\n')
+ elif len(mesh.vertex_colors) > 0:
+ out.write('// glEnableClientState(GL_COLOR_ARRAY);\n')
+ out.write('// glEnable(GL_COLOR_MATERIAL)\n')
+ out.write('// glEnableClientState(GL_NORMAL_ARRAY);\n')
+ out.write('// glVertexPointer(3, GL_FLOAT, sizeof(')
+ if len(mesh.uv_textures) > 0:
+ out.write('TexturedVertexData3D')
+ elif len(mesh.vertex_colors) > 0:
+ out.write('ColoredVertexData3D')
+ else:
+ out.write('VertexData3D')
+ out.write('), &%sVertexData[0].vertex);\n' % basename)
+ out.write('// glNormalPointer(GL_FLOAT, sizeof(')
+ if len(mesh.uv_textures) > 0:
+ out.write('TexturedVertexData3D')
+ elif len(mesh.vertex_colors) > 0:
+ out.write('ColoredVertexData3D')
+ else:
+ out.write('VertexData3D')
+ out.write('), &%sVertexData[0].normal);\n' % basename)
+ if len(mesh.uv_textures) > 0:
+ out.write('// glTexCoordPointer(2, GL_FLOAT, sizeof(TexturedVertexData3D), &%sVertexData[0].texCoord);\n' % basename)
+ elif len(mesh.vertex_colors) > 0:
+ out.write('// glColorPointer(4, GL_FLOAT, sizeof(ColoredVertexData3D), &%sVertexData[0].color);\n' % basename)
+ out.write('// glDrawArrays(GL_TRIANGLES, 0, k%sNumberOfVertices);\n' % basename)
+ out.write('// glDisableClientState(GL_VERTEX_ARRAY);\n')
+ if len(mesh.uv_textures) > 0:
+ out.write('// glDisableClientState(GL_TEXTURE_COORD_ARRAY);\n')
+ elif len(mesh.vertex_colors) > 0:
+ out.write('// glDisableClientState(GL_NORMAL_ARRAY);\n')
+ out.write('// glDisable(GL_COLOR_MATERIAL);\n')
+ out.write('// glDisableClientState(GL_NORMAL_ARRAY);\n\n\n')
+
+ out.close()
+
+class ObjCExporter(bpy.types.Operator):
+ #"""Export to Objectiv C header (.h)"""
+
+ bl_idname = "export.objc"
+ bl_label = "Export ObjC"
+
+ filepath = StringProperty(subtype='FILE_PATH')
+ # filepath = bpy.props.StringProperty(name="File Path", description="Filepath used for exporting the header file", maxlen= 1024, default= "")
+
+ def poll(self, context):
+ return context.active_object != None
+
+ def execute(self, context):
+ print("Executing")
+ print(self.filepath)
+ write_objc(self.filepath,context)
+ return{'FINISHED'}
+
+ def invoke(self, context, event):
+ wm = context.window_manager
+ wm.add_fileselect(self)
+ return {'RUNNING_MODAL'}
+
+def menu_func(self, context):
+ default_path = os.path.splitext(bpy.data.filepath)[0] + ".h"
+ self.layout.operator("export.objc", text="ObjectiveC header (.h)").filepath = default_path
+
+def register():
+ bpy.types.INFO_MT_file_export.append(menu_func)
+
+def unregister():
+ bpy.types.INFO_MT_file_export.remove(menu_func)
+
+if __name__ == "__main__":
+ register()
+
+#filename = os.path.splitext(bpy.data.filepath)[0] + ".h"
+#context = bpy.context
+#write_objc(filename,context)
View
9 Blender Export/objc-export-2.5/objc_blend_2.5.6/README
@@ -0,0 +1,9 @@
+This version was kindly updated and fixed by John Becker for Blender 2.5 beta 6. Instead of using the AddOn pane in preferences, this version should be installed by dropping the two files in the following path:
+
+[path to Blender.app]/Contents/MacOS/2.56/scripts/op/
+
+So, if you install Blender in the default location, that would be:
+
+/Applications/blender/blender.app/Contents/MacOS/2.56/scripts/op/
+
+
View
50 Blender Export/objc-export-2.5/objc_blend_2.5.6/__init__.py
@@ -0,0 +1,50 @@
+#
+#
+# Name: 'Objective-C Header (.h)'
+#
+#
+
+# <pep8 compliant>
+
+# To support reload properly, try to access a package var, if it's there, reload everything
+if "bpy" in locals():
+ import imp
+ if "export_objc" in locals():
+ imp.reload(export_objc)
+
+
+import bpy
+from bpy.props import *
+from io_utils import ExportHelper
+
+class ExportOBJC(bpy.types.Operator, ExportHelper):
+ '''Export to Objectiv C header (.h)'''
+ bl_idname = "export_scene.objc"
+ bl_label = "Export ObjC"
+ bl_options = {'PRESET'}
+
+ filename_ext = ".h"
+ filter_glob = StringProperty(default="*.h", options={'HIDDEN'})
+
+ filepath = bpy.props.StringProperty(name="File Path", description="Filepath used for exporting the header file", maxlen= 1024, default= "")
+
+ def execute(self, context):
+ keywords = self.as_keywords(ignore=("TX_XROT90", "TX_YROT90", "TX_ZROT90", "TX_SCALE", "check_existing", "filter_glob"))
+ import io_scene_objc.export_objc
+ return io_scene_objc.export_objc.save(self, context, **keywords)
+
+def menu_func_export(self, context):
+ self.layout.operator(ExportOBJC.bl_idname, text="ObjectiveC header (.h)")
+
+def register():
+ bpy.types.INFO_MT_file_export.append(menu_func_export)
+
+def unregister():
+ bpy.types.INFO_MT_file_export.remove(menu_func_export)
+
+if __name__ == "__main__":
+ register()
+
+#filename = os.path.splitext(bpy.data.filepath)[0] + ".h"
+#context = bpy.context
+#write_objc(filename,context)
View
166 Blender Export/objc-export-2.5/objc_blend_2.5.6/export_objc.py
@@ -0,0 +1,166 @@
+# ##### BEGIN GPL LICENSE BLOCK #####
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+#
+# ##### END GPL LICENSE BLOCK #####
+
+# <pep8 compliant>
+
+import os
+import time
+import shutil
+
+import bpy
+import mathutils
+
+def write_objc(filepath,context):
+ out = open(filepath, 'w')
+ current_scene = bpy.context.scene
+ objs = current_scene.objects
+
+ #i know there has to be an easier way to do this, but i'm too lazy to look it up
+ for next_obj in objs:
+ if next_obj.type == 'MESH':
+ mesh = next_obj
+
+ print("Writing Object")
+
+ for i in current_scene.objects:
+ i.select = False #deselect all objects
+ mesh.select = True
+ current_scene.objects.active = mesh #set the mesh object to current
+ bpy.ops.object.mode_set(mode='EDIT') #Operators
+ bpy.ops.mesh.select_all(action='SELECT')#select all the face/vertex/edge
+ bpy.ops.mesh.quads_convert_to_tris() #Operators
+ current_scene.update()
+ bpy.ops.object.mode_set(mode='OBJECT') # set it in object
+
+ mesh = mesh.data
+
+ objectname = mesh.name
+ basename = objectname.capitalize()
+
+ out.write('#import "OpenGLCommon.h"\n\n\n')
+
+ if len(mesh.uv_textures) > 0:
+ out.write('static const TexturedVertexData3D %sVertexData[] = {\n' % basename)
+ #for face in uv: #loop through the faces
+ uv_layer = mesh.active_uv_texture
+ for face in mesh.faces:
+ faceUV = uv_layer.data[face.index]
+ i=0
+ for index in face.vertices:
+ if len(face.vertices) == 3:
+ vert = mesh.vertices[index]
+ out.write('\t{/*v:*/{%f, %f, %f}, ' % (vert.co.x, vert.co.y, vert.co.z) )
+ out.write('/*n:*/{%f, %f, %f}, ' % (vert.normal.x, vert.normal.y, vert.normal.z))
+ out.write('/*t:*/{%f, %f}' % ( faceUV.uv[i][0], faceUV.uv[i][1] ) )
+ out.write('},\n')
+ i+=1
+ out.write('};\n\n')
+ elif len(mesh.vertex_colors) > 0:
+ out.write('static const ColoredVertexData3D %sVertexData[] = {\n' % basename)
+ color_layer = mesh.active_vertex_color
+ for face in mesh.faces:
+ if len(face.vertices) == 3:
+ faceC = color_layer.data[face.index]
+ i=0
+ for index in face.vertices:
+ vert = mesh.vertices[index]
+ out.write('\t{/*v:*/{%f, %f, %f}, ' % (vert.co.x, vert.co.y, vert.co.z) )
+ out.write('/*n:*/{%f, %f, %f}, ' % (vert.normal.x, vert.normal.y, vert.normal.z))
+ out.write('/*c:*/{%f, %f, %f, %f}' % ( faceC.color1[i], faceC.color2[i], faceC.color3[i], faceC.color4[i]) )
+ out.write('},\n')
+ i+=1
+ out.write('};\n\n')
+ else:
+ out.write
+ out.write('static const VertexData3D %sVertexData[] = {\n' % basename)
+ for face in mesh.faces:
+ if len(face.vertices) == 3:
+ for index in face.vertices:
+ vert = mesh.vertices[index]
+ out.write('\t{/*v:*/{%f, %f, %f}, ' % (vert.co.x, vert.co.y, vert.co.z) )
+ out.write('/*n:*/{%f, %f, %f} ' % (vert.normal.x, vert.normal.y, vert.normal.z))
+ out.write('},\n')
+ out.write('};\n\n')
+
+ #if editmode: Window.EditMode(1)
+ out.write('#define k%sNumberOfVertices\t%i\n' % (basename, len(mesh.faces) * 3) )
+
+ out.write('// Drawing Code:\n')
+ out.write('// glEnableClientState(GL_VERTEX_ARRAY);\n')
+ if len(mesh.uv_textures) > 0:
+ out.write('// glEnableClientState(GL_TEXTURE_COORD_ARRAY);\n')
+ elif len(mesh.vertex_colors) > 0:
+ out.write('// glEnableClientState(GL_COLOR_ARRAY);\n')
+ out.write('// glEnable(GL_COLOR_MATERIAL)\n')
+ out.write('// glEnableClientState(GL_NORMAL_ARRAY);\n')
+ out.write('// glVertexPointer(3, GL_FLOAT, sizeof(')
+ if len(mesh.uv_textures) > 0:
+ out.write('TexturedVertexData3D')
+ elif len(mesh.vertex_colors) > 0:
+ out.write('ColoredVertexData3D')
+ else:
+ out.write('VertexData3D')
+ out.write('), &%sVertexData[0].vertex);\n' % basename)
+ out.write('// glNormalPointer(GL_FLOAT, sizeof(')
+ if len(mesh.uv_textures) > 0:
+ out.write('TexturedVertexData3D')
+ elif len(mesh.vertex_colors) > 0:
+ out.write('ColoredVertexData3D')
+ else:
+ out.write('VertexData3D')
+ out.write('), &%sVertexData[0].normal);\n' % basename)
+ if len(mesh.uv_textures) > 0:
+ out.write('// glTexCoordPointer(2, GL_FLOAT, sizeof(TexturedVertexData3D), &%sVertexData[0].texCoord);\n' % basename)
+ elif len(mesh.vertex_colors) > 0:
+ out.write('// glColorPointer(4, GL_FLOAT, sizeof(ColoredVertexData3D), &%sVertexData[0].color);\n' % basename)
+ out.write('// glDrawArrays(GL_TRIANGLES, 0, k%sNumberOfVertices);\n' % basename)
+ out.write('// glDisableClientState(GL_VERTEX_ARRAY);\n')
+ if len(mesh.uv_textures) > 0:
+ out.write('// glDisableClientState(GL_TEXTURE_COORD_ARRAY);\n')
+ elif len(mesh.vertex_colors) > 0:
+ out.write('// glDisableClientState(GL_NORMAL_ARRAY);\n')
+ out.write('// glDisable(GL_COLOR_MATERIAL);\n')
+ out.write('// glDisableClientState(GL_NORMAL_ARRAY);\n\n\n')
+
+ out.close()
+
+
+def save(operator, context, filepath="",
+ use_triangles=False,
+ use_edges=True,
+ use_normals=False,
+ use_hq_normals=False,
+ use_uvs=True,
+ use_materials=True,
+ copy_images=False,
+ use_modifiers=True,
+ use_rotate_x90=True,
+ use_blen_objects=True,
+ group_by_object=False,
+ group_by_material=False,
+ keep_vertex_order=False,
+ use_vertex_groups=False,
+ use_nurbs=True,
+ use_selection=True,
+ use_all_scenes=False,
+ use_animation=False,
+ ):
+
+ write_objc(filepath,context)
+
+ return {'FINISHED'}
View
20 Simple OpenGL ES 2.0 Example/Classes/GLView.m
@@ -3,18 +3,14 @@
#import "GLView.h"
#import "GLViewController.h"
-// START:extension
@interface GLView ()
{
GLint backingWidth;
GLint backingHeight;
GLuint frameBuffer;
GLuint renderBuffer;
- // START_HIGHLIGHT
GLuint depthBuffer;
- // END_HIGHLIGHT
}
-// END:extension
@property (nonatomic, getter=isAnimating) BOOL animating;
@property (nonatomic, retain) EAGLContext *context;
@property (nonatomic, retain) CADisplayLink *displayLink;
@@ -51,7 +47,6 @@ - (id)initWithCoder:(NSCoder*)coder
}
return self;
}
-// START:createbuffers
- (void)createBuffers
{
glGenFramebuffers(1, &frameBuffer);
@@ -63,31 +58,26 @@ - (void)createBuffers
glGetRenderbufferParameteriv(GL_RENDERBUFFER, GL_RENDERBUFFER_WIDTH, &backingWidth);
glGetRenderbufferParameteriv(GL_RENDERBUFFER, GL_RENDERBUFFER_HEIGHT, &backingHeight);
- // START_HIGHLIGHT
glGenRenderbuffers(1, &depthBuffer);
glBindRenderbuffer(GL_RENDERBUFFER, depthBuffer);
glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH_COMPONENT16, backingWidth, backingHeight);
glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, depthBuffer);
- // END_HIGHLIGHT
}
-// END:createbuffers
-// START:destroybuffers
+
- (void)destroyBuffers
{
glDeleteFramebuffers(1, &frameBuffer);
frameBuffer = 0;
glDeleteRenderbuffers(1, &renderBuffer);
renderBuffer = 0;
-
- // START_HIGHLIGHT
+
if(depthBuffer)
{
glDeleteRenderbuffers(1, &depthBuffer);
depthBuffer = 0;
}
- // END_HIGHLIGHT
}
-// END:destroybuffers
+
- (void)drawView
{
glBindFramebuffer(GL_FRAMEBUFFER, frameBuffer);
@@ -153,7 +143,6 @@ - (void)stopAnimation
animating = NO;
}
}
-// START:dealloc
- (void)dealloc
{
[controller release], controller = nil;
@@ -168,13 +157,11 @@ - (void)dealloc
glDeleteRenderbuffers(1, &renderBuffer);
renderBuffer = 0;
}
- // START_HIGHLIGHT
if (depthBuffer)
{
glDeleteRenderbuffers(1, &depthBuffer);
depthBuffer = 0;
}
- // END_HIGHLIGHT
if ([EAGLContext currentContext] == self.context)
[EAGLContext setCurrentContext:nil];
@@ -185,5 +172,4 @@ - (void)dealloc
[super dealloc];
}
-// END:dealloc
@end
View
188 Simple OpenGL ES 2.0 Example/Icosahedron.xcodeproj/jeff.pbxuser
@@ -74,16 +74,6 @@
sepNavVisRange = "{1724, 655}";
};
};
- 1F75C6DF11ED357100367218 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = 1FA105B711EAD76400C8F896 /* GLCommon.h */;
- name = "GLCommon.h: 302";
- rLen = 0;
- rLoc = 10006;
- rType = 0;
- vrLen = 1490;
- vrLoc = 8516;
- };
1F75C6E011ED357100367218 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 1F8EF29211DD25C3001816D2 /* GLView.h */;
@@ -94,36 +84,6 @@
vrLen = 462;
vrLoc = 0;
};
- 1F75C6E111ED357100367218 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = 1F8EF33A11DD2F2A001816D2 /* Shader.vsh */;
- name = "Shader.vsh: 9";
- rLen = 0;
- rLoc = 228;
- rType = 0;
- vrLen = 228;
- vrLoc = 0;
- };
- 1F75C6E211ED357100367218 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = 1F8EF33911DD2F2A001816D2 /* Shader.fsh */;
- name = "Shader.fsh: 7";
- rLen = 0;
- rLoc = 158;
- rType = 0;
- vrLen = 158;
- vrLoc = 0;
- };
- 1F75C6E311ED357100367218 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = 1F8EF29511DD25CF001816D2 /* GLViewController.h */;
- name = "GLViewController.h: 5";
- rLen = 0;
- rLoc = 111;
- rType = 0;
- vrLen = 300;
- vrLoc = 0;
- };
1F75C74411ED444200367218 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 1F75C6D711ED355D00367218 /* GLTexture.m */;
@@ -134,26 +94,6 @@
vrLen = 1479;
vrLoc = 984;
};
- 1F75C77B11ED631E00367218 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = 1F8EF29611DD25CF001816D2 /* GLViewController.m */;
- name = "GLViewController.m: 67";
- rLen = 0;
- rLoc = 1912;
- rType = 0;
- vrLen = 1123;
- vrLoc = 1117;
- };
- 1F75C77E11ED634200367218 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = 1F8EF29611DD25CF001816D2 /* GLViewController.m */;
- name = "GLViewController.m: 67";
- rLen = 0;
- rLoc = 1912;
- rType = 0;
- vrLen = 1123;
- vrLoc = 1117;
- };
1F8B5AD811EBBF200007D955 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 1D3623240D0F684500981E51 /* Hello_GLAppDelegate.h */;
@@ -174,13 +114,13 @@
delayBeforeContinue = 0;
fileReference = 1F8EF28F11DD2520001816D2 /* GLProgram.m */;
functionName = "-initWithVertexShaderFilename:fragmentShaderFilename:";
- hitCount = 0;
+ hitCount = 1;
ignoreCount = 0;
lineNumber = 11;
- location = "Hello GL";
- modificationTime = 300666027.350446;
+ location = Pano;
+ modificationTime = 315159052.783268;
originalNumberOfMultipleMatches = 1;
- state = 0;
+ state = 1;
};
1F8B5B9711EBC67B0007D955 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
@@ -212,16 +152,6 @@
vrLen = 716;
vrLoc = 0;
};
- 1F8B608211EC261B0007D955 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = 1F8EF29311DD25C3001816D2 /* GLView.m */;
- name = "GLView.m: 1";
- rLen = 5161;
- rLoc = 0;
- rType = 0;
- vrLen = 925;
- vrLoc = 3934;
- };
1F8EF28F11DD2520001816D2 /* GLProgram.m */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {1099, 2353}}";
@@ -231,9 +161,10 @@
};
1F8EF29011DD2520001816D2 /* GLProgram.h */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {573, 366}}";
+ sepNavIntBoundsRect = "{{0, 0}, {1051, 944}}";
sepNavSelRange = "{529, 0}";
sepNavVisRange = "{0, 529}";
+ sepNavWindowFrame = "{{15, 356}, {1110, 1057}}";
};
};
1F8EF29211DD25C3001816D2 /* GLView.h */ = {
@@ -245,50 +176,110 @@
};
1F8EF29311DD25C3001816D2 /* GLView.m */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {892, 2665}}";
- sepNavSelRange = "{0, 5161}";
- sepNavVisRange = "{3934, 925}";
+ sepNavIntBoundsRect = "{{0, 0}, {892, 1925}}";
+ sepNavSelRange = "{4064, 0}";
+ sepNavVisRange = "{3621, 1204}";
};
};
1F8EF29511DD25CF001816D2 /* GLViewController.h */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {892, 495}}";
+ sepNavIntBoundsRect = "{{0, 0}, {892, 622}}";
sepNavSelRange = "{111, 0}";
sepNavVisRange = "{0, 300}";
};
};
1F8EF29611DD25CF001816D2 /* GLViewController.m */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {1099, 3328}}";
- sepNavSelRange = "{1912, 0}";
- sepNavVisRange = "{1686, 307}";
+ sepNavIntBoundsRect = "{{0, 0}, {892, 2871}}";
+ sepNavSelRange = "{584, 14}";
+ sepNavVisRange = "{166, 1627}";
};
};
1F8EF33911DD2F2A001816D2 /* Shader.fsh */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {892, 495}}";
- sepNavSelRange = "{158, 0}";
+ sepNavIntBoundsRect = "{{0, 0}, {892, 622}}";
+ sepNavSelRange = "{0, 158}";
sepNavVisRange = "{0, 158}";
};
};
1F8EF33A11DD2F2A001816D2 /* Shader.vsh */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {892, 495}}";
- sepNavSelRange = "{228, 0}";
+ sepNavIntBoundsRect = "{{0, 0}, {892, 622}}";
+ sepNavSelRange = "{0, 228}";
sepNavVisRange = "{0, 228}";
};
};
1FA105B711EAD76400C8F896 /* GLCommon.h */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {1099, 3848}}";
- sepNavSelRange = "{10006, 0}";
- sepNavVisRange = "{9717, 289}";
+ sepNavIntBoundsRect = "{{0, 0}, {892, 3487}}";
+ sepNavSelRange = "{165, 0}";
+ sepNavVisRange = "{0, 1477}";
};
};
+ 1FB6E2EC12CA29C800E7B15F /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1F8EF29311DD25C3001816D2 /* GLView.m */;
+ name = "GLView.m: 138";
+ rLen = 0;
+ rLoc = 4064;
+ rType = 0;
+ vrLen = 1204;
+ vrLoc = 3621;
+ };
+ 1FB6E2ED12CA29C800E7B15F /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1FA105B711EAD76400C8F896 /* GLCommon.h */;
+ name = "GLCommon.h: 17";
+ rLen = 0;
+ rLoc = 345;
+ rType = 0;
+ vrLen = 1477;
+ vrLoc = 0;
+ };
+ 1FB6E2F712CA2A2300E7B15F /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1FA105B711EAD76400C8F896 /* GLCommon.h */;
+ name = "GLCommon.h: 8";
+ rLen = 0;
+ rLoc = 165;
+ rType = 0;
+ vrLen = 1477;
+ vrLoc = 0;
+ };
+ 1FF5119312C8F44400963D57 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1F8EF33911DD2F2A001816D2 /* Shader.fsh */;
+ name = "Shader.fsh: 1";
+ rLen = 158;
+ rLoc = 0;
+ rType = 0;
+ vrLen = 158;
+ vrLoc = 0;
+ };
+ 1FF5119412C8F44400963D57 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1F8EF29511DD25CF001816D2 /* GLViewController.h */;
+ name = "GLViewController.h: 5";
+ rLen = 0;
+ rLoc = 111;
+ rType = 0;
+ vrLen = 300;
+ vrLoc = 0;
+ };
+ 1FF5119512C8F44400963D57 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1F8EF33A11DD2F2A001816D2 /* Shader.vsh */;
+ name = "Shader.vsh: 1";
+ rLen = 228;
+ rLoc = 0;
+ rType = 0;
+ vrLen = 228;
+ vrLoc = 0;
+ };
29B97313FDCFA39411CA2CEA /* Project object */ = {
activeBuildConfigurationName = Debug;
activeExecutable = 1F56964511E57FB800E745C0 /* Icosahedron */;
- activeSDKPreference = iphonesimulator4.0;
+ activeSDKPreference = iphonesimulator4.2;
activeTarget = 1D6058900D05DD3D006BFB54 /* Icosahedron */;
addToTargets = (
1D6058900D05DD3D006BFB54 /* Icosahedron */,
@@ -347,23 +338,22 @@
PBXFileDataSource_Target_ColumnID,
);
};
- PBXPerProjectTemplateStateSaveDate = 300770073;
- PBXWorkspaceStateSaveDate = 300770073;
+ PBXPerProjectTemplateStateSaveDate = 315238834;
+ PBXWorkspaceStateSaveDate = 315238834;
};
perUserProjectItems = {
- 1F75C6DF11ED357100367218 /* PBXTextBookmark */ = 1F75C6DF11ED357100367218 /* PBXTextBookmark */;
1F75C6E011ED357100367218 /* PBXTextBookmark */ = 1F75C6E011ED357100367218 /* PBXTextBookmark */;
- 1F75C6E111ED357100367218 /* PBXTextBookmark */ = 1F75C6E111ED357100367218 /* PBXTextBookmark */;
- 1F75C6E211ED357100367218 /* PBXTextBookmark */ = 1F75C6E211ED357100367218 /* PBXTextBookmark */;
- 1F75C6E311ED357100367218 /* PBXTextBookmark */ = 1F75C6E311ED357100367218 /* PBXTextBookmark */;
1F75C74411ED444200367218 /* PBXTextBookmark */ = 1F75C74411ED444200367218 /* PBXTextBookmark */;
- 1F75C77B11ED631E00367218 /* PBXTextBookmark */ = 1F75C77B11ED631E00367218 /* PBXTextBookmark */;
- 1F75C77E11ED634200367218 /* PBXTextBookmark */ = 1F75C77E11ED634200367218 /* PBXTextBookmark */;
1F8B5AD811EBBF200007D955 /* PBXTextBookmark */ = 1F8B5AD811EBBF200007D955 /* PBXTextBookmark */;
1F8B5B9711EBC67B0007D955 /* PBXTextBookmark */ = 1F8B5B9711EBC67B0007D955 /* PBXTextBookmark */;
1F8B5BAA11EBC69A0007D955 /* PBXTextBookmark */ = 1F8B5BAA11EBC69A0007D955 /* PBXTextBookmark */;
1F8B5D1211EBD6CF0007D955 /* PBXTextBookmark */ = 1F8B5D1211EBD6CF0007D955 /* PBXTextBookmark */;
- 1F8B608211EC261B0007D955 /* PBXTextBookmark */ = 1F8B608211EC261B0007D955 /* PBXTextBookmark */;
+ 1FB6E2EC12CA29C800E7B15F /* PBXTextBookmark */ = 1FB6E2EC12CA29C800E7B15F /* PBXTextBookmark */;
+ 1FB6E2ED12CA29C800E7B15F /* PBXTextBookmark */ = 1FB6E2ED12CA29C800E7B15F /* PBXTextBookmark */;
+ 1FB6E2F712CA2A2300E7B15F /* PBXTextBookmark */ = 1FB6E2F712CA2A2300E7B15F /* PBXTextBookmark */;
+ 1FF5119312C8F44400963D57 /* PBXTextBookmark */ = 1FF5119312C8F44400963D57 /* PBXTextBookmark */;
+ 1FF5119412C8F44400963D57 /* PBXTextBookmark */ = 1FF5119412C8F44400963D57 /* PBXTextBookmark */;
+ 1FF5119512C8F44400963D57 /* PBXTextBookmark */ = 1FF5119512C8F44400963D57 /* PBXTextBookmark */;
};
sourceControlManager = 1F56965A11E57FCD00E745C0 /* Source Control */;
userBuildSettings = {
View
89 Simple OpenGL ES 2.0 Example/Icosahedron.xcodeproj/jeff.perspectivev3
@@ -3,7 +3,7 @@
<plist version="1.0">
<dict>
<key>ActivePerspectiveName</key>
- <string>Debug</string>
+ <string>Project</string>
<key>AllowedModules</key>
<array>
<dict>
@@ -296,7 +296,7 @@
<key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
<array>
<array>
- <integer>4</integer>
+ <integer>2</integer>
<integer>1</integer>
<integer>0</integer>
</array>
@@ -318,6 +318,8 @@
<string>MainColumn</string>
<real>185</real>
</array>
+ <key>RubberWindowFrame</key>
+ <string>1017 438 1160 968 0 0 2560 1418 </string>
</dict>
<key>Module</key>
<string>PBXSmartGroupTreeModule</string>
@@ -328,12 +330,14 @@
<key>Dock</key>
<array>
<dict>
+ <key>BecomeActive</key>
+ <true/>
<key>ContentConfiguration</key>
<dict>
<key>PBXProjectModuleGUID</key>
<string>1F56965211E57FCD00E745C0</string>
<key>PBXProjectModuleLabel</key>
- <string>GLViewController.m</string>
+ <string>GLCommon.h</string>
<key>PBXSplitModuleInNavigatorKey</key>
<dict>
<key>Split0</key>
@@ -341,25 +345,24 @@
<key>PBXProjectModuleGUID</key>
<string>1F56965311E57FCD00E745C0</string>
<key>PBXProjectModuleLabel</key>
- <string>GLViewController.m</string>
+ <string>GLCommon.h</string>
<key>_historyCapacity</key>
<integer>0</integer>
<key>bookmark</key>
- <string>1F75C77E11ED634200367218</string>
+ <string>1FB6E2F712CA2A2300E7B15F</string>
<key>history</key>
<array>
<string>1F8B5AD811EBBF200007D955</string>
<string>1F8B5B9711EBC67B0007D955</string>
<string>1F8B5BAA11EBC69A0007D955</string>
<string>1F8B5D1211EBD6CF0007D955</string>
- <string>1F8B608211EC261B0007D955</string>
- <string>1F75C6DF11ED357100367218</string>
<string>1F75C6E011ED357100367218</string>
- <string>1F75C6E111ED357100367218</string>
- <string>1F75C6E211ED357100367218</string>
- <string>1F75C6E311ED357100367218</string>
<string>1F75C74411ED444200367218</string>
- <string>1F75C77B11ED631E00367218</string>
+ <string>1FF5119312C8F44400963D57</string>
+ <string>1FF5119412C8F44400963D57</string>
+ <string>1FF5119512C8F44400963D57</string>
+ <string>1FB6E2EC12CA29C800E7B15F</string>
+ <string>1FB6E2ED12CA29C800E7B15F</string>
</array>
</dict>
<key>SplitCount</key>
@@ -373,16 +376,18 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
- <string>{{0, 0}, {953, 483}}</string>
+ <string>{{0, 0}, {953, 626}}</string>
+ <key>RubberWindowFrame</key>
+ <string>1017 438 1160 968 0 0 2560 1418 </string>
</dict>
<key>Module</key>
<string>PBXNavigatorGroup</string>
<key>Proportion</key>
- <string>483pt</string>
+ <string>626pt</string>
</dict>
<dict>
<key>Proportion</key>
- <string>439pt</string>
+ <string>296pt</string>
<key>Tabs</key>
<array>
<dict>
@@ -396,7 +401,9 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
- <string>{{10, 27}, {953, 412}}</string>
+ <string>{{10, 27}, {953, 269}}</string>
+ <key>RubberWindowFrame</key>
+ <string>1017 438 1160 968 0 0 2560 1418 </string>
</dict>
<key>Module</key>
<string>XCDetailModule</string>
@@ -412,7 +419,7 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
- <string>{{10, 31}, {603, 297}}</string>
+ <string>{{10, 27}, {953, 256}}</string>
</dict>
<key>Module</key>
<string>PBXProjectFindModule</string>
@@ -450,7 +457,7 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
- <string>{{10, 27}, {953, 412}}</string>
+ <string>{{10, 27}, {953, 262}}</string>
</dict>
<key>Module</key>
<string>PBXBuildResultsModule</string>
@@ -478,11 +485,11 @@
</array>
<key>TableOfContents</key>
<array>
- <string>1F75C76F11ED631B00367218</string>
+ <string>1FB6E2EF12CA29C800E7B15F</string>
<string>1CA23ED40692098700951B8B</string>
- <string>1F75C77011ED631B00367218</string>
+ <string>1FB6E2F012CA29C800E7B15F</string>
<string>1F56965211E57FCD00E745C0</string>
- <string>1F75C77111ED631B00367218</string>
+ <string>1FB6E2F112CA29C800E7B15F</string>
<string>1CA23EDF0692099D00951B8B</string>
<string>1CA23EE00692099D00951B8B</string>
<string>1CA23EE10692099D00951B8B</string>
@@ -523,8 +530,6 @@
<key>Layout</key>
<array>
<dict>
- <key>BecomeActive</key>
- <true/>
<key>ContentConfiguration</key>
<dict>
<key>PBXProjectModuleGUID</key>
@@ -535,14 +540,12 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
- <string>{{0, 0}, {1160, 596}}</string>
- <key>RubberWindowFrame</key>
- <string>67 202 1160 968 0 0 1920 1178 </string>
+ <string>{{0, 0}, {1160, 589}}</string>
</dict>
<key>Module</key>
<string>PBXDebugCLIModule</string>
<key>Proportion</key>
- <string>596pt</string>
+ <string>589pt</string>
</dict>
<dict>
<key>ContentConfiguration</key>
@@ -561,8 +564,8 @@
<string>yes</string>
<key>sizes</key>
<array>
- <string>{{0, 0}, {566, 161}}</string>
- <string>{{566, 0}, {594, 161}}</string>
+ <string>{{0, 0}, {566, 164}}</string>
+ <string>{{566, 0}, {594, 164}}</string>
</array>
</dict>
<key>VerticalSplitView</key>
@@ -577,8 +580,8 @@
<string>yes</string>
<key>sizes</key>
<array>
- <string>{{0, 0}, {1160, 161}}</string>
- <string>{{0, 161}, {1160, 165}}</string>
+ <string>{{0, 0}, {1160, 164}}</string>
+ <string>{{0, 164}, {1160, 169}}</string>
</array>
</dict>
</dict>
@@ -598,7 +601,7 @@
<key>DebugSTDIOWindowFrame</key>
<string>{{200, 200}, {500, 300}}</string>
<key>Frame</key>
- <string>{{0, 601}, {1160, 326}}</string>
+ <string>{{0, 594}, {1160, 333}}</string>
<key>PBXDebugSessionStackFrameViewKey</key>
<dict>
<key>DebugVariablesTableConfiguration</key>
@@ -611,17 +614,13 @@
<real>364</real>
</array>
<key>Frame</key>
- <string>{{566, 0}, {594, 161}}</string>
- <key>RubberWindowFrame</key>
- <string>67 202 1160 968 0 0 1920 1178 </string>
+ <string>{{566, 0}, {594, 164}}</string>
</dict>
- <key>RubberWindowFrame</key>
- <string>67 202 1160 968 0 0 1920 1178 </string>
</dict>
<key>Module</key>
<string>PBXDebugSessionModule</string>
<key>Proportion</key>
- <string>326pt</string>
+ <string>333pt</string>
</dict>
</array>
<key>Name</key>
@@ -639,13 +638,13 @@
</array>
<key>TableOfContents</key>
<array>
- <string>1F75C77211ED631B00367218</string>
+ <string>1FF511AB12C8F44E00963D57</string>
<string>1CCC7628064C1048000F2A68</string>
<string>1CCC7629064C1048000F2A68</string>
- <string>1F75C77311ED631B00367218</string>
- <string>1F75C77411ED631B00367218</string>
- <string>1F75C77511ED631B00367218</string>
- <string>1F75C77611ED631B00367218</string>
+ <string>1FF511AC12C8F44E00963D57</string>
+ <string>1FF511AD12C8F44E00963D57</string>
+ <string>1FF511AE12C8F44E00963D57</string>
+ <string>1FF511AF12C8F44E00963D57</string>
<string>1F56965211E57FCD00E745C0</string>
</array>
<key>ToolbarConfigUserDefaultsMinorVersion</key>
@@ -663,7 +662,7 @@
<key>StatusbarIsVisible</key>
<true/>
<key>TimeStamp</key>
- <real>300770114.42667198</real>
+ <real>315238947.99360901</real>
<key>ToolbarConfigUserDefaultsMinorVersion</key>
<string>2</string>
<key>ToolbarDisplayMode</key>
@@ -680,10 +679,10 @@
<integer>5</integer>
<key>WindowOrderList</key>
<array>
- <string>/Users/jeff/Documents/jmog/Book/code/Textures/3D Texture Mapping/Icosahedron.xcodeproj</string>
+ <string>/Users/jeff/dev/iOS 3D Stuff/Simple OpenGL ES 2.0 Example/Icosahedron.xcodeproj</string>
</array>
<key>WindowString</key>
- <string>67 202 1160 968 0 0 1920 1178 </string>
+ <string>1017 438 1160 968 0 0 2560 1418 </string>
<key>WindowToolsV3</key>
<array>
<dict>
View
11 Simple OpenGL ES 2.0 Example/Icosahedron.xcodeproj/project.pbxproj
@@ -173,7 +173,14 @@
isa = PBXProject;
buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "Icosahedron" */;
compatibilityVersion = "Xcode 3.1";
+ developmentRegion = English;
hasScannedForEncodings = 1;
+ knownRegions = (
+ English,
+ Japanese,
+ French,
+ German,
+ );
mainGroup = 29B97314FDCFA39411CA2CEA /* CustomTemplate */;
projectDirPath = "";
projectRoot = "";
@@ -258,7 +265,7 @@
"-fobjc-nonfragile-abi2",
);
PREBINDING = NO;
- SDKROOT = iphoneos4.0;
+ SDKROOT = iphoneos;
};
name = Debug;
};
@@ -273,7 +280,7 @@
IPHONEOS_DEPLOYMENT_TARGET = 4.0;
OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1";
PREBINDING = NO;
- SDKROOT = iphoneos4.0;
+ SDKROOT = iphoneos;
};
name = Release;
};
View
109 Simple Per-Vertex Directional Lighting/Icosahedron.xcodeproj/jeff.pbxuser
@@ -115,16 +115,16 @@
};
1F8EF29211DD25C3001816D2 /* GLView.h */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {1099, 198}}";
+ sepNavIntBoundsRect = "{{0, 0}, {1254, 905}}";
sepNavSelRange = "{462, 0}";
- sepNavVisRange = "{24, 438}";
+ sepNavVisRange = "{0, 462}";
};
};
1F8EF29311DD25C3001816D2 /* GLView.m */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {1099, 2090}}";
- sepNavSelRange = "{0, 5161}";
- sepNavVisRange = "{3934, 431}";
+ sepNavIntBoundsRect = "{{0, 0}, {1254, 1991}}";
+ sepNavSelRange = "{1517, 0}";
+ sepNavVisRange = "{0, 2585}";
};
};
1F8EF29511DD25CF001816D2 /* GLViewController.h */ = {
@@ -136,9 +136,9 @@
};
1F8EF29611DD25CF001816D2 /* GLViewController.m */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {1461, 3729}}";
- sepNavSelRange = "{10887, 0}";
- sepNavVisRange = "{10557, 442}";
+ sepNavIntBoundsRect = "{{0, 0}, {1254, 3685}}";
+ sepNavSelRange = "{4743, 0}";
+ sepNavVisRange = "{2362, 3056}";
sepNavWindowFrame = "{{15, 4}, {1480, 1054}}";
};
};
@@ -151,18 +151,52 @@
};
1F8EF33A11DD2F2A001816D2 /* Shader.vsh */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {1254, 616}}";
+ sepNavIntBoundsRect = "{{0, 0}, {1461, 297}}";
sepNavSelRange = "{497, 0}";
- sepNavVisRange = "{0, 601}";
+ sepNavVisRange = "{167, 433}";
};
};
+ 1F9D31E212C1471B00DEFF1E /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1F8EF29311DD25C3001816D2 /* GLView.m */;
+ name = "GLView.m: 58";
+ rLen = 0;
+ rLoc = 1517;
+ rType = 0;
+ vrLen = 2585;
+ vrLoc = 0;
+ };
1FA105B711EAD76400C8F896 /* GLCommon.h */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {1254, 3245}}";
+ sepNavIntBoundsRect = "{{0, 0}, {1254, 3256}}";
sepNavSelRange = "{10006, 0}";
- sepNavVisRange = "{7886, 2120}";
+ sepNavVisRange = "{6703, 3303}";
};
};
+ 1FAAD11F1279E53700A7B79E /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1F8EF33A11DD2F2A001816D2 /* Shader.vsh */;
+ name = "Shader.vsh: 20";
+ rLen = 0;
+ rLoc = 497;
+ rType = 0;
+ vrLen = 601;
+ vrLoc = 0;
+ };
+ 1FAAD1221279E82100A7B79E /* PBXBookmark */ = {
+ isa = PBXBookmark;
+ fRef = 1F75C74011ED443800367218 /* DieTexture.png */;
+ };
+ 1FAAD1231279E82100A7B79E /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1F8EF29211DD25C3001816D2 /* GLView.h */;
+ name = "GLView.h: 18";
+ rLen = 0;
+ rLoc = 462;
+ rType = 0;
+ vrLen = 462;
+ vrLoc = 0;
+ };
1FEFBA5A126FD1F20058B428 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 1FEFBA5B126FD1F20058B428 /* UIView.h */;
@@ -217,16 +251,6 @@
vrLen = 300;
vrLoc = 0;
};
- 1FEFBB3F126FDE7D0058B428 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = 1FA105B711EAD76400C8F896 /* GLCommon.h */;
- name = "GLCommon.h: 302";
- rLen = 0;
- rLoc = 10006;
- rType = 0;
- vrLen = 2120;
- vrLoc = 7886;
- };
1FEFBBA9126FE1720058B428 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 1F75C6D611ED355D00367218 /* GLTexture.h */;
@@ -267,25 +291,25 @@
vrLen = 1462;
vrLoc = 0;
};
- 1FEFBCC3126FED710058B428 /* PBXTextBookmark */ = {
+ 1FF5129B12C9187C00963D57 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
- fRef = 1F8EF33A11DD2F2A001816D2 /* Shader.vsh */;
- name = "Shader.vsh: 8";
- rLen = 17;
- rLoc = 147;
+ fRef = 1FA105B711EAD76400C8F896 /* GLCommon.h */;
+ name = "GLCommon.h: 302";
+ rLen = 0;
+ rLoc = 10006;
rType = 0;
- vrLen = 594;
- vrLoc = 0;
+ vrLen = 3303;
+ vrLoc = 6703;
};
- 1FEFBCC6126FED7D0058B428 /* PBXTextBookmark */ = {
+ 1FF5129C12C9187C00963D57 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
- fRef = 1F8EF33A11DD2F2A001816D2 /* Shader.vsh */;
- name = "Shader.vsh: 20";
+ fRef = 1F8EF29611DD25CF001816D2 /* GLViewController.m */;
+ name = "GLViewController.m: 142";
rLen = 0;
- rLoc = 497;
+ rLoc = 4743;
rType = 0;
- vrLen = 601;
- vrLoc = 0;
+ vrLen = 3056;
+ vrLoc = 2362;
};
29B97313FDCFA39411CA2CEA /* Project object */ = {
activeBuildConfigurationName = Debug;
@@ -332,7 +356,7 @@
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
PBXFileTableDataSourceColumnWidthsKey = (
20,
- 1076,
+ 10,
20,
48,
43,
@@ -349,21 +373,24 @@
PBXFileDataSource_Target_ColumnID,
);
};
- PBXPerProjectTemplateStateSaveDate = 309325104;
- PBXWorkspaceStateSaveDate = 309325104;
+ PBXPerProjectTemplateStateSaveDate = 315168876;
+ PBXWorkspaceStateSaveDate = 315168876;
};
perUserProjectItems = {
+ 1F9D31E212C1471B00DEFF1E /* PBXTextBookmark */ = 1F9D31E212C1471B00DEFF1E /* PBXTextBookmark */;
+ 1FAAD11F1279E53700A7B79E /* PBXTextBookmark */ = 1FAAD11F1279E53700A7B79E /* PBXTextBookmark */;
+ 1FAAD1221279E82100A7B79E /* PBXBookmark */ = 1FAAD1221279E82100A7B79E /* PBXBookmark */;
+ 1FAAD1231279E82100A7B79E /* PBXTextBookmark */ = 1FAAD1231279E82100A7B79E /* PBXTextBookmark */;
1FEFBA5A126FD1F20058B428 /* PBXTextBookmark */ = 1FEFBA5A126FD1F20058B428 /* PBXTextBookmark */;
1FEFBA5C126FD1F20058B428 /* PBXTextBookmark */ = 1FEFBA5C126FD1F20058B428 /* PBXTextBookmark */;
1FEFBAAD126FD4870058B428 /* PBXTextBookmark */ = 1FEFBAAD126FD4870058B428 /* PBXTextBookmark */;
1FEFBB3E126FDE7D0058B428 /* PBXTextBookmark */ = 1FEFBB3E126FDE7D0058B428 /* PBXTextBookmark */;
- 1FEFBB3F126FDE7D0058B428 /* PBXTextBookmark */ = 1FEFBB3F126FDE7D0058B428 /* PBXTextBookmark */;
1FEFBBA9126FE1720058B428 /* PBXTextBookmark */ = 1FEFBBA9126FE1720058B428 /* PBXTextBookmark */;
1FEFBC7D126FE6F00058B428 /* PBXTextBookmark */ = 1FEFBC7D126FE6F00058B428 /* PBXTextBookmark */;
1FEFBC7E126FE6F00058B428 /* PBXTextBookmark */ = 1FEFBC7E126FE6F00058B428 /* PBXTextBookmark */;
1FEFBCC2126FED710058B428 /* PBXTextBookmark */ = 1FEFBCC2126FED710058B428 /* PBXTextBookmark */;
- 1FEFBCC3126FED710058B428 /* PBXTextBookmark */ = 1FEFBCC3126FED710058B428 /* PBXTextBookmark */;
- 1FEFBCC6126FED7D0058B428 /* PBXTextBookmark */ = 1FEFBCC6126FED7D0058B428 /* PBXTextBookmark */;
+ 1FF5129B12C9187C00963D57 /* PBXTextBookmark */ = 1FF5129B12C9187C00963D57 /* PBXTextBookmark */;
+ 1FF5129C12C9187C00963D57 /* PBXTextBookmark */ = 1FF5129C12C9187C00963D57 /* PBXTextBookmark */;
};
sourceControlManager = 1F56965A11E57FCD00E745C0 /* Source Control */;
userBuildSettings = {
View
83 Simple Per-Vertex Directional Lighting/Icosahedron.xcodeproj/jeff.perspectivev3
@@ -3,7 +3,7 @@
<plist version="1.0">
<dict>
<key>ActivePerspectiveName</key>
- <string>Debug</string>
+ <string>Project</string>
<key>AllowedModules</key>
<array>
<dict>
@@ -297,8 +297,8 @@
<key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
<array>
<array>
- <integer>17</integer>
- <integer>14</integer>
+ <integer>4</integer>
+ <integer>1</integer>
<integer>0</integer>
</array>
</array>
@@ -319,6 +319,8 @@
<string>MainColumn</string>
<real>185</real>
</array>
+ <key>RubberWindowFrame</key>
+ <string>698 181 1522 968 0 0 2560 1418 </string>
</dict>
<key>Module</key>
<string>PBXSmartGroupTreeModule</string>
@@ -329,12 +331,14 @@
<key>Dock</key>
<array>
<dict>
+ <key>BecomeActive</key>
+ <true/>
<key>ContentConfiguration</key>
<dict>
<key>PBXProjectModuleGUID</key>
<string>1F56965211E57FCD00E745C0</string>
<key>PBXProjectModuleLabel</key>
- <string>Shader.vsh</string>
+ <string>GLViewController.m</string>
<key>PBXSplitModuleInNavigatorKey</key>
<dict>
<key>Split0</key>
@@ -342,23 +346,26 @@
<key>PBXProjectModuleGUID</key>
<string>1F56965311E57FCD00E745C0</string>
<key>PBXProjectModuleLabel</key>
- <string>Shader.vsh</string>
+ <string>GLViewController.m</string>
<key>_historyCapacity</key>
<integer>0</integer>
<key>bookmark</key>
- <string>1FEFBCC6126FED7D0058B428</string>
+ <string>1FF5129C12C9187C00963D57</string>
<key>history</key>
<array>
<string>1FEFBA5A126FD1F20058B428</string>
<string>1FEFBA5C126FD1F20058B428</string>
<string>1FEFBAAD126FD4870058B428</string>
<string>1FEFBB3E126FDE7D0058B428</string>
- <string>1FEFBB3F126FDE7D0058B428</string>
<string>1FEFBBA9126FE1720058B428</string>
<string>1FEFBC7D126FE6F00058B428</string>
<string>1FEFBC7E126FE6F00058B428</string>
+ <string>1FAAD11F1279E53700A7B79E</string>
+ <string>1FAAD1221279E82100A7B79E</string>
+ <string>1FAAD1231279E82100A7B79E</string>
+ <string>1F9D31E212C1471B00DEFF1E</string>
+ <string>1FF5129B12C9187C00963D57</string>
<string>1FEFBCC2126FED710058B428</string>
- <string>1FEFBCC3126FED710058B428</string>
</array>
</dict>
<key>SplitCount</key>
@@ -372,16 +379,18 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
- <string>{{0, 0}, {1315, 633}}</string>
+ <string>{{0, 0}, {1315, 922}}</string>
+ <key>RubberWindowFrame</key>
+ <string>698 181 1522 968 0 0 2560 1418 </string>
</dict>
<key>Module</key>
<string>PBXNavigatorGroup</string>
<key>Proportion</key>
- <string>633pt</string>
+ <string>922pt</string>
</dict>
<dict>
<key>Proportion</key>
- <string>289pt</string>
+ <string>0pt</string>
<key>Tabs</key>
<array>
<dict>
@@ -395,7 +404,9 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
- <string>{{10, 27}, {1315, 262}}</string>
+ <string>{{10, 27}, {1315, -27}}</string>
+ <key>RubberWindowFrame</key>
+ <string>698 181 1522 968 0 0 2560 1418 </string>
</dict>
<key>Module</key>
<string>XCDetailModule</string>
@@ -449,7 +460,7 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
- <string>{{10, 27}, {1315, 262}}</string>
+ <string>{{10, 27}, {1315, 269}}</string>
</dict>
<key>Module</key>
<string>PBXBuildResultsModule</string>
@@ -477,11 +488,11 @@
</array>
<key>TableOfContents</key>
<array>
- <string>1FEFBCB5126FED580058B428</string>
+ <string>1FF5129D12C9187C00963D57</string>
<string>1CA23ED40692098700951B8B</string>
- <string>1FEFBCB6126FED580058B428</string>
+ <string>1FF5129E12C9187C00963D57</string>
<string>1F56965211E57FCD00E745C0</string>
- <string>1FEFBCB7126FED580058B428</string>
+ <string>1FF5129F12C9187C00963D57</string>
<string>1CA23EDF0692099D00951B8B</string>
<string>1CA23EE00692099D00951B8B</string>
<string>1CA23EE10692099D00951B8B</string>
@@ -522,8 +533,6 @@
<key>Layout</key>
<array>
<dict>
- <key>BecomeActive</key>
- <true/>
<key>ContentConfiguration</key>
<dict>
<key>PBXProjectModuleGUID</key>
@@ -534,14 +543,12 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
- <string>{{0, 0}, {1522, 549}}</string>
- <key>RubberWindowFrame</key>
- <string>207 71 1522 968 0 0 1920 1058 </string>
+ <string>{{0, 0}, {1522, 532}}</string>
</dict>
<key>Module</key>
<string>PBXDebugCLIModule</string>
<key>Proportion</key>
- <string>549pt</string>
+ <string>532pt</string>
</dict>
<dict>
<key>ContentConfiguration</key>
@@ -560,8 +567,8 @@
<string>yes</string>
<key>sizes</key>
<array>
- <string>{{0, 0}, {743, 186}}</string>
- <string>{{743, 0}, {779, 186}}</string>
+ <string>{{0, 0}, {743, 194}}</string>
+ <string>{{743, 0}, {779, 194}}</string>
</array>
</dict>
<key>VerticalSplitView</key>
@@ -576,8 +583,8 @@
<string>yes</string>
<key>sizes</key>
<array>
- <string>{{0, 0}, {1522, 186}}</string>
- <string>{{0, 186}, {1522, 187}}</string>
+ <string>{{0, 0}, {1522, 194}}</string>
+ <string>{{0, 194}, {1522, 196}}</string>
</array>
</dict>
</dict>
@@ -597,7 +604,7 @@
<key>DebugSTDIOWindowFrame</key>
<string>{{200, 200}, {500, 300}}</string>
<key>Frame</key>
- <string>{{0, 554}, {1522, 373}}</string>
+ <string>{{0, 537}, {1522, 390}}</string>
<key>PBXDebugSessionStackFrameViewKey</key>
<dict>
<key>DebugVariablesTableConfiguration</key>
@@ -610,17 +617,13 @@
<real>549</real>
</array>
<key>Frame</key>
- <string>{{743, 0}, {779, 186}}</string>
- <key>RubberWindowFrame</key>
- <string>207 71 1522 968 0 0 1920 1058 </string>
+ <string>{{743, 0}, {779, 194}}</string>
</dict>
- <key>RubberWindowFrame</key>
- <string>207 71 1522 968 0 0 1920 1058 </string>
</dict>
<key>Module</key>
<string>PBXDebugSessionModule</string>
<key>Proportion</key>
- <string>373pt</string>
+ <string>390pt</string>
</dict>
</array>
<key>Name</key>
@@ -638,13 +641,13 @@
</array>
<key>TableOfContents</key>
<array>
- <string>1FEFBCB8126FED580058B428</string>
+ <string>1FAAD1181279E4EF00A7B79E</string>
<string>1CCC7628064C1048000F2A68</string>
<string>1CCC7629064C1048000F2A68</string>
- <string>1FEFBCB9126FED580058B428</string>
- <string>1FEFBCBA126FED580058B428</string>
- <string>1FEFBCBB126FED580058B428</string>
- <string>1FEFBCBC126FED580058B428</string>
+ <string>1FAAD1191279E4EF00A7B79E</string>
+ <string>1FAAD11A1279E4EF00A7B79E</string>
+ <string>1FAAD11B1279E4EF00A7B79E</string>
+ <string>1FAAD11C1279E4EF00A7B79E</string>
<string>1F56965211E57FCD00E745C0</string>
</array>
<key>ToolbarConfigUserDefaultsMinorVersion</key>
@@ -662,7 +665,7 @@
<key>StatusbarIsVisible</key>
<true/>
<key>TimeStamp</key>
- <real>309325181.84135598</real>
+ <real>315168892.88903898</real>
<key>ToolbarConfigUserDefaultsMinorVersion</key>
<string>2</string>
<key>ToolbarDisplayMode</key>
@@ -682,7 +685,7 @@
<string>/Users/jeff/dev/iOS 3D Stuff/Simple Per-Vertex Directional Lighting/Icosahedron.xcodeproj</string>
</array>
<key>WindowString</key>
- <string>207 71 1522 968 0 0 1920 1058 </string>
+ <string>698 181 1522 968 0 0 2560 1418 </string>
<key>WindowToolsV3</key>
<array>
<dict>
View
2  Simple Per-Vertex Directional Lighting/Icosahedron.xcodeproj/project.pbxproj
@@ -96,7 +96,6 @@
1FB38EF911DD2D5C00047889 /* Shaders */ = {
isa = PBXGroup;
children = (
- 1F75C74011ED443800367218 /* DieTexture.png */,
1F8EF33911DD2F2A001816D2 /* Shader.fsh */,
1F8EF33A11DD2F2A001816D2 /* Shader.vsh */,
);
@@ -128,6 +127,7 @@
29B97317FDCFA39411CA2CEA /* Resources */ = {
isa = PBXGroup;
children = (
+ 1F75C74011ED443800367218 /* DieTexture.png */,
28AD733E0D9D9553002E5188 /* MainWindow.xib */,
8D1107310486CEB800E47090 /* Hello_GL-Info.plist */,
);
Please sign in to comment.
Something went wrong with that request. Please try again.