Sprite(精灵)

用来作为以后复习使用。

 1 #include "ScenceScend.h"
 2
 3 CCScene* ScenceScend::scene()
 4 {
 5     CCScene* s = CCScene::create();
 6     ScenceScend* layer = ScenceScend::create();
 7     s->addChild(layer);
 8     return s;
 9
10 }
11 bool ScenceScend::init()
12 {
13     CCLayer::init();
14     //1.通过文件直接创建精灵
15     //CCSprite* sprite = CCSprite::create();
16     //CCSprite* sprite = CCSprite::create(filename,CCRect);
17     //CCSprite* sprite = CCSprite::create(filename);
18
19
20     //2.通过纹理去创建精灵
21
22     //CCTexture2D* texture = CCTextureCache::sharedTextureCache()->addImage("filename");
23     //CCSprite* sprite = CCSprite::createWithTexture(texture);
24     //CCSprite* sprite = CCSprite::createWithTexture(texture,CCRect);也可取图片局部
25     //addChild(sprite);
26     //3通过精灵帧来创建
27     /*
28     CCSize size = CCDirector::sharedDirector()->getWinSize();
29
30     CCTexture2D* texture = CCTextureCache::sharedTextureCache()->addImage("HelloWorld.png");
31     CCSize size2 = texture->getContentSize();
32     CCSpriteFrame* frame =
33         CCSpriteFrame::createWithTexture(texture, CCRectMake(size2.height / 4, size2.width / 4, size2.width / 2, size2.width / 2));
34     CCSprite* sprite = CCSprite::createWithSpriteFrame(frame);
35     sprite->setPosition(size.width/2,size.height/2);
36     addChild(sprite);
37     */
38
39     //4.通过精灵帧缓存 去创建精灵
40
41     CCSize size = CCDirector::getInstance()->getWinSize();
42     //CCTexture2D 贴图类
43     CCTexture2D* texture = CCTextureCache::sharedTextureCache()->addImage("HelloWorld.png");
44     CCSize size2 = texture->getContentSize();
45     CCSpriteFrame* frame =
46         CCSpriteFrame::createWithTexture(texture, CCRectMake(size2.height / 4, size2.width / 4, size2.width / 2, size2.width / 2));
47     CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFrame(frame,"HXL");
48     CCSprite* sprite = CCSprite::createWithSpriteFrameName("HXL");
49     sprite->setPosition(size.width / 2, size.height / 2);
50     addChild(sprite);
51
52     /*
53     //调用父类的初始化。因此这里是 子类方法覆盖父类了。
54     CCLayer::init();
55     CCLabelTTF *label = CCLabelTTF::create("hxltom","Arial",36);
56     label->setPosition(CCPoint(100,200));
57     addChild(label);
58     */
59
60     return true;
61 }
时间: 2024-11-03 22:31:41

Sprite(精灵)的相关文章

Cocos2d-x Lua中Sprite精灵类

Cocos2d-x Lua中Sprite精灵类 精灵类是Sprite,它的类图如下图所示. Sprite类图 Sprite类直接继承了Node类,具有Node基本特征.此外,我们还可以看到Sprite类的子类有:PhysicsSprite和Skin.PhysicsSprite是物理引擎精灵类,Skin是皮肤精灵类用于骨骼动画.创建Sprite精灵对象创建精灵对象有多种方式,其中常用的函数如下:cc.Sprite:create ().创建一个精灵对象,纹理[ 纹理(texture),表示物体表面细

NGUI研究之Sprite精灵与精灵动画的使用

 学习了几天Unity3D强大的NGUI插件,觉得NGUI中最大的亮点之一就是Sprite精灵.我们先说说精灵是什么东西?它可以在一张大图中去截取一部分(大图就是整体图像集合,而截取的小图就是一个精灵),然后起一个精灵的名称,使用时通过精灵的名称就能直接绘制,并且精灵还可以播放动画.总之真的非常强大.本节我们学习如何创建自己的精灵文件.基本使用不了解的看NGUI研究之开始学习制作第一个例子 首先我们在Project中创建一个Prefab对象,默认给它Transform变换属性,暂时我们给Pr

Cocos2d-x 3.1.1 学习日志7--7分钟让你了解cocos2d-x3.1.1 Sprite精灵类

精灵(Sprite)是游戏里面的角色,比如敌人,游戏里面运动的物体等等,所以精灵是游戏里面一个非常常见的概念,几乎无处不在.在Cocos2D-x里面精灵是用Sprite类来进行表示的,它可以用一张图片或者一张图片的一块矩形部分来定义. 在自己设计的MyScene类中,我写了六种常用精灵的出现方式.分别是sp1,sp2,sp3,sp4,sp5,sp6.上代码: bool MyScene::init() { Size size = Director::getInstance()->getWinSiz

使用雪碧图Css Sprite精灵 | 加速网页响应速度

什么是CSS Sprite精灵? 是用于前端的一种图片应用技术,通常情况,我们的开发的网页或许有很多张图片,假如在一个页面上有50多张小图片,这意味着浏览器要逐个下载50张图片.Css Sprite它允许你将一个页面涉及到的所有零星图片都包含到一张图中,这样一来,当访问页面时,就只需要下载1张图片了,这显然大大减低了服务器请求压力. 这个技术加速网页响应速度,加速的关键,不是降低质量,而是减少个数.传统切图讲究精细,图片规格越小越好,重量越小越好,其实规格大小无所谓,计算机统一都按byte计算.

WebGL实现sprite精灵效果的GUI控件

threejs已经有了sprite插件,这就方便了three的用户,直接可以使用threejs的sprite插件来制作GUI模型.sprite插件是阿里的lasoy老师改造过的,这个很厉害,要学习一哈他的源码.闲话少叙,我们来看一下如何用原生的webgl来实现sprite精灵效果.首先我们来看一个样例. 我们可以看到,这个数字模型的纹理贴图是"2",他具有两个特性,第一他永远面向主相机,第二他在屏幕上的投影尺寸不随场景缩放而产生一丝一毫的变化.这就是sprite精灵的特点,我们来看看具

cocos2dx 3.x以上(Sprite精灵类的相关属性与创建)

// //  MainScene.cpp //  helloworld // //  Created by apple on 16/9/19. // // #include "MainScene.hpp" Scene * MainScene::createScene() { auto scene = Scene::create(); //    CCScene * scene = CCScene::create();// 创建场景 //创建层 MainScene *layer = Ma

Python游戏引擎开发(五):Sprite精灵类和鼠标事件

本次来实现Sprite类和鼠标事件. 说起这个Sprite啊,涉及过2D游戏研究领域的看官应该都听说过它.它中文原意是"精灵",不过在不同人的眼中,它所表示的意义不同.比如说在cocos2d中,它可以是一张图片.不过在flash中,Sprite是一个类似于"层"的家伙.当然你把它定义为层并不是很准确,实际上它是一个含显示列表的显示对象.什么意思呢?各位看官如果阅读了前面的章节,那对显示列表并不陌生.它说白了就是一个包含其他显示对象的容器. 那也许你会想,为什么要有这

cocos2d-x实战 C++卷 学习笔记--第5章 精灵

前言: 精灵类是Sprite类.它的子类有PhysicsSprite 和 Skin. PhysicsSprite 是物理引擎精灵类,而Skin是皮肤精灵类,用于骨骼动画. 创建Sprite精灵对象 创建精灵对象有多种方式,常用的函数如下: 1)创建一个精灵对象,纹理等属性需要在创建后设置 static Sprite* create(); 2)指定图片创建精灵 static Sprite* create(const std::string& filename); 3)指定图片和裁剪的矩形区域来创建

Cocos2d-x 3.2 学习笔记(五)Sprite Node

游戏中最重要的元素Sprite精灵,关于精灵的创建,精灵的控制等等. 涉及到的类Class: AnimationFrame 动画帧. Animation 动画对象:一个用来在精灵对象上表现动画的动画对象. AnimationCache 动画缓存单例类. 如何你想要保存动画,你需要使用这个缓存. Sprite 精灵;定义为二维图像. SpriteBatchNode 与批量节点类似,如果包含子节点会在一次OpenGL调用内绘制完成. SpriteFrame 一个精灵帧. SpriteFrameCac

css3处理sprite背景图压缩来解决H5网页在手机浏览器下图标模糊的问题

最近在负责一个微信H5 App项目,遇到一个郁闷的问题,手机浏览器查看网页时图标都是模糊的,有锯齿,电脑浏览器显示则是正常.大概知道是分辨率适配等类型的问题,后来网上查找了一些办法,大部分的解决方案都是设计一套放大1倍的图标,再压缩显示. 我们都知道<img>标签可以通过固定宽高的方式来压缩大图,从而得到高清的显示效果,而图标一般用背景图来呈现,怎么搞呢?好吧,css3出了一个很牛逼的属性background-size可以直接设置背景图的宽高,直接解决了前者的疑惑. 那么问题来了,我们的网页不