关闭

cocos 2dx 3.12 学习笔记(二) Sprite

标签: cocosvs2013Sprite
57人阅读 评论(0) 收藏 举报
分类:

在我们的场景中创建精灵

	auto visibleSize = Director::getInstance()->getVisibleSize();//得到场景的大小
	Vec2 origin = Director::getInstance()->getVisibleOrigin();//得到场景的原点
	
	//auto size = this->getContentSize();
	//<span style="font-family: Arial, Helvetica, sans-serif;">返回场景,矩形的逻辑尺寸</span>
	//float x = 0;
	//float y = 0;

	//x = size.width / 2;
	//y = size.height / 2;
	
	
	m_pTestSprite = Sprite::create("HelloWorld.png");   //在 .h文件中已经对m_pTestSprite进行了声明,如果未声明则如下声明即可。
<span style="white-space:pre">	</span>//auto m_pTestSprite = Sprite::create("HelloWorld.png");
	m_pTestSprite->setPosition(Vec2(visibleSize.width/2 + origin.x,  visibleSize.height/2 + origin.y));//使用setPosition将精灵放到场景中间
	//m_pTestSprite->setPosition(Vec2(x, y));
	//使用逻辑尺寸设定 Sprite的位置
	this->addChild(m_pTestSprite); //添加到当前场景


代码中提供了两种,把精灵创建在屏幕中间的办法,第一种是利用场景的原点和场景的大小,使用SetPosition()方法,放置到创景中间。

我们也可以使用 getContentSize()方法,返回矩形尺寸,然后将精灵创建在屏幕中间。

对精灵的属性进行设置


	sprite02->setScaleX(1.5f); //使精灵的X方向变为1.5倍
	sprite->setScale(0.5f);//使精灵的整体尺寸变为0.5倍
	sprite02->setNormalizedPosition(Vec2(0.1f,0.8f)); //设置精灵的Normal位置

	sprite->setSkewX(100.0f); //X轴斜切
	sprite->setSkewY(50.0f);  //Y轴斜切

	sprite->setAnchorPoint(Vec2(1.0f,1.0f));   //设置精灵的锚点,默认左下角为ZERO 1.0,1.0,为右上角
	visible sprite->setVisible(false); //visible 隐藏单个组件

	sprite->setRotation(180.0f);  //按中心旋转
	sprite->setRotationX(50.0f);  //按X轴旋转
	sprite->setRotationY(50.0f);  //按Y轴旋转
	sprite->setRotation3D(Vec3(-10.0f,50.0f,60.0f));   //3D旋转


	sprite->setColor(Color3B(255,0,0));// Color4B(r,g,b,a); //设置精灵颜色,3B是三个颜色,4B是则包含有透明度。
	auto pBlcakSprite = Sprite::create("black.png"); 
	auto pWhiteSprite = Sprite::create("white.png");
	this->addChild(pBlcakSprite,20);
	this->addChild(pWhiteSprite,20);
	pBlcakSprite->setPosition(Vec2(250,150));
	pWhiteSprite->setPosition(Vec2(250, 200));
	pBlcakSprite->setColor(Color3B(255, 255, 0));
	pWhiteSprite->setColor(Color3B(255, 0, 255));
	//黑色无法设置颜色,白色可以设置。




0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1461次
    • 积分:156
    • 等级:
    • 排名:千里之外
    • 原创:15篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章分类