SneakInput在cocos2d x下的示例

2021-06-18 23:17:22 字數 2522 閱讀 6593

看了很多教程和文件,無論2d還是2d-x都推薦使用開源的sneakinput作為其觸屏的手柄元件。

我的環境為vs2010 + cocos2d-1.0.1-x-0.12.0

經過自己的試驗,發現在我的環境下並不需要修改sneakinput的原始碼,將原始碼解壓後,放在自己的專案裡就可以正常使用。

sneakinput主要由2部分組成joystick和button。

使用button的**:

[cpp]view plain

copy

float

buttonradius=50;        

buttona=new

sneakybutton();  

buttona->autorelease();  

buttona->initwithrect(ccrectzero);  

buttona->setistoggleable(false

);  

buttona->setisholdable(true

);          

sneakybuttonskinnedbase *buttonaskin=new

sneakybuttonskinnedbase();  

buttonaskin->autorelease();  

buttonaskin->init();  

buttonaskin->setposition(ccp(size.width-buttonradius,buttonradius));  

buttonaskin->setdefaultsprite(ccsprite::spritewithfile("button-default.png"

));  

// buttonaskin->setdisabledsprite(ccsprite::spritewithfile("button-disabled.png"));

buttonaskin->setpresssprite(ccsprite::spritewithfile("button-pressed.png"

));  

buttonaskin->setactivatedsprite(ccsprite::spritewithfile("button-activated.png"

));  

buttonaskin->setbutton(buttona);  

this

->addchild(buttonaskin);  

使用jostick的**:

[cpp]view plain

copy

float

joystickradius=50;  

joystick=new

sneakyjoystick();  

joystick->autorelease();  

joystick->initwithrect(ccrectzero);  

joystick->setautocenter(true

);  

joystick->sethasdeadzone(true

);  

joystick->setdeadradius(10);  

sneakyjoystickskinnedbase *joystickskin=new

sneakyjoystickskinnedbase();  

joystickskin->autorelease();  

joystickskin->init();  

joystickskin->setbackgroundsprite(ccsprite::spritewithfile("button-disabled.png"

));  

joystickskin->setthumbsprite(ccsprite::spritewithfile("button-disabled.png"

));  

joystickskin->getthumbsprite()->setscale(0.5f);  

joystickskin->setposition(ccp(joystickradius,joystickradius));  

joystickskin->setjoystick(joystick);  

this

->addchild(joystickskin);  

然後在update函式中獲取按鈕狀態:

[cpp]view plain

copy

#define fire_interval 0.3f

float

helloworld::firetime=0;  

void

helloworld::update(cctime dt)  

firetime+=dt;  

if(buttona->getisactive()&&firetime>=fire_interval)  

}  

COCO資料集解讀

cver必然要對microsoft coco資料集有一定的了解,今天就對coco做一點解讀。關於coco的介紹應該能看懂,這裡我們只強調一下重要資訊。看一下標註檔案,不同的檔案對應不同的task,比如instances train2017.json是檢測與分割任務的訓練集標註。再關注一下檔案細節,其...

COCO資料集概述

pk的內容包括 目標檢測與例項分割 人體關鍵點檢測 材料識別 全景分割 影象描述 目標檢測 例項分割資料標註檔案解析使用json檔案儲存 其注釋檔案中的內容就是乙個字典資料結構,包括以下5個key value對。其中info images licenses三個key是三種型別標註檔案共享的,最後的a...

COCO資料集製作

ms coco的全稱是microsoft common objects in context,源於微軟於2014年出資標註的microsoft coco資料集,其地位與imagenet等同,是衡量通用模型效能的最佳資料集之一。coco資料集是乙個大型的 豐富的物體檢測,分割和字幕資料集。以scene...