Unity学习part4
1、ui界面的基础使用
ui可以在2d和矩形工具界面下操作,更方便,画布与游戏窗口的比例一般默认相同
如图所示,图片在画布上显示的位置和在游戏窗口上显示的位置是相同的
渲染模式:屏幕空间--覆盖,指画布覆盖在游戏物体渲染画面 上,不会被游戏物体渲染的画面所遮挡。
而屏幕空间--摄像机则允许游戏物体和画布一起渲染甚至遮挡在画布之上,画布永远朝向摄像机
世界空间则允许画布进行旋转,方便做一些3d按钮.(明日方舟的主界面ui 弹幕)
而排序次序是指如果有多个ui画布,哪个画布最先被渲染 .而选择了ui缩放模式为屏幕大小缩放,固定分辨率之后,屏幕所设定的分辨率大小不会影响ui的显示效果
2、ui基础,锚点和轴心点
光线投射目标-- 指是否要进行射线检测
设置原生大小--显示图片原本的大小,因为有的图片被拉伸会模糊,需要展示原本大小
锚点是设置在父物体身上的,图像的位置是相对与锚点的偏移
锚点的最大值最小值是指四个点的比例.(锚点分散之后,被框选中的图像会随着画布大小的调整而调整 弹幕云)。
图片跟锚点的上下左右保持相同距离,当屏幕大小改变时(笔记本电脑屏幕和4k电视屏幕),锚点随之改变,则图片大小也会随之改变(跟锚点上下左右保持固定距离 但可能导致图片比例改变).如果锚点的四个点是何在一起的,则图像的位置x,y是固定不变的(2d没有z轴)
当锚点像这样上下合在一起时,屏幕进行变化时,图像只会进行宽度的拉伸,不会进行高度的变化
图像的位置其实时图像的轴心点相对于父物体锚点的偏移
3、文本组件的基本使用
旧版字体富文本是指支持html语法等写法(通过标签进行加粗、斜体等等)。水平溢出是指自动截断文本到文本框所显示位置或者多出显示框显示范围的文本依旧显示,垂直溢出相同。最佳适应是指让字体大小显示由电脑选择(和最小大小和最大尺寸配合使用)
新版文本相比旧版更像word编辑了
4、按钮
interactable为是否可交互,过渡为鼠标移动或者按下时按钮的显示情况(加深等),高亮是指鼠标移动到按钮上时,过渡可以选择颜色色彩或者 sprite交换。2d游戏时,使用图标需要是sprite类型
导航按钮主要是让手柄通过上下键选中键盘的
导航的explict类似于按钮的超链接,指该按钮按上下左右分别可以跳转到哪一个按钮。使用的效果可以达到我希望我的敌人在战场上捡到我的游戏机没法正确的使用游戏机按钮的效果 .可以取消可视化去除连线显示
可以添加鼠标点击通知事件
public class ButtonTest : MonoBehaviour
{// Start is called before the first frame updatevoid Start(){}// Update is called once per framevoid Update(){}public void ButtonClick(){Debug.Log("click1");}
}
5、文本输入框
interactable指文本是否可以被选中 。角色限制纯纯机翻,是character limit。内容类型指可以设置输入内容为十进制、密码等。选择颜色是指文本框中字符被选中时高亮颜色。隐藏移动收入--移动端点击时会弹出输入键盘
输入文本框的事件通知和button差不多
public class ButtonTest : MonoBehaviour
{public InputField inputField; //新版的是TMP_InputField类型,来自TMPro类// Start is called before the first frame updatevoid Start(){}// Update is called once per framevoid Update(){}public void TextChanged(){Debug.Log(inputField.text);}
}
6、选项组件
ui->切换,搭配toggle group组件实现多只能选1效果,将要多选1的选项拉到同一个toggle group
获取下拉框的组件
public class DropDownTest : MonoBehaviour
{// Start is called before the first frame updatevoid Start(){//获取下拉组件Dropdown dropdown = GetComponent<Dropdown>();//获取组件的选项List<Dropdown.OptionData> options = dropdown.options;//修改选项options.Add(new Dropdown.OptionData("俄罗斯"));}// Update is called once per framevoid Update(){}
}
要给下拉框的选项添加sprite,需要先给项图像添加图源,再配置sprite
标题图像同样如此操作(新建ui ->image,将image作为标题图像的图像源)
7、滚动条与滚动视图
可以看不同组件更改滑动条sprite
滚动条和滚动视图一般是共同使用的
如果把遮罩mask组件取消,超出图像空间外的内容也会被显示出来.
8、面板的使用
在有多个物体的情况下,要进行多屏幕适配时,需要一个个调整锚点,很不方便
这时候就可以使用面板,将多个 物体归到一个面板下,只需要调整面板的锚点即可以做多屏幕适配
9、常见的ui组件
父物体添加遮罩之后,子物体超出范围的会被遮罩
内容适应器组件,适应内容自动调整显示宽度/长度
矩形框选工具可以改变文本框的大小
vertical group layout能自动排版组件。
控制子物体大小是指子物体会随着父物体的宽度/高度改变而改变.。间距是指子物体之间的间距,填充则相当于css中的padding
水平控件同样如此
网格布局grid layout group
而滑动视图+网格布局,就可以做成背包系统的ui
到此,初阶课程完结,恭喜自己unity小学毕业,但已经在思考要不要跳到UE了,团结引擎真的无力吐槽
相关文章:

Unity学习part4
1、ui界面的基础使用 ui可以在2d和矩形工具界面下操作,更方便,画布与游戏窗口的比例一般默认相同 如图所示,图片在画布上显示的位置和在游戏窗口上显示的位置是相同的 渲染模式:屏幕空间--覆盖,指画布覆盖在游戏物体渲…...

【AI绘画】大卫• 霍克尼风格——自然的魔法(一丹一世界)
大卫• 霍克尼,很喜欢这个老头,“艺术是一场战斗”。老先生零九年有了iphone,开始用iphone画画,一零年开始用ipad画画,用指头划拉,据说五分钟就能画一幅,每天早上随手画几幅送给身边的朋友。很c…...

MySQL日志undo log、redo log和binlog详解
MySQL 日志:undo log、redo log、binlog 有什么用? 一、前言 在MySQL数据库中,undo log、redo log和binlog这三种日志扮演着至关重要的角色,它们各自承担着不同的功能,共同保障了数据库的正常运行和数据的完整性。了解…...

C++中的指针
一.指针的定义 在C中,指针是一种特殊的变量,它存储另一个变量的内存地址。简单的说,指针是指向另一个数据类型的“指针”或“引用”,我们可以通过指针来间接操作其他变量的值。 指针的基本语法: 数据类型 *指针变量名 …...

拆解微软CEO纳德拉战略蓝图:AI、量子计算、游戏革命如何改写未来规则!
2025年2月19日 知名博主Dwarkesh Patel对话微软CEO萨蒂亚纳德拉 在最新访谈释放重磅信号:AI将掀起工业革命级增长,量子计算突破引爆材料科学革命,游戏引擎进化为世界模拟器。 整个视频梳理出几大核心观点,揭示科技巨头的未来十年…...

智能算法如何优化数字内容体验的个性化推荐效果
内容概要 在数字内容体验的优化过程中,个性化推荐系统的核心价值在于通过数据驱动的技术手段,将用户需求与内容资源进行高效匹配。系统首先基于用户行为轨迹分析,捕捉包括点击频次、停留时长、交互路径等关键指标,形成对用户兴趣…...

MATLAB在数据分析和绘图中的应用:从基础到实践
引言 股票数据分析是金融领域中的重要研究方向,通过对历史价格、成交量等数据的分析,可以帮助投资者更好地理解市场趋势和做出决策。MATLAB作为一种强大的科学计算工具,提供了丰富的数据处理和可视化功能,非常适合用于股票数据的…...

AI客服-接入deepseek大模型到微信(本地部署deepseek集成微信自动收发消息)
1.本地部署 1.1 ollama Ollama软件通过其高度优化的推理引擎和先进的内存管理机制,显著提升了大型语言模型在本地设备上的运行效率。其核心采用了量化技术(Quantization)以降低模型的计算复杂度和存储需求,同时结合张量并行计算&…...
Host文件没有配置ip解析,导致请求接口速度慢
Linux访问第三方接口速度慢 现象 在测试环境,Linux的服务器中,要访问第三方接口;速度有时快,有时慢。 有时候第一次访问比较慢,第二次访问比较快。第三方人员,排查之后,第三方接口没有问题&am…...

excel导入Mysql中时间格式异常
问题描述: 当使用xls/xlsx/csv导入mysql中,如果列是时间类型比如excel表中显示2024/02/20 09:18:00,导入后时间可能就会变成1900-01-01 09:18:00这样。 问题原因: 这是由于excel表中和数据库中的时间类型不匹配导致。 问题解决…...
vue 判断一个属性值,如果是null或者空字符串或者是空格没有值的情况下,赋值为--
在 Vue 中,可以通过多种方式来判断一个属性值是否为 null、空字符串或者仅包含空格,如果满足这些条件则将其赋值为 --。下面分别介绍在模板和计算属性、方法中实现的具体做法。 1. 在模板中直接判断 如果只需要在模板中对属性值进行显示处理,…...

JavaWeb-Tomcat服务器
文章目录 Web服务器存在的意义关于Web服务器软件Tomcat服务器简介安装Tomcat服务器Tomcat服务器源文件解析配置Tomcat的环境变量启动Tomcat服务器一个最简单的webapp(不涉及Java) Web服务器存在的意义 我们之前介绍过Web服务器进行通信的原理, 但是我们当时忘记了一点, 服务器…...
vue语法---样式操作-行内样式
文章目录 直接写死的行内样式v-bind绑定对象(静态样式)对象数组 直接写死的行内样式 <template><div v-bind:style"{color:red}">睡觉</div> </template><script>export default{data() {return {}},methods:{}, mounted(){},} </…...
封装一个echarts的组件
父组件页面 <yyjlchartv-if"showyyjl"chartId"yyjllLine":sourceData"sourceDatayyjl":options"optionsyyjl"></yyjlchart>components: {LineEcharts,yyjlchart: () > import("../yyjlchart"),},data() {re…...

计算机网络安全之一:网络安全概述
1.1 网络安全的内涵 随着计算机和网络技术的迅猛发展和广泛普及,越来越多的企业将经营的各种业务建立在Internet/Intranet环境中。于是,支持E-mail、文件共享、即时消息传送的消息和协作服务器成为当今商业社会中的极重要的IT基础设施。然而࿰…...
Linux 性能调优简单指南
一、性能调优概述 Linux 性能调优是系统运维的核心任务之一,目的是通过资源分配、参数优化和瓶颈消除,提升系统运行效率和稳定性。调优需遵循以下原则: 基于数据驱动:使用监控工具精准定位瓶颈分层逐级分析:从硬件到应用的逐层排查变更可回溯:单变量调整并记录结果场景适…...
第十一章: vue2-3 生命周期
创建 挂载 更新 销毁 四个阶段 > 生命周期函数 生命周期钩子 created mounted 创建vue2 的脚手架: vue create vue2_test v-show"isShow" v-if "isShow" 这里的isShow 表示一个函数 let isShow "true" <tem…...

【算法基础】--前缀和
前缀和 一、一维前缀和示例模板[寻找数组的中心下标 ](https://leetcode.cn/problems/tvdfij/description/)除自身以外的数组乘积和可被k整除的子数组 一、一维前缀和 前缀和就是快速求出数组某一个连续区间内所有元素的和。 示例模板 已知一个数组arr,求前缀和 …...

输入搜索、分组展示选项、下拉选取,el-select 实现:即输入关键字检索,返回分组选项,选取跳转到相应内容页 —— VUE 项目-全局模糊检索
后端数据代码写于下一篇:输入搜索、分组展示选项、下拉选取,全局跳转页,el-select 实现 —— 后端数据处理代码,抛砖引玉展思路 【效果图】:分组展示选项 【去界面操作感受一下】—> 便捷简洁的企业官网 【录制效…...

Web入侵实战分析-常见web攻击类应急处置实验2
场景说明 某天运维人员,发现运维的公司站点被黑页,首页标题被篡改,你获得的信息如下: 操作系统:windows server 2008 R2业务:公司官网网站架构:通过phpstudy运行apache mysqlphp开放端口&…...

阿里云ACP云计算备考笔记 (5)——弹性伸缩
目录 第一章 概述 第二章 弹性伸缩简介 1、弹性伸缩 2、垂直伸缩 3、优势 4、应用场景 ① 无规律的业务量波动 ② 有规律的业务量波动 ③ 无明显业务量波动 ④ 混合型业务 ⑤ 消息通知 ⑥ 生命周期挂钩 ⑦ 自定义方式 ⑧ 滚的升级 5、使用限制 第三章 主要定义 …...
系统设计 --- MongoDB亿级数据查询优化策略
系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log,共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题,不能使用ELK只能使用…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序
一、开发环境准备 工具安装: 下载安装DevEco Studio 4.0(支持HarmonyOS 5)配置HarmonyOS SDK 5.0确保Node.js版本≥14 项目初始化: ohpm init harmony/hospital-report-app 二、核心功能模块实现 1. 报告列表…...
【python异步多线程】异步多线程爬虫代码示例
claude生成的python多线程、异步代码示例,模拟20个网页的爬取,每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程:允许程序同时执行多个任务,提高IO密集型任务(如网络请求)的效率…...
关于 WASM:1. WASM 基础原理
一、WASM 简介 1.1 WebAssembly 是什么? WebAssembly(WASM) 是一种能在现代浏览器中高效运行的二进制指令格式,它不是传统的编程语言,而是一种 低级字节码格式,可由高级语言(如 C、C、Rust&am…...

如何在最短时间内提升打ctf(web)的水平?
刚刚刷完2遍 bugku 的 web 题,前来答题。 每个人对刷题理解是不同,有的人是看了writeup就等于刷了,有的人是收藏了writeup就等于刷了,有的人是跟着writeup做了一遍就等于刷了,还有的人是独立思考做了一遍就等于刷了。…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...
2023赣州旅游投资集团
单选题 1.“不登高山,不知天之高也;不临深溪,不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...

mac 安装homebrew (nvm 及git)
mac 安装nvm 及git 万恶之源 mac 安装这些东西离不开Xcode。及homebrew 一、先说安装git步骤 通用: 方法一:使用 Homebrew 安装 Git(推荐) 步骤如下:打开终端(Terminal.app) 1.安装 Homebrew…...
NPOI Excel用OLE对象的形式插入文件附件以及插入图片
static void Main(string[] args) {XlsWithObjData();Console.WriteLine("输出完成"); }static void XlsWithObjData() {// 创建工作簿和单元格,只有HSSFWorkbook,XSSFWorkbook不可以HSSFWorkbook workbook new HSSFWorkbook();HSSFSheet sheet (HSSFSheet)workboo…...