Coco2dx製作一個3D旋轉的效果,coco2dx3d旋轉
建了工程之後修改HelloWorldScene.cpp檔案,修改部分為
// on "init" you need to initialize your instancebool HelloWorld::init(){ ////////////////////////////// // 1. super init first if ( !Layer::init() ) { return false; } ry = 0; auto rootNode = CSLoader::createNode("MainScene.csb"); addChild(rootNode); Size visibleSize = Director::getInstance()->getVisibleSize(); s = Sprite::create("HelloWorld.png"); s->setAnchorPoint(Vec2(0, 0.5f)); s->setPosition(visibleSize.width / 2, visibleSize.height / 2); addChild(s); scheduleUpdate(); return true;}void HelloWorld::update(float dt) { ry++; s->setRotation3D(Vec3(0, ry, 0));}
HelloWorldScene.h也要修改
class HelloWorld : public cocos2d::Layer{private: cocos2d::Sprite *s; float ry; public: // there's no 'id' in cpp, so we recommend returning the class instance pointer static cocos2d::Scene* createScene(); // Here's a difference. Method 'init' in cocos2d-x returns bool, instead of returning 'id' in cocos2d-iphone virtual bool init(); // implement the "static create()" method manually CREATE_FUNC(HelloWorld); void update(float dt);};
然後就可以看到旋轉效果:
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。