2089 Size visibleSize = Director::getInstance()->getVisibleSize();
2090 _camera = Camera::createPerspective(60, visibleSize.width / visibleSize.height, 10, 1000);
2091 _camera->setPosition3D(Vec3(0.f, 0.f, 50.f));
2092 _camera->setCameraFlag(CameraFlag::USER1);
2094 auto listener = EventListenerTouchAllAtOnce::create();
2096 _eventDispatcher->addEventListenerWithSceneGraphPriority(listener,
this);
2099 _teapot = Sprite3D::create(
"Sprite3DTest/teapot.c3b");
2103 _textureCube = TextureCube::create(
"Sprite3DTest/skybox/left.jpg",
"Sprite3DTest/skybox/right.jpg",
2104 "Sprite3DTest/skybox/top.jpg",
"Sprite3DTest/skybox/bottom.jpg",
2105 "Sprite3DTest/skybox/front.jpg",
"Sprite3DTest/skybox/back.jpg");
2110 Texture2D::TexParams tRepeatParams;
2111 tRepeatParams.magFilter = backend::SamplerFilter::LINEAR;
2112 tRepeatParams.minFilter = backend::SamplerFilter::LINEAR;
2113 tRepeatParams.sAddressMode = backend::SamplerAddressMode::CLAMP_TO_EDGE;
2114 tRepeatParams.tAddressMode = backend::SamplerAddressMode::CLAMP_TO_EDGE;
2118 auto mat = Sprite3DMaterial::createWithFilename(
"Sprite3DTest/CubeMap.material");
2119 auto state = mat->getTechniqueByIndex(0)->getPassByIndex(0)->getProgramState();
2123 auto cubeTexLoc = state->getUniformLocation(
"u_cubeTex");
2124 state->setTexture(cubeTexLoc, 0,
_textureCube->getBackendTexture());
2126 _teapot->setPosition3D(Vec3(0.0f, -5.0f, 0.0f));
2127 _teapot->setRotation3D(Vec3(-90.0f, 180.0f, 0.0f));
2129 auto rotate_action = RotateBy::create(1.5, Vec3(0.0f, 30.0f, 0.0f));
2130 _teapot->runAction(RepeatForever::create(rotate_action));
2145#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)
2147 [
this](EventCustom*)
2150 _textureCube = TextureCube::create(
"Sprite3DTest/skybox/left.jpg",
"Sprite3DTest/skybox/right.jpg",
2151 "Sprite3DTest/skybox/top.jpg",
"Sprite3DTest/skybox/bottom.jpg",
2152 "Sprite3DTest/skybox/front.jpg",
"Sprite3DTest/skybox/back.jpg");
2156 Texture2D::TexParams tRepeatParams;
2157 tRepeatParams.magFilter = backend::SamplerFilter::LINEAR;
2158 tRepeatParams.minFilter = backend::SamplerFilter::LINEAR;
2159 tRepeatParams.sAddressMode = backend::SamplerAddressMode::CLAMP_TO_EDGE;
2160 tRepeatParams.tAddressMode = backend::SamplerAddressMode::CLAMP_TO_EDGE;
2163 auto mat = Sprite3DMaterial::createWithFilename(
"Sprite3DTest/CubeMap.material");
2164 auto state = mat->getTechniqueByIndex(0)->getPassByIndex(0)->getProgramState();
2168 auto cubeTexLoc = state->getUniformLocation(
"u_cubeTex");
2169 state->setTexture(cubeTexLoc, 0,
_textureCube->getBackendTexture());
void onTouchesMoved(const std::vector< cocos2d::Touch * > &touches, cocos2d::Event *event)
cocos2d::Camera * _camera