Unity笔记
文章平均质量分 68
学习Unity的个人笔记,大体上了解,方便之后使用查询
嘉神川优衣
游戏玩家,Unity开发者
展开
-
Unity UIToolkit 2021.2 新特性前瞻
目前Unity已经除了2021.2beta版本,在该版本中UIToolkit又有了新的变化,具体内容可以关注以下网址:What’s new in UI Toolkit?,我会简单的为大家介绍更新的内容。1.Runtime UI从最早的UI Element开始,历经多个版本,从2021.2开始,正式支持通过UIToolkit来为游戏和程序来创建UI,大家可以多多尝试这种新的UI工作流。2.UI Toolkit的全新功能2.1 TextMesh Pro在2021.2中,UIToolkit集成了Tex原创 2021-07-16 16:24:07 · 4578 阅读 · 5 评论 -
UIToolkit编辑器练习(二)
闲话不表,书接上回,在上回书说到,创建了一个List用来显示元素,这次就要做一个显示并且可以做修改的界面1.设计UI在这里我在UIBuilder中设计了一个简单的UI,以供显示和修改数据,这里要注意左边的命名方式,并且将ID设置为ReadOnly2.实现选择功能我们简单的修改一下之前的代码: VisualElement root; //保存itemList选中的物品 private static XElement selectedItem; private void OnEnable原创 2021-01-06 23:33:00 · 1775 阅读 · 1 评论 -
UIToolkit编辑器练习(一)
写一个UIToolkit的文章,记录一下UIToolkit的使用方式(一阵时间不用都快忘了),顺便写一个简单的物品编辑器数据保存为xml,使用LinqToXml,编辑器使用UIToolkit制作,并简单的模拟最终幻想14的物品需要UIBuilder插件1.创建Editor窗口通过Assets->Create->UIToolkit->Editor Window创建窗口ItemEditor(可以只选C#和uxml)然后通过UIBuilder,做一个简单的窗口然后修改Item.原创 2020-12-30 20:21:36 · 4433 阅读 · 3 评论 -
Unity UIToolkit 如何在Runtime模式进行使用
该文章使用的Unity版本为2020.1.7f1c1使用的package版本为UIBuilder:1.0.0-preview7,UI:1.0.0有关如何安装的内容可以参考我前一篇文章:如何安装package在本文中将记录如何在Runtime模式中使用已经制作好的uxml文件Runtime1.创建一个类public class UIToolkitSampleRuntime{ public string m_discribe; public int m_curHP; .原创 2020-10-05 16:58:37 · 1182 阅读 · 1 评论 -
Unity UIToolkit 如何在Editor模式进行使用
该文章使用的Unity版本为2020.1.7f1c1使用的package版本为UIBuilder:1.0.0-preview7,UI:1.0.0有关如何安装的内容可以参考我前一篇文章:如何安装package在本文中将记录如何在Editor模式中使用已经制作好的uxml文件Editor(Inspector)模式可以参考之前的文章UI Builder介绍,这里再记录一次Editor(Inspector)一、简单案例1.创建一个类using UnityEngine;[ExecuteInE.原创 2020-10-05 01:47:13 · 1767 阅读 · 0 评论 -
Unity UIToolkit 自定义VisualElement组件
该文章使用的Unity版本为2020.1.7f1c1使用的package版本为UIBuilder:1.0.0-preview7,UI:1.0.0有关如何安装的内容可以参考我前一篇文章:如何安装package在本文中将记录如何自定义VisualElement组件,然后在UIBuilder中进行使用1.使用UIBuilder制作一个简单的UI如下图所示如果有需要,例子的uxml代码在下方,可参考<ui:UXML xmlns:ui="UnityEngine.UIElements" xmln.原创 2020-10-03 20:10:36 · 3388 阅读 · 0 评论 -
Unity UIToolkit 使用笔记
该文章使用的Unity版本为2020.1.7f1c1使用的package版本为UIBuilder:1.0.0-preview7,UI:1.0.0UIToolkit的使用方式和UIElement已经有了区别!!!主要记录一下新的runtime使用方式,以及package的安装方式1.预先准备通过PackageManager安装最新(包括Preview)的UI和UIBuilder组件;如果没有Preview版本,可以通过Edit-ProjectSettings-PackageManager-A.原创 2020-10-02 16:48:24 · 7905 阅读 · 1 评论 -
Unity2019 UIElement 笔记(十五)UIElementsUniteCPH2019案例简单介绍
Unity2019.3.0f1已经出来了,但是目前还是没有UIElements Runtime的内容,我就拿UIElementsUniteCPH2019RuntimeDemo这个官方案例来简单介绍一下其实大部分的内容都和之前一样,只有——2. 如何使用——部分略有更新,如果对之前的内容有了充足的了解,只需要看2.即可(内容也不多),以此我们可以看出UIElement的强大1. Main...原创 2019-12-02 17:39:03 · 2792 阅读 · 2 评论 -
Unity2019 UIElement 笔记(十四)UI Builder
如果需要了解Unite Copenhagen 2019中有关UI Element的内容,可以看这位大大的文章——【Unity】UIElements 渲染细节,比NGUI/UGUI/FairyGUI好在哪?本文就简单介绍一下UI Builder的使用1.安装UI Builder我目前使用的Unity版本是2019.3.0b9,在菜单栏选择Windows——Package Manager,在...原创 2019-11-14 17:46:26 · 9047 阅读 · 0 评论 -
Unity ECS+Jobs System笔记 案例解析2(十一)
本章节为大家解析ECS案例,资源来自,大家自行获取:https://github.com/Unity-Technologies/EntityComponentSystemSamples3、IJobForEach——Job System入门案例这个案例的构造和案例1十分相似(如果没看过案例1的,可以先去看一下案例1的内容),ECS中的Entity和Component都是差不多的,区别就在于...原创 2019-08-24 19:21:51 · 594 阅读 · 0 评论 -
Unity ECS+Jobs System笔记 ECS——Component(三)
来源:https://docs.unity3d.com/Packages/com.unity.entities@0.0/manual/index.html我会对官方文档内容略作整理,有需要可以查看官方文档2.组件——Component组件中储存着与实体相关的数据(通过实体来索引组件及其数据)ECS中的组件是具有以下接口的结构:IComponentDataISharedCompon...翻译 2019-08-15 18:50:01 · 1676 阅读 · 1 评论 -
Unity ECS+Jobs System笔记 案例解析3(十二)
本章节为大家解析ECS案例,资源来自,大家自行获取:https://github.com/Unity-Technologies/EntityComponentSystemSamples5、SubScene——???原创 2019-08-25 18:29:58 · 1998 阅读 · 0 评论 -
Unity ECS+Jobs System笔记 简单介绍(一)
从Unity2018开始,推出了DOTS——多线程式数据导向型技术堆栈,其中有三板斧,分别是ECS、Jobs System、Burst,其中Burst是编译器加速,对于普通开发者来说ECS+Jobs System才是关注的重点,在这里我就为大家简单介绍一下着两个系统。参考来源 https://software.intel.com/pt-br/articles/get-started-with-...原创 2019-08-12 20:38:13 · 3556 阅读 · 1 评论 -
Unity ECS+Jobs System笔记 写入组(九)
来源:https://docs.unity3d.com/Packages/com.unity.entities@0.0/manual/index.html我会对官方文档内容略作整理,有需要可以查看官方文档WriteGroups(写入组)常见的ECS模式是系统读取一组输入的组件然后写出另一组输出的组件,但是,有时候你想重写这个系统,统并根据自己的输入集来更新输出组件WriteGroups...翻译 2019-08-21 20:12:17 · 984 阅读 · 0 评论 -
Unity ECS+Jobs System笔记 ECS——System(四)
3、系统——System提供了改变组件中数据状态的逻辑,比如:一个系统会根据两帧之间的间隔时间更新所有会动的实体的位置3.1、ComponentSystemUnity中的ComponentSystem(也是标准ECS系统中的一个System)对一个实体而言,它是只包括了方法,他不能包含数据;对比旧的Unity系统而言,他有点像旧的Component系统,但是是一个只包含方法的Componen...翻译 2019-08-16 19:02:18 · 1581 阅读 · 0 评论 -
Unity ECS+Jobs System笔记 访问数据1(五)
来源:https://docs.unity3d.com/Packages/com.unity.entities@0.0/manual/index.html我会对官方文档内容略作整理,有需要可以查看官方文档访问实体数据迭代访问数据对ECS而言是最常见的任务之一,ECS系统通常处理一组实体,从一个或多个组件读取数据,执行计算,然后将结果写入另一个组件一般而言,最有效率的迭代实体和组件的方法...翻译 2019-08-17 17:31:03 · 1182 阅读 · 0 评论 -
Unity ECS+Jobs System笔记 案例解析1(十)
本章节为大家解析ECS案例,资源来自,大家自行获取:https://github.com/Unity-Technologies/EntityComponentSystemSamplesECS案例解析1、ForEach在该案例中有两个组件,一个是RotationSpeedSystem_ForEach,还有一个是ConvertToEntity1.1、ConvertToEntity这个...原创 2019-08-22 19:42:13 · 2124 阅读 · 0 评论 -
Unity ECS+Jobs System笔记 访问数据4(八)
来源:https://docs.unity3d.com/Packages/com.unity.entities@0.0/manual/index.html我会对官方文档内容略作整理,有需要可以查看官方文档6、Component Groups读取或写入数据的第一步是查找数据,ECS框架中数据储存在组件中,组件根据它们所属的实体的原型储存在内存中,要定义ECS数据的视图,且该视图仅包含给定算...翻译 2019-08-20 19:02:52 · 872 阅读 · 0 评论 -
Unity ECS+Jobs System笔记 访问数据3(七)
来源:https://docs.unity3d.com/Packages/com.unity.entities@0.0/manual/index.html我会对官方文档内容略作整理,有需要可以查看官方文档4、ComponentSystem你可以使用ComponentSystem处理数据,ComponentSystem在主线程上运行,因此不利用多个CPU内核,在以下情况下使用Compone...翻译 2019-08-19 19:55:07 · 799 阅读 · 0 评论 -
Unity ECS+Jobs System笔记 ECS——Entity(二)
来源:https://github.com/Unity-Technologies/EntityComponentSystemSamples可以在Git上获取最新的ECS示例项目ECS项目指南打开Unity编辑器(最好是2019.1及以上)创建一个新项目(什么项目都可以,推荐先使用3D)打开PackageManager,并显示Preview Package添加下列包至项目中:Ent...翻译 2019-08-14 17:30:00 · 1400 阅读 · 1 评论 -
Unity2019 UIElement 笔记(三)UXML元素介绍下
UXML元素这里的内容来自官方文档:https://docs.unity3d.com/Manual/UIE-ElementRef.html 可以自行观看以下均来自官方文档1.均在UnityEngine.UIElements命名空间下2.无符号表示允许子元素数量是任意数量的VisualElement3.X字符表示不允许有子元素4.不作特殊说明,均包含所有VisualElement属性文...翻译 2019-05-03 14:20:33 · 5450 阅读 · 0 评论 -
Unity2019 UIElement 笔记(四)UXML的特性
在前面三部分,翻译了一下UXML元素的部分,也介绍了如何编写最简单的C#、UXML、USS。而在这一部分中,主要介绍UXML的特性本案例来自Unity官方文档 https://docs.unity3d.com/Manual/UIE-WritingUXMLTemplate.html简单编写UXML以下代码展示了一个简单面板:<?xml version="1.0" encoding="...翻译 2019-05-03 16:44:13 · 4325 阅读 · 0 评论 -
Unity2019 UIElement 笔记(五)Unity样式表(USS)
样式与Unity样式表本内容来自官方文档 https://docs.unity3d.com/Manual/UIE-USS.html每一个VisualElement都包含属性样式,用于设置元素的尺寸,颜色,绘制方式等。属性样式可以在C#中设置,也可以在样式表中设置。而UIElements支持用USS编写的样式表(Unity样式表),UXML就类似于HTML,而USS样式就类似于CSS,在本内容...翻译 2019-05-03 17:11:34 · 5295 阅读 · 0 评论 -
Unity2019 UIElement 笔记(二)UXML元素介绍上
在上一章中,已经创建了一个最简单的窗口,从这一章开始就来创建一个简单的编辑器功能这里需要说明的是,由于新的编辑器拓展翻译 2019-04-28 16:57:41 · 8162 阅读 · 3 评论 -
Unity2019 UIElement 笔记(六)USS介绍上
同样,本文来自Unity官方文档,https://docs.unity3d.com/Manual/UIE-USS.html ,具体内容可自行查看。USS选择器我们通过下面这张图片演示层次结构简单选择器(Simple selectors)最简单的选择器可以是通配符(wildcard),也可以是类型(type),名称(name)或者类名(class)类型(Type)Button/*Typ...翻译 2019-05-04 01:21:19 · 3066 阅读 · 1 评论 -
Unity2019 UIElement 笔记(七)USS介绍下
同样,本文来自Unity官方文档,https://docs.unity3d.com/Manual/UIE-USS.html ,具体内容可自行查看。----------------本章内容可以不看,可以通过CSS进行学习----------------USS支持的属性USS数据类型USS数据类型定义了USS属性能够接受的值和关键字< length >:表示长度值<...翻译 2019-05-04 14:12:41 · 2337 阅读 · 0 评论 -
Unity2019 UIElement 笔记(八)USS+BEM
USS写作样式表为了保持井井有条,UIElements采用BEM作为造型元素的方法。虽然使用BEM不是强制性的,但建议使用。关于BEMBEMBlock Element Modfier(块元素编辑器),是一个简单的系统,可以帮助编写结构化,不模糊,易于维护的选择器。使用BEM,可以为元素分配类,然后将这些类用作样式表中的选择器。它有如下3个特性:易用性 如果想使用BEM,你只需要采用BE...翻译 2019-05-04 15:06:58 · 1216 阅读 · 0 评论 -
Unity2019 UIElement 笔记(九)简单练习一
那么到目前为止,已经学会了如何使用UXML和USS,那么接下来就是实际运用了。那么在这里我会演示一个最简单的运用,如果有不足之处请大家指出。目标我们的目标是做出类似冒险岛1中角色属性的编辑界面,如下图:图片是直接从百度图片上找的,那我们就要开始简单的仿制这个UI布局来练习目前学到的内容。一、创建C#脚本首先我们创建一个C#脚本,命名为ActorState,并在里面写好我们所需要的属性...原创 2019-05-05 21:32:58 · 6192 阅读 · 3 评论 -
Unity2019 UIElement 笔记(十)简单练习二
这次做一个列表的练习,之前说可能要用到模板,最后发现是看情况使用的,那么就开始吧。目标定制一个下拉框,用来展示物品的Icon和名字。这次只演示功能,没有做美化,请大家见谅。一、制作单个Node这已经是轻车熟路了,创建三件套,我在这里命名为myNode,路径是Assets/Editor/myNode/…,然后稍微修改一下,然后:在UXML中设置Image和Label,并用一个contai...原创 2019-05-06 19:54:50 · 2872 阅读 · 3 评论 -
Unite 2019 个人笔记小结
在5月10日到12日期间,有幸在上海伙计会议中心参加了Unite Shanghai 2019大会。为期三天的Unite大会为大家带来了分享、交流和学习的平台,让开发者获取到最新的Unity技术知识和使用技巧。因为没有参加10日的Training day,我就总结一下11日和12日的内容,属于个人的小结(记录一下,防止之后忘记)。这里大部分是本人的感想和一些笔记的记录,如果有问题,请大家见谅...原创 2019-05-14 20:38:15 · 2421 阅读 · 0 评论 -
Unity2019 UIElement 笔记(十二)官方案例
官方案例来了Unity2019.2的beta版本在不久前出来了,我原本没怎么注意,后来稍微看了下更新Nodes,发现了:在Unity2019.2.0b中官方提供了案例!!!在Unity2019.2.0b中官方提供了案例!!!在Unity2019.2.0b中官方提供了案例!!!重要的事情说三遍!大家可以通过Unity Hub下载最新Unity2019.2.0b版本,然后通过Windows...原创 2019-05-20 19:09:52 · 4877 阅读 · 3 评论 -
Unity2019 UIElement 笔记(十一)事件系统
本文来自Unity官方文档,https://docs.unity3d.com/Manual/UIE-Events.html ,具体内容可自行查看。事件系统UIElements包括一个事件系统,能够让用户和可视元素进行通信交互。收到HTML事件的启发,UIElements事件系统有很多与HTML事件相同的术语。UIElement事件系统包括以下内容:1.调度系统 2.响应事件 3.合成事件 ...翻译 2019-05-18 15:56:18 · 3650 阅读 · 1 评论 -
Unity2019 UIElement 笔记(十三)自定义VisualElement
本文来自https://docs.unity3d.com/Manual/UIE-UXML.html 版本2019.1定义新元素UIElements是可拓展的,用户可以自定义UI组件和元素,但是在使用UXML定义新元素之前,必须先从VisualElement或其子类中派生新类,然后在这个新类中实现适当的函数,这个新类必须实现默认的构造函数。如下,派生新的StatusBar类并实现其默认构造函数...翻译 2019-05-23 18:27:40 · 6412 阅读 · 1 评论 -
Unity优化学习笔记
目标使用Unity提供的工具收集以及分析数据来对项目进行优化,找出性能问题是由什么导致的,然后解决问题,恢复以及优化性能重点在以下四个方面:渲染优化脚本优化内存优化平台优化接下来就从这四个方面简单介绍如何优化优化为什么要优化?因为优化能够创造令玩家满意的流畅的游戏体验在优化之前我们首先要明确游戏运行的平台,不同的平台运用了不同的技术。通常来说,PC平台的技术限制更小,而...原创 2019-05-30 23:40:52 · 368 阅读 · 0 评论 -
MySQL + Nhibernate学习笔记
MySQLhttps://www.mysql.com/downloads/ 通过官网下载最新的MySQL在本地创建服务并启动,打开MySQL Workbench管理数据库导入库文件在Visual Studio中通过管理NuGet程序包添加MySQL和Nhibernate的dll库文件配置Nhibernate在项目内创建hibernate.cfg.xml文件,并作初始配置如下<?...原创 2019-06-22 00:38:12 · 251 阅读 · 0 评论 -
Unity ECS+Jobs System笔记 访问数据2(六)
来源:https://docs.unity3d.com/Packages/com.unity.entities@0.0/manual/index.html我会对官方文档内容略作整理,有需要可以查看官方文档3、IJobChunk你可以通过在JobComponentSystem中实现IJobChunk来对区块中的数据进行迭代,JobComponentSystem会一个个的对每一个你希望系统去...翻译 2019-08-18 16:38:11 · 738 阅读 · 0 评论 -
Unity2019 UIElement 笔记(一)创建脚本
创建脚本首先在Assets下创建一个名为Editor的文件夹,和编辑器有关的监本都要创建在这个文件夹下。然后在Editor文件夹下右键——Create——UIElement Editor Window,然后就会出现C#,UXML,USS三个文件。在C#文件中,基本与之前的编辑器拓展没有区别,该脚本继承自EditorWindow,大部分的代码与之前没有区别,有关EditorWindow和Menu...翻译 2019-04-27 23:34:43 · 14338 阅读 · 0 评论