본문 바로가기

모바일/모바일 개발39

NN Xcode | 개발 pragma mark네이게이션을 통해 해당 메서드로 빨리 이동하고, 같은 종류의 메서드를 구분지어 볼 수 있다. # pragma mark - // 네비게이션바에서 구분용 실선# pragma mark XXX // X는 항목명# pragma mark // 빈줄 쓰레드의미가 없는 부분은 생략하고 표기 -> Thread창 아래 슬라이더로 리스트 모두 표시할 수 있음 info.plistinfo.plist의 displayname 변경 애플 아이콘❛ Asset Catalog Creator앱 설치 - iOS 버전 아이콘 생성 무료- 1024이미지 하나 등록하면 폴더, json, 아이콘 종류, 이름까지 정확하게 생성- AppIcon.appiconset 폴더를 Xcode 프로젝트 폴더 Images.xcassets 폴더 안.. 2020. 2. 27.
NN Xcode | 설치 및 환경설정 Xcode IDE ❛ Apple 개발환경의 핵심❛ Cocoa + Cocoa Touch 프레임워크 통합 ❛ Interface Builder- 코드없이 사용자 인터페이스를 간단하게 디자인- .nib파일로 저장- 앱 실행 시 UI와 코드 간의 연결을 동적으로 생성 ❛ 스토리 보드- iOS 앱은 뷰로 구성 - 뷰 간의 관계는 앱의 흐름을 전체적으로 보여주는 스토리보드로 정의 설치 ❛ Xcode : IDE (통합개발환경)❛ Coco2d : 터미널 ./install-templates.sh❛ 인증서 ❛ 시뮬레이터 설치- 시뮬레이터 창 Download more simulator runtimes 환경설정 ❛ 단축키1. 퀵 헬프 : option 키를 누르면서 문자(클래스, 메소드 등) 더블클릭 -> API, 클래스 레퍼런.. 2020. 2. 21.
NN Cocos2d | 트러블 슈팅 Apple Mach-O Linker ErrorDerivedData 폴더 제거Valid Architecture 에서 armv7s 제거 Application windows are expected to have a root view controller at the end of application launchApplication windows are expected to have a root view controller at the end of application launchwindow.rootViewController = rootViewController; // 추가[window addSubview:[rootViewController view]];[window makeKeyAndVisible]; cocos.. 2020. 2. 20.
NN Cocos2d | 기타 클래스 CCDirector씬관리를 주목적으로 하는 클래스 : 씬전환, FPS설정, 장치 방향의 확인, 오픈지엘 초기화1. NSTimer 디렉터 : 객체에서 메인루프에 신호를 보내는 형태2. Mainloop 디렉터 : 자체 메인 루프에서 메인 루프에 신호를 보내는 형태3. ThreadMainLoop 디렉터 :스레드에서 메인 루프에 신호4. DisplayLink 디렉터 : iOS 3.1 이상에서만 사용. ❛ 메소드1. applicationDidFinishLaunching 함수 안setAnimationInterval : 전체의 애니매이션 성능에 중요한 역활. 30이하로 떨어지면 초당 프레임수 설정을 1.0/240.0으로 늘려라attachInView : cocos2d의 그래픽이 구현되는 이글뷰를 만들어서 window에.. 2020. 2. 20.
NN Cocos2d | CCAction 클래스 ❛ Action에 Tag 주는 방법[actionName setTag:...];...[spriteName getActionByTag:...] ❛ CCBezier (곡선이동)ccBezierConfig bezier1;bezier1.controlPoint_1 = ccp(120, 240);bezier1.controlPoint_2 = ccp(240, 240);bezier1.endPosition = ccp(360, 160);id actionBezier = [CCBezierTo actionWithDuration:2.5 bezier:bezier1]; ❛ CCBlink (깜박임) ❛ CCEaseIn / CCEaseOut / CCEaseInOut (내부액션 가속화 혹은 저속화) ❛ CCEaseExponentialIn / C.. 2020. 2. 20.
NN Cocos2d | 이미지 관련 클래스 CCSprite[CCSprite spriteWithFile:@"..." rect:CGRectMake( , , , )]; ❛ 메서드- setPosition : - setScaleX :- setScaleY :- setTextureRect : [... setTextureRect:CGRectMake(0, 0, 150, 150)];- setColor :- spriteWithFile :- spriteWithFrameName : ❛ 스프라이트 교체[apleS setDisplayFrame:[[CCSpriteFrameCacheharedSpriteFrameCache]spriteFrameByName:@"xxx.png"]]; ❛ sharedSpriteFrameCachesharedSpriteFrameCache는 싱글톤으로 앱이.. 2020. 2. 20.
NN Cocos2d | CCNode 클래스 CCNode코코스 구조의 중심 요소. 화면에 표시되는 모든 것과 이를 담아 두는 모든 것을 CCNode로 정의. CCNode의 하위 클래스 특징1. 다른 CCNode를 포함할 수 있다2. 주기적인 콜백을 설정할 수 있다3. 액션을 수행할 수 있다 프로퍼티1. anchorPoint : 노드의 기준점을 설정2. position : 상위 노드에서 상대적인 좌표 값으로 위치를 지정3. scale : 노드의 크기를 변경4. rotation : 노드의 회전 각도를 변경5. visible : 노드를 표시할지 말지를 결정6. zOrder : 오브젝트가 겹쳤을 때 높은 Z오더 값을 가진 오브젝트가 위쪽에 표시 메서드1. (void) addChild:(CCNode *) child : 이 메서드를 호출한 CCNode의 하위.. 2020. 2. 20.
NN Cocos2d | 기초 헤더파일1. main.m : 프로그램의 시작// scene 과 layer 같이 선언 가능#import "cocos2d.h"@interface GameOverLayer : CCLayerColor { CCLabelTTF *_label;}@property (nonatomic, retain) CCLabelTTF *label;@end@interface GameOverScene : CCScene { GameOverLayer *_layer;}@property (nonatomic, retain) GameOverLayer *_layer;@end 메모리▪︎ alloc : 객체 생성, retain 메시지 보냄(retain 1 증가)▪︎ copy : retain 메시지 보냄(retain 1 증가)▪︎ retain : reta.. 2020. 2. 19.
NN Cocos2d | 스프라이트 애니메이션 스프라이트 시트 ▪︎ CCTextureCache : 텍스쳐 이미지 보관 ▪︎ CCSpriteFrameCache - 덱스쳐와 기타 정보로 이루어진 스프라이트 프레임을 보관 - 스프라이트 시트의 위치 정보 파일을 읽어들여 스프라이트 프레임 캐시에 저장 - 싱글톤인 sharedSpriteFrameCache에 추가 ▪︎ CCSpriteFrame - 캐시에 로딩된 위치정보를 이용해 스프라이트 시트로부터 실제 프레임 이미지들을 로딩 ▪︎ CCSpriteSheet : CCSpriteBatchNode로 변경 ▪︎ CCSpriteBatchNode - 애니매이션 프레임에 대하여 랜더링 코드가 반복적으로 호출되지 않고 단 한번의 OpenGL 랜더링 루틴을 호출하여 효율적 -> 배치 드로잉 - 단 한장의 이미지만을 참조 애니.. 2020. 2. 19.