var game = cc.Layer.extend({
init:function () {
this._super();
backgroundLayer = cc.LayerColor.create(new cc.Color(40,40,40,255), 320, 480);
var target = cc.Sprite.create("resources/doge.png"); /*child to clip*/
var mask = cc.Sprite.create("resources/doge-mask.png"); /*mask*/
var maskedFill = new cc.ClippingNode(mask);
maskedFill.setAlphaThreshold(0.9);
maskedFill.addChild(target);
maskedFill.setPosition(144, 224);
backgroundLayer.addChild(maskedFill,0);
this.addChild(backgroundLayer);
}
});
'html5'에 해당되는 글 7건
- 2017.02.23 [cocos2d-js] 이미지 mask 만들기
- 2016.12.05 pixi 화면 스크롤 잠금 해제 방법
- 2016.07.27 jsb방식에서 XMLHttpRequest 안될때
- 2015.10.20 [cocos2d]Device 언어값 가져오기
- 2015.10.20 [cocos2d]안드로이드 App 개발시 cc.LabelTTF 의 폰트 적용 방법
- 2015.08.26 apk 등록시 에러 발생
- 2014.02.19 [cocos2d]애니메이션 스프라이트를 메뉴 버튼으로 사용 하기
*안드로이드 App 개발시 cc.LabelTTF 의 폰트 적용 방법
-네이티브 앱일 경우와 html5 웹으로 보여 질때를 구분 하여, 앱일 경우에는 폰트의 이름과 확장자까지 기입을
해 준다.
if (cc.sys.isNative)
{
this.quiz_txt = cc.LabelTTF.create("게임 시작", "res/fonts/HYBDAM.ttf", 40, cc.size(320, 110), cc.TEXT_ALIGNMENT_CENTER, cc.VERTICAL_TEXT_ALIGNMENT_CENTER);
} else {
this.quiz_txt = cc.LabelTTF.create("게임 시작", "HYBDAM", 40, cc.size(320, 110), cc.TEXT_ALIGNMENT_CENTER, cc.VERTICAL_TEXT_ALIGNMENT_CENTER);
}
this.quiz_txt.setColor(cc.color(255,255,255));
this.quiz_txt.enableStroke(cc.color(0,110,208), 4);
this.quiz_txt.x = 500;
this.quiz_txt.y = 300;
this.addChild(this.quiz_txt);
#안드로이드 개발자 에서 apk 등록시 크게 아래와 같은 2가지 에러가 뜨는 경우
0. http://developer.android.com/tools/publishing/app-signing.html#releasemode 사이트의 Signing Your App Manually(수동으로 인증) 방법을 사용하였다.
(1) 설치 되어 있어야 하는 프로그램(머.. 안드로이드 개발자라면 이미 다 설치 되어 있을 것이다. 설치 및 환경변수 등록은 여러 곳에 있으니 참조)
- JAVA SDK
- android SDK
1. debug 관련 메시지 : 키인증을 해야 한다는 것
(1) 첫번째 할 것: 키를 만든다.
keytool -genkey -v -keystore PATH/TO/YOUR_RELEASE_KEY.keystore -alias YOUR_ALIAS_NAME -keyalg RSA -keysize 2048 -validity 10000
* PATH/TO/YOUR_RELEASE_KEY : 생성할키의 저장 패스와 파일명
* YOUR_ALIAS_NAME 별명은 응용 프로그램을 서명 할 때이 키 스토어를 참조하기 위해 나중에 사용하는 이름
(2) 두번째 할 것 : apk 에 인증 키를 등록(?) 한다.
jarsigner -verbose -keystore PATH/TO/YOUR_RELEASE_KEY.keystore -storepass YOUR_STORE_PASS -keypass YOUR_KEY_PASS PATH/TO/YOUR_UNSIGNED_PROJECT.apk YOUR_ALIAS_NAME
2. zip-unalign 관련 메시지 : 정렬하라나?
(1) 첫번째 방법
zipalign -v 4 PATH/TO/YOUR_SIGNED_PROJECT.apk PATH/TO/YOUR_SIGNED_AND_ALIGNED_PROJECT.apk
* PATH/TO/YOUR_SIGNED_PROJECT : 1-(1) 에서 생성한키의 저장 패스와 파일명
* PATH/TO/YOUR_SIGNED_AND_ALIGNED_PROJECT : align 할 apk 의 파일명
(2) 두번쨰 방법
위의 (1) 번 방법으로 하려니 zipalign 이 실행할 수 없는 명령어로 나오때는, android-sdk 폴더의 build-tools\23.0.0\ 폴더안에 있으니 디렉토리를 찾아 가서 (1)번을 실행 해 본다.
잘 안될 경우 http://forum.xda-developers.com/android/general/tool-apktools-windows-gui-decompile-t3097613 의 프로그램을 다운 받으면 zipalign.exe 파일이 나옵니다. 그파일을 apk 와 같은 폴더에 넣고, 콘솔창의 디렉토리도 동일한 곳으로 이동을 하여 (1) 번을 실행 해 보면 되더군요.
아니면, 위의 다운 받은 프로그램 APKTools.exe 을 실행하면 창이 뜨면서 zipalign 메뉴를 선택 후 apk 를 끌어 놓으면 바로 되니 이 방법도 편하긴 할 듯 합니다. APKTools 툴이 여러 기능이 있는 거 같긴 한데 그건 머.... 나중에.. .
# 애니메이션 스프라이트를 MenuItemSprite 에 적용 하여 버튼을 만들자
1. 우선 애니메이션 스프라이트인 StartButtonSprite 파일을 만든다. 꼭, ctor 함수 부분에 이미지 한장 짜리 스프라이트를
배치 한 후 애니메이션을 실행 해야 한다.
var StartButtonSprite = cc.Sprite.extend
({
ctor:function()
{
this._super();
cc.associateWithNative(this, cc.Sprite);
//만들어 놓은 StartButtonBasic 스프라이트
var pFrame = cc.SpriteFrameCache.getInstance().getSpriteFrame("StartButtonBasic");
this.initWithSpriteFrame(pFrame);
this.play();
return true;
},
play:function()
{
//만들어 놓은 StartButtonBasic 스프라이트
var animation = cc.AnimationCache.getInstance().getAnimation("StartButton");
var animate = cc.Animate.create(animation);
this.runAction(cc.RepeatForever.create(animate));
}
});
2. MenuItemSprite 만들기
var startBtnImg = new StartButtonSprite();
var menuItem = cc.MenuItemSprite.create(startBtnImg, null, this.goGame, this);
this.startBtn = cc.Menu.create(menuItem);
this.startBtn.setPosition(cc.p(GD.WW*0.5, 50));
this.addChild(this.startBtn);