CaptureScreenTest::CaptureScreenTest() { Size s = Director::getInstance()->getWinSize(); Vec2 left(s.width / 4, s.height / 2); Vec2 right(s.width / 4 * 3, s.height / 2); auto sp1 = Sprite::create("Images/grossini.png"); sp1->setPosition(left); auto move1 = MoveBy::create(1, Vec2(s.width/2, 0)); auto seq1 = RepeatForever::create(Sequence::create(move1, move1->reverse(), nullptr)); addChild(sp1); sp1->runAction(seq1); auto sp2 = Sprite::create("Images/grossinis_sister1.png"); sp2->setPosition(right); auto move2 = MoveBy::create(1, Vec2(-s.width/2, 0)); auto seq2 = RepeatForever::create(Sequence::create(move2, move2->reverse(), nullptr)); addChild(sp2); sp2->runAction(seq2); auto label1 = Label::createWithTTF(TTFConfig("fonts/arial.ttf"), "capture all"); auto mi1 = MenuItemLabel::create(label1, CC_CALLBACK_1(CaptureScreenTest::onCaptured, this)); auto menu = Menu::create(mi1, nullptr); addChild(menu); menu->setPosition(s.width / 2, s.height / 4); _filename = ""; }
bool HelloWorld::init() { if (!LayerColor::initWithColor(Color4B(255, 255, 255, 255))) { return false; } auto sp1 = Sprite::create("Images/grossini.png"); sp1->setPosition(Vec2(120, 160)); addChild(sp1); auto sp2 = Sprite::create("Images/grossinis_sister1.png"); sp2->setPosition(Vec2(120 * 3, 160)); addChild(sp2); auto label1 = Label::createWithTTF( TTFConfig("fonts/arial.ttf"), "capture all"); label1->setColor(Color3B::BLACK); auto mi1 = MenuItemLabel::create(label1, CC_CALLBACK_1(HelloWorld::onCaptured, this)); auto menu = Menu::create(mi1, nullptr); addChild(menu); menu->setPosition(Vec2(240, 80)); _filename = ""; return true; }
bool ShaderMultiTexture::init() { if (ShaderTestDemo::init()) { auto s = Director::getInstance()->getWinSize(); // Left: normal sprite auto left = Sprite::create("Images/grossinis_sister1.png"); addChild(left); left->setPosition(s.width*1/4, s.height/2); // Right: normal sprite auto right = Sprite::create("Images/grossinis_sister2.png"); addChild(right, 0, rightSpriteTag); right->setPosition(s.width*3/4, s.height/2); // Center: MultiTexture _sprite = Sprite::createWithTexture(left->getTexture()); addChild(_sprite); _sprite->setPosition(Vec2(s.width/2, s.height/2)); auto glprogram = GLProgram::createWithFilenames("Shaders/example_MultiTexture.vsh", "Shaders/example_MultiTexture.fsh"); auto glprogramstate = GLProgramState::getOrCreateWithGLProgram(glprogram); _sprite->setGLProgramState(glprogramstate); glprogramstate->setUniformTexture("u_texture1", right->getTexture()); glprogramstate->setUniformFloat("u_interpolate",0.5); // slider createSliderCtl(); // menu auto label = Label::createWithTTF(TTFConfig("fonts/arial.ttf"), "change"); auto mi = MenuItemLabel::create(label, CC_CALLBACK_1(ShaderMultiTexture::changeTexture, this)); auto menu = Menu::create(mi, nullptr); addChild(menu); menu->setPosition(s.width * 7 / 8, s.height / 2); return true; } return false; }