从Fgui中的图集中取一个图素,把图素用到场景等非UI的地方。

此操作会动态创建一个Sprite对象,效率不好,不适合大量使用。

 private static Dictionary<string, Sprite> cacheSpriteByFGUIDic = new Dictionary<string, Sprite>();
/// <summary>
/// 从FGUI中取一张图片并返回一个Sprite(不建议频繁使用)
/// </summary>
/// <param name="packageName"></param>
/// <param name="texName"></param>
public static Sprite GetSpriteByFGUI(string packageName, string texName)
{
if (cacheSpriteByFGUIDic.ContainsKey(texName))
return cacheSpriteByFGUIDic[texName];
else
{
FairyGUI.GImage gImage = FairyGUI.UIPackage.CreateObject(packageName, texName).asImage;
Rect rect = new Rect(gImage.texture.uvRect.x * gImage.texture.nativeTexture.width, gImage.texture.uvRect.y * gImage.texture.nativeTexture.height,
gImage.texture.uvRect.width * gImage.texture.nativeTexture.width, gImage.texture.uvRect.height * gImage.texture.nativeTexture.height);
Sprite sprite = Sprite.Create((Texture2D)gImage.texture.nativeTexture, rect, new Vector2(0.5f, 0.5f), 100);
gImage.Dispose();
cacheSpriteByFGUIDic.Add(texName, sprite);
return sprite;
}
}

从FGUI中取一张图片并返回一个Sprite的更多相关文章

  1. 从list中取N个随机生成一个集合

    在工作中发现有很多有序算法,较少见到一些可用的无序随机算法.无序随机算法的目的是让客户感觉每次都不一样,因为一直看一样的会审美疲劳哈. 在jdk自带一种CollectionUtils.shuffle& ...

  2. mybatis从数据库中取数据且分组,返回分组数据

    mapper.xml文件 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PU ...

  3. 从一个数组对象中取key 和value组成一个新的对象

    const type = [ {key:'TimeWeiDu',value:'时间维度'}, {key:'TranType',value:'交易类型'}, {key:'OrderType',value ...

  4. C#之桶中取黑白球问题

    <编程之美>284页,问题4.6:桶中取黑白球. 有一个桶,里面有白球.黑球各100个,人们必须按照以下规则把球取出来: 1. 每次从桶中拿两个球: 2. 如果两球同色,再放入一个黑球: ...

  5. 总结C++中取成员函数地址的几种方法

    这里, 我整理了4种C++中取成员函数地址的方法, 第1,2,4种整理于网上的方法, 第3种cdecl_cast是我自己想到的. 其中, 第4种(汇编)的方法不能在VC6上编译通过. 推荐使用第1,2 ...

  6. JavaScript进阶(五)js中取小数整数部分函数

    js中取小数整数部分函数 丢弃小数部分,保留整数部分 js:parseInt(7/2) 向上取整,有小数就整数部分加1 js: Math.ceil(7/2) 四舍五入 js: Math.round(7 ...

  7. Spring MVC中Controller如何将数据返回给页面

    要实现Controller返回数据给页面,Spring MVC 提供了以下几种途径: ModelAndView:将视图和数据封装成ModelAndView对象,作为方法的返回值,数据最终会存到Http ...

  8. js中取小数整数部分函数;取小数部分

    1.丢弃小数部分,保留整数部分 parseInt(23.56); 结果:23 2.向上取整,有小数就整数部分加1 Math.ceil(23.56) 结果:24 3,四舍五入. Math.round(2 ...

  9. 【转】总结C++中取成员函数地址的几种方法

    转自:“http://www.cnblogs.com/nbsofer/p/get_member_function_address_cpp.html” 这里, 我整理了4种C++中取成员函数地址的方法, ...

  10. [转]Java中Date转换大全,返回yyyy-MM-dd的Date类型

    /** * 获取现在时间,这个好用 * * @return返回长时间格式 yyyy-MM-dd HH:mm:ss */ public static Date getSqlDate() { Date s ...

随机推荐

  1. Django中models的字段

    常见的field类型: 1.AutoField 自增字段,它是一个根据ID自增长的IntegerField字段,通常不用自己设置,如果没有设置主键,django会自动添加它为主键字段 2.CharFi ...

  2. [数据库-Mongo总结]-mysql使用总结和pymysql交互

    3. MySQL 3.1 安装 3.1.1 win 3.1.1.1 安装 >下载mysql >mysql-front: Host:localhost 端口:3306 用户:root 3.1 ...

  3. TensorFlow的基础结构

    Tensorflow 是非常重视结构的, 我们得建立好了神经网络的结构, 才能将数字放进去, 运行这个结构. 这个例子简单的阐述了 tensorflow 当中如何用代码来运行我们搭建的结构. 创建数据 ...

  4. js获取的 后端的列表。

    1.引号被转码 处理办法 {% autoescape off %} var tmp = '{{ data1 }}'; var tmp = '{{ data2 }}'; {% endautoescape ...

  5. pycharm字体大小设置

    首先有两个方法 一个是滚轮放大缩小,一个是固定的字体大小. 调为固定的字体大小: 菜单栏:file--setting--editor--font--size 修改为需要大小字号,例如20,点击ok 滚 ...

  6. 推荐一个 python学习网站

    kaggle python课程: https://www.kaggle.com/learn/python 知乎有个博主在专栏放了课程的中文版: https://www.zhihu.com/people ...

  7. redis的linux下安装

    Linux 源码安装 下载地址:http://redis.io/download,下载最新稳定版本. 本教程使用的最新文档版本为 2.8.17,下载并安装: # wget http://downloa ...

  8. 用“餐厅打包”的故事说明白Python里面的自定义函数

    注:博主并非Python专业程序员,年龄12岁,Python龄不到1岁,才疏学浅,如有错误还请大佬指教! 希望能通过本专栏帮助到一些Python小白! 嗨~大家好!上篇博文咱们说了,万一有一些上万行才 ...

  9. 01_Node的版本管理

    Node的版本管理工具 常见的node的版本管理工具有两种N.NVM 但是他们有一个致命的问题就是不支持Windwos 但是NVM延申了一个nvm-windows的版本,他就可以很好的支持window ...

  10. 人为提升服务器CPU、内存、硬盘使用率

    一.CPU使用率 vikyd/go-cpu-load: Generate CPU load on Windows/Linux/Mac (github.com) 所有CPU核心负载30%运行10秒钟 . ...