Cocos Creator3.8 项目实战(四)巧用九宫格图像拉伸


一、为什么要使用九宫格图像拉伸


相信做过前端的同学都知道,ui (图片)资源对包体大小和内存都有非常直接的影响。

  • 通常ui 资源都是图片,也是最占资源量的资源类型,游戏中的ui 资源还是人机交互的最重要的部分,因此质量要求都非常高,通常都是使用rgb32位真彩色,这就导致资源量比较大。

  • 通常ui资源在打包时,都会以图集的形式展现,在加载到内存的时候,是整块加载,如果ui 没优化好,则会增大内存的开销。


因此为了减少资源量,增强ui 资源的复用,解决图片被拉伸变形、模糊的问题, 通常使用九宫格ui 的方式来对资源进行优化。


如下图:

我们可以看到,图像周围有一圈绿色的线条,表示当前九宫格分割线的位置。

将鼠标移动到分割线上,可以看到光标形状改变了,这时候就可以按下并拖拽鼠标来更改分割线的位置。

我们分别拖动上下左右四条分割线,将图像切分成九宫格,九个区域在 Sprite 尺寸(size)变化时会应用不同的缩放策略。


在这里插入图片描述


二、九宫格图像拉伸使用步骤


(1)、设置 Sprite 组件使用 Sliced 模式

在这里插入图片描述


(2)、在资源管理器中,选择需要调整九宫格的 spriteFrame 资源

在这里插入图片描述


(3)、在属性检查器中,选择最下方的“Edit”编辑按钮

在这里插入图片描述


(4)、在九宫格编辑窗口,编辑上、下、左、右边框的位置

在这里插入图片描述


三、九宫格图像拉伸调整技巧

  • 可以鼠标滚轮放大图片预览试图,便于精准调整边框位置。

  • 如果不知道边框位置应该调整到多少合适,可以参考美术设计图的圆角角度进行调整。

    如图,我们需要以九宫格拉伸实现以下带圆角的背景框效果:

在这里插入图片描述


我们根据蓝湖上,设计图的圆角角度(此处为12) ,依次调整边框位置,即可达到预期效果:

在这里插入图片描述


编辑器调整:

在这里插入图片描述


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/96651.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

解决 Jenkins 性能缓慢的问题~转

解决 Jenkins 性能缓慢的问题 Docker中文社区 ​​ 计算机技术与软件专业技术资格持证人 2 人赞同了该文章 没有什么比缓慢的持续集成系统更令人沮丧的了。它减慢了反馈循环并阻止代码快速投入生产。虽然像使用性能更好的服务器可以为您争取时间,但您最终必须投资…

UG\NX CAM二次开发 获取当前加工导航器选中的对象数量和tag UF_UI_ONT_ask_selected_nodes

文章作者:代工 来源网站:NX CAM二次开发专栏 简介: UG\NX CAM二次开发 获取当前加工导航器选中的对象数量和tag UF_UI_ONT_ask_selected_nodes 效果: 代码: void MyClass::do_it() {//获取当前加工导航器选中的对象数量和TAGint count = 0;tag_t* objects = NULL…

stm32 - 中断

stm32 - 中断 概念中断向量表NVIC 嵌套中断向量控制器优先级 中断EXTI概念基本结构例子- 对射式红外传感器计次例子 - 旋转编码器 概念 stm32 支持的中断资源(都属于外设) EXTITIMADCUSARtSPII2C stm32支持的中断 内核中断 外设中断 中断通道与优先级 一…

物联网AI MicroPython传感器学习 之 噪音测量传感器

学物联网,来万物简单IoT物联网!! 一、产品简介 麦克风噪音测量传感器,通过单片机对信号的简单处理,可实环境音检测、声控开关这样的有趣实验。传感器模块仅占用一个IO口,通过电压强度(mV&#…

IIS部署Flask

启用 CGI 安装wfastcgi pip install wfastcgi 启用 wfastcgi 首先以管理员身份运行wfastcgi-enable来在IIS上启用wfastcgi,这个命令位于c:\python_dir\scripts,也就是你需要确保此目录在系统的PATH里,或者你需要cd到这个目录后再执行。 #…

MVC架构和DDD架构的区别?

前言 最近在学习一个开源社区项目,第一次听说了DDD项目架构,于是通过搜索之后来分享给大家 正文 当涉及到软件架构时,MVC(Model-View-Controller)和DDD(Domain-Driven Design)是两种常见的设…

cpp primer plus笔记07-内存模型和命名空间

对于相同变量名的变量,CPP会覆盖作用域大的变量,而使用作用域小的变量,如果想在函数体内使用全局的变量可以在变量名前加上::加以区分,比如warm3会使得局部的warm变量等于3,而::warm3会使得全局的warm3 。 存储描述持…

rpm安装mysql8后碰到的问题

1 mysqld 无法启动 原因 已经使用了3306端口,修改my.cnf中端口为3308 2 修改为3308端口后,还是无法启动, 2023-10-07T02:20:10.096689Z 0 [ERROR] [MY-010262] [Server] Cant start server: Bind on TCP/IP port: Permission denied 2023…

Node-RED系列教程-25node-red获取天气

安装节点:node-red-contrib-weather 节点图标如下: 使用说明:node-red-contrib-weather (node) - Node-RED 流程图中填写经度和纬度即可。 演示: json内容: {

Linux服务器报错“No space left on device”如何解决

一、错误的含义,说明在服务器设备上的存储空间已经满了,不能再上传或者新建文件夹或者文件等。 二、确认查看服务器系统的磁盘使用情况是否是真的已经没有剩余空间,复制下面命令在服务器上运行,然后发现如果如下图所示那么表明sda…

ViewConfiguration

包含 UI 中用于超时、大小和距离的标准常量的方法。 官址链接:https://developer.android.google.cn/reference/kotlin/android/view/ViewConfiguration?hlen 比如获取屏幕边缘的距离: val config ViewConfiguration.get(context) val edgeSlop con…

Sharding-JDBC(十)如何解决根据ID更新时扫描全部分表

目录 一、问题描述二、问题解决1.场景一:同一事务中,新增并更新1.1 解决方案: 2.场景二:不同事务中,新增后更新场景2.1 解决方案: 一、问题描述 我们在使用 ShardingJDBC 作为分片工具的时候,会…

代码随想录算法训练营第23期day14|二叉树层序遍历、226.翻转二叉树、101. 对称二叉树

目录 一、二叉树层序遍历 非递归法 递归法 相关题目(10题) 二、(leetcode 226)翻转二叉树 递归法 层序遍历 深度优先遍历 1)非统一写法——前序遍历 2) 统一写法——前序遍历 三、(le…

04_数据库

1 Web架构 web总共分为三个部分: 客户端服务器数据库 web网站访问过程: 客户端向服务器发送请求服务器操作数据库数据库将结果返回给服务器服务器将结果响应给客户端 2 数据库概念 数据库(Database) 数据库是按照数据结构来…

软件测试/测试开发丨App自动化测试-弹窗异常处理

点此获取更多相关资料 本文为霍格沃兹测试开发学社学员学习笔记分享 原文链接:https://ceshiren.com/t/topic/27692 黑名单处理 运行过程中不定时弹框(广告弹窗,升级提示框,新消息提示框等等) 弹框不是 BUG&#xff0…

docker数据管理和网络通信

docker数据管理 管理 Docker 容器中数据主要有两种方式: 数据卷(Data Volumes)和数据卷容器(DataVolumes Containers)。 1.数据卷 数据卷是一个供容器使用的特殊目录,位于容器中。可将宿主机…

测试工程师思维学习

一、测试工程师应具备什么思维? 透过现象看本质,拒绝“一叶障目” 01、质疑和系统思维 02、创新思维 03、全局思维 04、风险驱动和组合思维 05、用户为中心和比较思维 06、BT思维和架构扩展性思维 二、测试工程师应避免的思维 01、同化现象 02、定位效…

数据结构-----二叉排序树

目录 前言 1.什么是二叉排序树 2.如何构建二叉排序树 3.二叉排序树的操作 3.1定义节点储存方式 3.2插入节点操作 3.2创建二叉排序树 3.4遍历输出(中序遍历) 3.5数据查找操作 3.6获取最大值和最小值 3.7删除节点操作 3.8销毁二叉排序树 4.完…

AdaBoost(上):数据分析 | 数据挖掘 | 十大算法之一

⭐️⭐️⭐️⭐️⭐️欢迎来到我的博客⭐️⭐️⭐️⭐️⭐️ 🐴作者:秋无之地 🐴简介:CSDN爬虫、后端、大数据领域创作者。目前从事python爬虫、后端和大数据等相关工作,主要擅长领域有:爬虫、后端、大数据…

Zookeeper经典应用场景实战(二)

文章目录 1、 Zookeeper 分布式锁实战1.1、 什么是分布式锁1.2、 基于数据库设计思路1.3、 基于Zookeeper设计思路一1.4、 基于Zookeeper设计思路二 1、 Zookeeper 分布式锁实战 1.1、 什么是分布式锁 在单体的应用开发场景中涉及并发同步的时候,大家往往采用Sync…