草庐IT

Unity-ugui

全部标签

Unity中的Vector2的使用方法

Vector2表示2D向量和点1.静态变量voidStart(){//静态变量print(Vector2.down);print(Vector2.up);//Y轴正方向print(Vector2.left);print(Vector2.right);//X轴正方向print(Vector2.one);//单位化向量(1.1)print(Vector2.zero);//用来获取坐标原点}2.构造函数voidStart(){Vector2v2=newVector2(2,2);print("v2的向量是:"+v2);//输出v2的向量是:(2.00,2.00)}3.成员变量(注意:开头小写的)pri

Unity中Shader 纹理属性 Tilling(缩放度) 和 Offset(偏移度)

文章目录前言一、Tilling(缩放度),个人理解有点像减小周期函数的周期的效果(在单位空间内,容得下重复的函数图像的多少)二、Offset(偏移度),个人理解是函数的平移三、在Shader中使用Tilling和Offset时,需要在纹理后申明一个四维向量(因为是纹理,需要精确一点,一般使用float4这个四维向量,且名字在贴图名后加_ST即可)1、然后这里用消融效果的噪波贴图做例子,就是在片元着色器中,对噪波贴图进行采样时,使用噪波贴图的二维向量uv*XX_ST.xy+XX_ST.zw(这里的xy代表Tilling的xy,zw代表Offset的xy)2、优化代码在片元着色器取样时,对每一个取

Unity 打开文件选择框(Standalone File Browser插件)

功能:Worksineditorandruntime.支持运行时+编辑器模式Openfile/folder,savefiledialogssupported.支持打开文件/文件夹,以及保存文件Multiplefileselection.支持文件多选Fileextensionfilter.支持文件后缀过滤Mono/IL2CPPbackendssupported.LinuxsupportbyRicardoRodrigues.支持Linux,感谢RicardoRodrigues.BasicWebGLsupport.基础的WebGL支持,未大量验证。使用://Openfile//打开文件varpath

Unity C#中LuaTable、LuaArrayTable、LuaDictTable中数据的增删改查

LuaTable、LuaArrayTable、LuaDictTable中数据的增删改查介绍Lua表lua表初始化lua移除引用lua中向表中添加数据lua中表中移除数据lua表中连接数据lua表中数据排序获取lua表长度获取表中最大值UnityC#中LuaTableUnityC#中LuaArrayTable、LuaDictTable、LuaDictTable介绍在Lua中和C#中对lua的表进行增删改查是比较常用的表操作,这里主要对比一下lua和C#中分别怎么对表进行增删改查Lua表lua表初始化mytable={}lua移除引用mytable=nillua中向表中添加数据向xxtable中的

unity | 图片放入指定文件夹自动变成sprite精灵模式

一、理解我们要做的事    原本图片放入文件夹后是Default(默认)模式,但是需要大量处理图片的时候,我们希望它拖进去就是sprite模式=我们想修改unity原本的功能。二、unity是允许我们去修改它本身的一些功能的,你可以定制属于你的unity    这需要用到UnityEditor,所以我们需要在代码里加上usingUnityEditor;三、unityEditor    因为我们现在想要修改的是导入图片时改变图片模式,所以这部分内容在导入这里,因此我们需要继承AssetPostprocessorusingUnityEditor;usingUnityEngine;publiccla

解决Blender在Unity中动画导入不兼容的问题

如果你在blender中建立了一个模型,创建了相应的动画和其他东西,导出成FBX文件可能会发现在unity中并不存在animation。提供一个解决方案:1.首先选中你要导入的带有相应动画的物体,然后点击文件,导出成FBX文件。2.勾选选中的物体3.点击烘焙动画然后再导出。 4.导入到unity时注意要将animationtype为legacy

Unity实现伤害飘字

虽然用的是2D模板,但是重要的实现部分基本2D和3D是一样的。想要实现实现伤害飘字,首先就需要创建一个文本组件,这里我使用的是TextMeshPro_Text(UI)组件类型,建议在一个空对象底下直接创建一个Text类型的UI文本。将Text组件内的字符格式根据你的需求设置好后,(颜色大小等要根据个人的使用习惯和不同场景下都有差异,但是基本都需要将字节居中)将其设置为预制体就行了。然后如何生成字体在敌人头上呢?只需要让敌人在受到攻击的位置创建这个文本对象就可以了,然后将控制文本对象各种显示效果的脚本放置在文本对象中即可。这是控制生成文本对象的代码//该脚本要挂载都敌人组件上,在敌人的血条改变或

【笔记】要点总结:Unity 2D教程——Ruby’s Adventure

Ruby'sAdventure:2DBeginner-UnityLearnhttps://learn.unity.com/project/ruby-s-adventure-2d-chu-xue-zhe?uv=2019.4目录物理移动时发生碰撞,为什么会抖动?如何解决抖动?读取输入和移动的正确示范对象暂停移动时,检测不到碰撞只有Collider2D,没有Rigidbody2D的箱子使用复合碰撞体(制作地形)2D视觉处理遮挡(排序问题)、轴点(Pivot)、碰撞体形状动画混合树(BlendTree)脚本比较浮点数 在Start函数中获取组件的问题UICanvas的RenderModeCanvasS

unity中实现经典的2d横版单向跳跃平台

经常玩2d横版游戏的朋友们相信一定对这种单向跳跃平台很熟悉:我希望我的角色可以通过跳跃跳上平台,然后在平台之上按下键盘的下键后从平台上落下。那么想要实现这样的效果具体要怎么做呢?我们还是先将想要实现的效果进行一个逻辑上的拆分:(1)单向平台,即平台只检测上方的碰撞而不检测下方;(2)角色在平台之上的情况下通过按下键盘的下键使得角色落下平台。关于第一点,自己其实当时是苦恼了很久的。因为unity的Collider组件当时的自己只知道作为普通的碰撞器或是触发器来进行使用,一个很粗糙的想法是时刻比较当前平台与玩家的坐标,如果平台坐标在玩家之上就作为触发器,一旦坐标低于平台就要作为碰撞器。但这个想法实

unity 鼠标事件

 1.1键盘触发事件Input.GetMouseButtonDown(0)鼠标按下那一刻触发(点击屏幕)Input.mousePosition鼠标的坐标Input.GetKeyDown(KeyCode.Space)按键被按下那一刻进行触发(点击空格)Input.GetKey() 按键一直按着时触发Input.GetKeyUp()按键被按下后抬起时触发 Input.GetMouseButtonUp() 鼠标抬起的那一刻时触发Input.GetMouseButton(0/1/2) 1:左键2:右键3:中键鼠标一直按着时触发1.2D中鼠标方法事件描述OnMouseDown当鼠标点击才会触发该事件函数