From dda9bf58411d1248dab379555fb5c64dd0ce25e7 Mon Sep 17 00:00:00 2001 From: Patrick Pietens Date: Mon, 14 Nov 2011 16:13:18 +0100 Subject: [PATCH 1/3] Added CubeTransition --- Classes/HMGLTransitions/CubeTransition.h | 25 +++++++ Classes/HMGLTransitions/CubeTransition.m | 92 ++++++++++++++++++++++++ 2 files changed, 117 insertions(+) create mode 100644 Classes/HMGLTransitions/CubeTransition.h create mode 100644 Classes/HMGLTransitions/CubeTransition.m diff --git a/Classes/HMGLTransitions/CubeTransition.h b/Classes/HMGLTransitions/CubeTransition.h new file mode 100644 index 0000000..fc9acfb --- /dev/null +++ b/Classes/HMGLTransitions/CubeTransition.h @@ -0,0 +1,25 @@ +// +// CubeTransition.h +// HMGLTransitions +// +// Created by Patrick Pietens on 11/14/11. +// Copyright (c) 2011 PatrickPietens.com. All rights reserved. +// + +#import +#import "HMGLTransition.h" + +typedef enum { + CubeTransitionRight, + CubeTransitionLeft +} CubeTransitionType; + +@interface CubeTransition : HMGLTransition +{ + CubeTransitionType transitionType; + GLfloat animationTime; +} + +@property (nonatomic, assign) CubeTransitionType transitionType; + +@end diff --git a/Classes/HMGLTransitions/CubeTransition.m b/Classes/HMGLTransitions/CubeTransition.m new file mode 100644 index 0000000..9b25ead --- /dev/null +++ b/Classes/HMGLTransitions/CubeTransition.m @@ -0,0 +1,92 @@ +// +// CubeTransition.m +// HMGLTransitions +// +// Created by Patrick Pietens on 11/14/11. +// Copyright (c) 2011 PatrickPietens.com. All rights reserved. +// + +#import "CubeTransition.h" + +@implementation CubeTransition + +@synthesize transitionType; + +- (id)init +{ + if (self = [super init]) + { + transitionType = CubeTransitionLeft; + } + + return self; +} + + +- (void)initTransition +{ + glMatrixMode(GL_PROJECTION); + glLoadIdentity(); + glFrustumf(-0.1, 0.1, -0.1, 0.1, 0.1, 100.0); + + glEnable(GL_DEPTH_TEST); + glEnable(GL_CULL_FACE); + + glDisable(GL_LIGHTING); + glColor4f(1.0, 1.0, 1.0, 1.0); + + animationTime = 0; +} + + +- (void)drawWithBeginTexture:(GLuint)beginTexture endTexture:(GLuint)endTexture +{ + glClearColor(0.0, 0.0, 0.0, 1.0); + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + + GLfloat vertices[] = { + -0.5, -0.5, + 0.5, -0.5, + -0.5, 0.5, + 0.5, 0.5, + }; + + glEnable(GL_TEXTURE_2D); + + glVertexPointer(2, GL_FLOAT, 0, vertices); + glEnableClientState(GL_VERTEX_ARRAY); + glTexCoordPointer(2, GL_FLOAT, 0, &basicTexCoords); + glEnableClientState(GL_TEXTURE_COORD_ARRAY); + + + glMatrixMode(GL_MODELVIEW); + glLoadIdentity(); + + glPushMatrix(); + // begin view + glBindTexture(GL_TEXTURE_2D, beginTexture); + glTranslatef(0, 0, -1.0 - sin(animationTime*2)*0.15 ); + glRotatef(sin(animationTime) * -90, 0, 1, 0); + glTranslatef(0, 0, 0.5); + glDrawArrays(GL_TRIANGLE_STRIP, 0, 4); + glPopMatrix(); + + glPushMatrix(); + // end view + glBindTexture(GL_TEXTURE_2D, endTexture); + glTranslatef(0, 0, -1.0- sin(animationTime*2)*0.15 ); + glRotatef(sin(animationTime) * -90, 0, 1, 0); + glTranslatef( 0.5, 0.0, 0); + glRotatef( 90, 0, 1, 0 ); + glDrawArrays(GL_TRIANGLE_STRIP, 0, 4); + glPopMatrix(); +} + + +- (BOOL)calc:(NSTimeInterval)frameTime +{ + animationTime += M_PI * 0.5 * frameTime * 1.25; + return animationTime > M_PI * 0.5; +} + +@end From b32337182974549dcf6c3b3ed8f6175355698d74 Mon Sep 17 00:00:00 2001 From: Patrick Pietens Date: Mon, 14 Nov 2011 16:27:44 +0100 Subject: [PATCH 2/3] Added CubeTransition to project file --- Classes/HMGLTransitions/CubeTransition.m | 4 +- HMGLTransitions.xcodeproj/project.pbxproj | 10 ++- .../contents.xcworkspacedata | 7 ++ .../UserInterfaceState.xcuserstate | Bin 0 -> 8125 bytes .../xcschemes/HMGLTransitions.xcscheme | 84 ++++++++++++++++++ .../xcschemes/xcschememanagement.plist | 22 +++++ 6 files changed, 123 insertions(+), 4 deletions(-) create mode 100644 HMGLTransitions.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 HMGLTransitions.xcodeproj/project.xcworkspace/xcuserdata/patrickpietens.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 HMGLTransitions.xcodeproj/xcuserdata/patrickpietens.xcuserdatad/xcschemes/HMGLTransitions.xcscheme create mode 100644 HMGLTransitions.xcodeproj/xcuserdata/patrickpietens.xcuserdatad/xcschemes/xcschememanagement.plist diff --git a/Classes/HMGLTransitions/CubeTransition.m b/Classes/HMGLTransitions/CubeTransition.m index 9b25ead..06df3ec 100644 --- a/Classes/HMGLTransitions/CubeTransition.m +++ b/Classes/HMGLTransitions/CubeTransition.m @@ -65,7 +65,7 @@ - (void)drawWithBeginTexture:(GLuint)beginTexture endTexture:(GLuint)endTexture glPushMatrix(); // begin view glBindTexture(GL_TEXTURE_2D, beginTexture); - glTranslatef(0, 0, -1.0 - sin(animationTime*2)*0.15 ); + glTranslatef(0, 0, -1.0 ); glRotatef(sin(animationTime) * -90, 0, 1, 0); glTranslatef(0, 0, 0.5); glDrawArrays(GL_TRIANGLE_STRIP, 0, 4); @@ -74,7 +74,7 @@ - (void)drawWithBeginTexture:(GLuint)beginTexture endTexture:(GLuint)endTexture glPushMatrix(); // end view glBindTexture(GL_TEXTURE_2D, endTexture); - glTranslatef(0, 0, -1.0- sin(animationTime*2)*0.15 ); + glTranslatef(0, 0, -1.0 ); glRotatef(sin(animationTime) * -90, 0, 1, 0); glTranslatef( 0.5, 0.0, 0); glRotatef( 90, 0, 1, 0 ); diff --git a/HMGLTransitions.xcodeproj/project.pbxproj b/HMGLTransitions.xcodeproj/project.pbxproj index 7476f18..f650e34 100755 --- a/HMGLTransitions.xcodeproj/project.pbxproj +++ b/HMGLTransitions.xcodeproj/project.pbxproj @@ -16,6 +16,7 @@ 28AD733F0D9D9553002E5188 /* MainWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = 28AD733E0D9D9553002E5188 /* MainWindow.xib */; }; 28D7ACF80DDB3853001CB0EB /* RootViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 28D7ACF70DDB3853001CB0EB /* RootViewController.m */; }; 55F884E3142A0B47008F9C14 /* MainWindow~ipad.xib in Resources */ = {isa = PBXBuildFile; fileRef = 55F884E2142A0B47008F9C14 /* MainWindow~ipad.xib */; }; + 87B7430C14716AD00019895C /* CubeTransition.m in Sources */ = {isa = PBXBuildFile; fileRef = 87B7430B14716AD00019895C /* CubeTransition.m */; }; AC13782B124ECCD800D21E3F /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AC13782A124ECCD800D21E3F /* QuartzCore.framework */; }; AC137831124ECCDC00D21E3F /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AC137830124ECCDC00D21E3F /* OpenGLES.framework */; }; AC137845124ECD2B00D21E3F /* HMGLTransition.m in Sources */ = {isa = PBXBuildFile; fileRef = AC13783C124ECD2B00D21E3F /* HMGLTransition.m */; }; @@ -45,11 +46,13 @@ 288765A40DF7441C002DB57D /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; 2899E5210DE3E06400AC0155 /* RootViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = RootViewController.xib; sourceTree = ""; }; 28AD733E0D9D9553002E5188 /* MainWindow.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MainWindow.xib; sourceTree = ""; }; - 28D7ACF60DDB3853001CB0EB /* RootViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; path = RootViewController.h; sourceTree = ""; }; + 28D7ACF60DDB3853001CB0EB /* RootViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RootViewController.h; sourceTree = ""; }; 28D7ACF70DDB3853001CB0EB /* RootViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RootViewController.m; sourceTree = ""; }; 29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 32CA4F630368D1EE00C91783 /* HMGLTransitions_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HMGLTransitions_Prefix.pch; sourceTree = ""; }; 55F884E2142A0B47008F9C14 /* MainWindow~ipad.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = "MainWindow~ipad.xib"; sourceTree = ""; }; + 87B7430A14716AD00019895C /* CubeTransition.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CubeTransition.h; sourceTree = ""; }; + 87B7430B14716AD00019895C /* CubeTransition.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CubeTransition.m; sourceTree = ""; }; 8D1107310486CEB800E47090 /* HMGLTransitions-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "HMGLTransitions-Info.plist"; plistStructureDefinitionIdentifier = "com.apple.xcode.plist.structure-definition.iphone.info-plist"; sourceTree = ""; }; AC13782A124ECCD800D21E3F /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; AC137830124ECCDC00D21E3F /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; }; @@ -65,7 +68,7 @@ AC137926124ED75E00D21E3F /* FlipTransition.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FlipTransition.m; sourceTree = ""; }; AC169A71124FCD72008F43EA /* RotateTransition.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RotateTransition.h; sourceTree = ""; }; AC169A72124FCD72008F43EA /* RotateTransition.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RotateTransition.m; sourceTree = ""; }; - AC169B0E124FD5FC008F43EA /* ModalViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; path = ModalViewController.h; sourceTree = ""; }; + AC169B0E124FD5FC008F43EA /* ModalViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ModalViewController.h; sourceTree = ""; }; AC169B0F124FD5FC008F43EA /* ModalViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ModalViewController.m; sourceTree = ""; }; AC169B10124FD5FC008F43EA /* ModalViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ModalViewController.xib; path = Classes/ModalViewController.xib; sourceTree = ""; }; AC169B6A124FE159008F43EA /* HMLogo.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = HMLogo.png; sourceTree = ""; }; @@ -170,6 +173,8 @@ AC169A74124FCD7C008F43EA /* Transitions */ = { isa = PBXGroup; children = ( + 87B7430A14716AD00019895C /* CubeTransition.h */, + 87B7430B14716AD00019895C /* CubeTransition.m */, AC3E6FA8125264130066AF56 /* DoorsTransition.h */, AC3E6FA9125264130066AF56 /* DoorsTransition.m */, AC169CD4124FF423008F43EA /* ClothTransition.h */, @@ -300,6 +305,7 @@ AC169B11124FD5FC008F43EA /* ModalViewController.m in Sources */, AC169CD6124FF423008F43EA /* ClothTransition.m in Sources */, AC3E6FAA125264130066AF56 /* DoorsTransition.m in Sources */, + 87B7430C14716AD00019895C /* CubeTransition.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/HMGLTransitions.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/HMGLTransitions.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..2cf3dd3 --- /dev/null +++ b/HMGLTransitions.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/HMGLTransitions.xcodeproj/project.xcworkspace/xcuserdata/patrickpietens.xcuserdatad/UserInterfaceState.xcuserstate b/HMGLTransitions.xcodeproj/project.xcworkspace/xcuserdata/patrickpietens.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..1538189b0ec8308f839c677bc78a5c57286c16d8 GIT binary patch literal 8125 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/HMGLTransitions.xcodeproj/xcuserdata/patrickpietens.xcuserdatad/xcschemes/xcschememanagement.plist b/HMGLTransitions.xcodeproj/xcuserdata/patrickpietens.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..0be2b49 --- /dev/null +++ b/HMGLTransitions.xcodeproj/xcuserdata/patrickpietens.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,22 @@ + + + + + SchemeUserState + + HMGLTransitions.xcscheme + + orderHint + 0 + + + SuppressBuildableAutocreation + + 1D6058900D05DD3D006BFB54 + + primary + + + + + From 858ed0775702c608b9686994fbf3071853f942b2 Mon Sep 17 00:00:00 2001 From: Patrick Pietens Date: Mon, 14 Nov 2011 18:36:55 +0100 Subject: [PATCH 3/3] Added direction to CubeTransition --- Classes/HMGLTransitions/CubeTransition.m | 17 +++++++++-------- .../UserInterfaceState.xcuserstate | Bin 8125 -> 8210 bytes 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/Classes/HMGLTransitions/CubeTransition.m b/Classes/HMGLTransitions/CubeTransition.m index 06df3ec..f23666d 100644 --- a/Classes/HMGLTransitions/CubeTransition.m +++ b/Classes/HMGLTransitions/CubeTransition.m @@ -18,7 +18,7 @@ - (id)init { transitionType = CubeTransitionLeft; } - + return self; } @@ -41,6 +41,8 @@ - (void)initTransition - (void)drawWithBeginTexture:(GLuint)beginTexture endTexture:(GLuint)endTexture { + int myDirection = transitionType == CubeTransitionLeft ? -1 : 1; + glClearColor(0.0, 0.0, 0.0, 1.0); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); @@ -58,15 +60,14 @@ - (void)drawWithBeginTexture:(GLuint)beginTexture endTexture:(GLuint)endTexture glTexCoordPointer(2, GL_FLOAT, 0, &basicTexCoords); glEnableClientState(GL_TEXTURE_COORD_ARRAY); - glMatrixMode(GL_MODELVIEW); glLoadIdentity(); glPushMatrix(); // begin view glBindTexture(GL_TEXTURE_2D, beginTexture); - glTranslatef(0, 0, -1.0 ); - glRotatef(sin(animationTime) * -90, 0, 1, 0); + glTranslatef(0, 0, -1.0); + glRotatef(myDirection * -90 * sin(animationTime), 0, 1, 0); glTranslatef(0, 0, 0.5); glDrawArrays(GL_TRIANGLE_STRIP, 0, 4); glPopMatrix(); @@ -75,9 +76,9 @@ - (void)drawWithBeginTexture:(GLuint)beginTexture endTexture:(GLuint)endTexture // end view glBindTexture(GL_TEXTURE_2D, endTexture); glTranslatef(0, 0, -1.0 ); - glRotatef(sin(animationTime) * -90, 0, 1, 0); - glTranslatef( 0.5, 0.0, 0); - glRotatef( 90, 0, 1, 0 ); + glRotatef(myDirection * -90 * sin(animationTime), 0, 1, 0); + glTranslatef(myDirection * 0.5, 0.0, 0); + glRotatef(myDirection * 90, 0, 1, 0); glDrawArrays(GL_TRIANGLE_STRIP, 0, 4); glPopMatrix(); } @@ -85,7 +86,7 @@ - (void)drawWithBeginTexture:(GLuint)beginTexture endTexture:(GLuint)endTexture - (BOOL)calc:(NSTimeInterval)frameTime { - animationTime += M_PI * 0.5 * frameTime * 1.25; + animationTime += M_PI * 0.5 * frameTime * 1.5; return animationTime > M_PI * 0.5; } diff --git a/HMGLTransitions.xcodeproj/project.xcworkspace/xcuserdata/patrickpietens.xcuserdatad/UserInterfaceState.xcuserstate b/HMGLTransitions.xcodeproj/project.xcworkspace/xcuserdata/patrickpietens.xcuserdatad/UserInterfaceState.xcuserstate index 1538189b0ec8308f839c677bc78a5c57286c16d8..bf069fb9aa2a210a6b2b6a589b481986b5640bf3 100644 GIT binary patch delta 4803 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 delta 4778 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 Sb)Q3q_}Ba6&^!F}Uj09SEoeai