블로그 이미지
1인 개발자 (므쮸 컴퍼니) 개인 블로그 입니다. MMZZUU

카테고리

므쮸 컴퍼니 (22)
▣ Game (3)
▣ Unity 게임 만들기 (14)
▣ 정보공유 (5)
Total
Today
Yesterday

"디페노이드" iOS 출시를 준비하면서 리젝이 됐습니다.


그래서 빌드를 수정하고 다시 인앱을 연결하려는데...



어찌된 노릇인지 "순위표" 밑에 "앱내구입" 이 있어야하는데 아예 뜨질 않는 겁니다.



그래서 봤더니...
앱 내 구입이 반환되었다고 써있고

저렇게 죄다 "개발자의 조치가 필요함" 이라고 처리가 된 상태...



하나를 찍어 들어가 보니
App Store 정보에 빨간 점이 똭...

이게 한번 반환된 앱내구입 중 간혹 "개발자의 조치가 필요함" 처리가 되는 경우가 있는데



이럴 땐 "표시이름 (Display Name)"을 바꿔주면 해결됩니다.

이름을 바꿔주고 "저장" 하시면 "심사 대기 중" 으로 바뀐걸 볼 수 있습니다.



간단히 이렇게 적었지만 해결방법을 찾으려고 날린 1주일을 생각하니... 피토할 지경이네요 ;;;

다시 심사넣고 기다려야 출시가 가능할지 말지 확인 가능하겠지만...;;;

역시 안드로이드 출시가 정말 쉬운편이었다는 걸 다시한번 뼈저리게 느낀 1주일 이었습니다 ;;;

역시 갓구글이었고 애플은 개발자들에게 좀 더 친절할 필요가 있음을 느낍니다. ㅠㅠ


Posted by MMZZUU
, |

일반적으로 컴퓨터에서 테스트 할 땐 잘되지만 모바일로 빌드 후 테스트를 하면


터치가 한번에 잘 되지 않는 경우가 있다.


일반적인 버튼은 괜찮은데 Scroll Rect에 자식으로 속해있는 경우

즉, 스크롤되는 오브젝트에서의 버튼이 On Click이 잘 되지않는다.


이 경우는 캔버스가 생성될 때 EventSystem 오브젝트도 같이 생성되는데


EventSystem 스크립트의 Drag Threshhold 값을 올려주면 된다.




[ 스크립트 ] 로 처리할 경우


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
private const float inchToCm = 2.54f;
     
[SerializeField]
private EventSystem eventSystem = null;
     
[SerializeField]
private float dragThresholdCM = 0.5f;
//For drag Threshold
     
private void SetDragThreshold()
{
    if (eventSystem != null)
    {
        eventSystem.pixelDragThreshold = (int)(dragThresholdCM * Screen.dpi / inchToCm);
    }
}
  
  
void Awake()
{
    SetDragThreshold();
}
cs


dragThresholdCM = 0.5f;

이 수치가 터치한 지점으로 부터 0.5센티미터 정도는 밀려도 눌린 상태를 유지하겠다~ 뭐 이런 뜻이다

스크롤 내부에 있는 버튼들이 터치를 하더라도 스크롤이 살짝 밀리면서 눌린 상태가 해제되는 문제를 해결하기 위한 방법인 것이다.

 



Posted by MMZZUU
, |
드디어 므쮸컴퍼니의 첫 게임 페노이드 : Defenoid > 출시되었습니다.


구글 플레이 스토어 : https://goo.gl/H3B9n3

애플 앱스토어 : 곧 출시예정 입니다.


지금까지 없던 새로운 장르의 게임!!!

피하고 막고 파괴하고~ 손가락하나로 플레이가능한 심플 그 자체~( ㅇㅂㅇ)=b
하지만 플레이는 심플하지 않을겁니다~ ( +ㅂ+)/

어려울겁니닷~ ㅋㅋㅋ

1. 스테이지 밖으로 나가지마세요

2. 빨간 총알, 반짝이는 총알은 피하거나 방패로 막으세요

3. 레이저는 막을 수 없습니다 무조건 피하세요
4. 적들과 부딪히지 마세요 
5. 그럼 이제~ 튕겨낸 총알과 스킬로 적들을 물리치세요~~~~

30여종의 다양한 스킬을 가진 귀여운 캐릭터와
초급자부터 고수까지 즐길 수 있는 난이도가 준비되어 있습니다.

이제 도전하세요~!



추후 더욱더 다양한 캐릭터와 스테이지 추가, 2인용 모드 (PVP, PPVE)가 추가 될 예정입니다.

(1인개발이라 개발속도가 조금(?) 더딜 수 있습니다 ㅎㅎ 양해부탁드립니다)

의견이 있으시면 리뷰나 페이스북, 트위터에 올려주시면 최대한 업데이트때 반영하겠습니다. ^^

많은 기대와 플레이 리뷰 부탁드려요~~


페이스북 : https://www.facebook.com/mmzzuucom/

트위터https://twitter.com/mmzzuucom




Posted by MMZZUU
, |

저는 유니티로 게임을 제작할 때 


특별한 경우가 아니면 업데이트 버전관리나 여러측면에서 실수 할 가능성이 낮기에


프로젝트를 하나로 두고 프로젝트 내에서 각 플랫폼별 분기처리를 하는 형태로 처리합니다.


구글 Android에는 구글 플레이 게임 서비스 (이하 GPGS)를 사용하기 위해 플러그인을 사용하는데요


애플 iOS에서는 사용하지 않고 iOS자체 GameCenter를 사용하기에 GPGS를 빌드시에 포함시키지 않습니다.



무식한게 용감하다고...


이걸 업데이트때 마다 Android 빌드, iOS 빌드별로 파일을 삭제해준다거나 이런식으로 하다보니 쓸데없이 손이 많이 가더라구요.


플러그인 사용법을 꼼꼼히 좀 읽어 봤더라면 이런 개고생은 하지 않았어도 되는거였는데;;



각설하고 방법을 알려드리겠습니다.


빌드 할 때  (iOS) Player Settings > Scripting Define Symbols > NO_GPGS 추가


기존에 입력 되어있던 글자들 뒤에 새미콜론(;)으로 구분해주시고 NO_GPGS를 넣으시면 됩니다.




참 쉽죠?



이렇게 간단한 것을... 


여러분은 고생하지 마세요 ㅋㅋㅋ

Posted by MMZZUU
, |

 환경 


  • 작성일 2017/06/08
  • MacBook Pro (Retina, 15 inch)
  • OS X EI Capitan 10.11.6
  • Unity 5.5.0f3
  • Xcode 8.2


 이슈내용 


안드로이드에 '디페노이드'를 출시하고 iOS버전도 출시를 위해 빌드를 하고 Xcode에서 컴파일 하는데

계속 마지막에 아래 에러를 뿜뿜합니다.


2 duplicate symbols for architecture arm64

Linker command failed with exit code 1




 해결방법 


위 에러는 다양한 증상에서 나올 수 있는 경우이긴 하지만 잘 읽어보면


'arm64 아키텍쳐', '중복된 심볼' 


영어를 모르는 제가 봐도 단어 뜻은 대충 이해가 가더군요.


뭔가가 중복됐으니 처리하도록 해라~!!! 뭐 이런뜻 같습니다.



일단 저같은 경우 바로 구글신 검색신공을 펼친결과 전부다 해결방법이 Xcode에서 처리하는 방식이었습니다.


근데 이게 같은 중복관련 에러라도 사용자마다 원인이 다양하기도 하고


심지어 내 프로젝트에서 중복된 파일명이라곤 아예 보이질 않아서 framework를 모두 다 까발려 볼 수 도 없고... 대략난감해 하고 있었습니다.


거의 3일을 온갖 방법을 총동원 해보다가 자포자기하고 있다가 불현듯 게임제작 도중에 유니티를 버전업 했던 기억이 나더라는...


그 때 유니티 광고 (UnityADS)를 2.0으로 버전업 하고 1.0 unitypackage를 삭제했었는데 혹시 그쪽에 문제 있는게 아닐까 해서


구글링해보니 저 같은 경우를 겪은 외쿡인들이 꽤 많더라구요.


검색도중 알게된 꿀같은 정보는~


유니티 패키지를 설치하고 지우는 과정에서 유저가 직접 파일을 삭제하다가 깔끔하게 지우지 못하고 찌꺼기파일이 남는 경우도 있다는 겁니다.


그와중에 알게된 'Unitypackage Uninstaller'  (유니티 패키지 삭제도우미 같은 겁니다 ㅋㅋㅋ)



다운로드 링크 : https://www.assetstore.unity3d.com/kr/#!/content/35439




사용방법은 아래에 친절히~ ㅋㅋㅋ




이렇게 딱 실행을 하면 지금까지 설치했던 유니티 패키지 리스트가 뜨고 선택해서 깔끔히 지워주는 역할을 합니다.


꿀~!!!!


역시나 살펴보니 유니티 1.0의 잔해가 남아있더군요


그패키지 남은 찌꺼기 파일들을 삭제했더니 Xcode에서 에러뿜뿜이 없어졌습니다~ ㅋㅋㅋㅋ


아오~ 10년묵은 체증이 내려가는 순간~!!!


암튼 Xcode에서도 좀 더 샅샅이 뒤져봤다면 해결 했을 수도 있겠지만 유니티에서 눈에보이는 처리를 하고 넘어가니 뭔가 더 후련한 느낌적인 느낌~


참고하시기 바랍니다.

Posted by MMZZUU
, |

게임을 시작하기 전 부분에서 프레임 속도를 세팅해 줍니다.



void Awake () {

Application.targetFrameRate = 60;

}



특히 iOS같은 경우는 기본 FrameRate가 30이 기본값이기 때문에 필히 해주어야 합니다.


이렇게 하고도 iOS는 안되는 경우가 있다는 이야기를 들었는데 (저는 잘됩니다만...)


그럴 땐 빌드한 XCODE 프로젝트를 열고 AppController.mm 파일을 열어



#define kFPS 30 이라고 된 부분이 있는지 확인합니다.



이부분을 



#define kFPS 60 이라고 수정 해 주시면 됩니다.



위의 셋팅값이 60 FPS로 렌더링 하는 셋팅값 입니다.



Posted by MMZZUU
, |

맥OS 크롬에서 우클릭 방지를 해놔서 이미지를 다운받거나 내용선택(블록)이 안될경우


이걸 되게 해주는 확장프로그램이 있습니다.



바로 Pig Toolbox (Super Gestures) 입니다.


그런데 언제부턴가 확장프로그램에서 검색을 해도 나오질 않더라구요.





아래 링크를 클릭하시면 다운로드 받을 수 있습니다.


링크 : http://bit.ly/1xy1br2





[ + CHROME에 추가 ] 를 클릭하시면 설치됩니다.



마우스 우클릭 해제하고 싶은 사이트에서 아이콘 클릭 [마우스 우클릭 막힘 풀기 클릭]


또는 [Alt+F7] 단축키를 사용 하면 됩니다.


마우스 우클릭 해제 기능 말고도 유용한 기능이 다양하게 포함 되어있으니 필수 확장 애플리케이션

이라고 생각됩니다.

그럼 다들 유용하게 사용하세요 ^^


확장프로그램의 삭제는 [설정][확장프로그램]에서 삭제 가능합니다.

Posted by MMZZUU
, |

최근에 달린 댓글

최근에 받은 트랙백

글 보관함