![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Unity功能代码
文章平均质量分 58
真鬼123
这个作者很懒,什么都没留下…
展开
-
【Unity C#基础】浅谈List底层逻辑
List的效率不高,只是实用性强,可以对线性算法和内存分配方式进行优化。在使用时尽量避免扩容等操作,频繁创建数组。并且List时线程不安全的,在多线程中使用要加锁。原创 2024-07-16 13:47:37 · 231 阅读 · 0 评论 -
【Unity URP】通过代码动态添加URP渲染通道RendererFeature
URP的渲染通道RendererFeature可以很方便的实现一些渲染问题,比如渲染顺序问题,遮挡后的材质替换等等。那么我们如何通过代码来动态添加和修改呢?首先我们需要获取到当前的URP配置文件,在对配置文件进行添加。原创 2024-07-06 12:35:59 · 341 阅读 · 1 评论 -
【Unity】 UI跟随3D物体,世界坐标转UI坐标
RectTransformUtility.ScreenPointToWorldPointInRectangle将一个屏幕空间点转换为 RectTransform 的本地空间中位于其矩形平面上的一个位置。UI坐标的原点(0,0)在正中心,所以我们要减去偏移量(Screen.width / 2, Screen.heigth / 2)。注意:由于基于摄像机进行了两次运算,此方法计算的结果,由于精度问题,会有一点偏差,导致ui抖动。考虑到UI的层级关系,需减去父物体的localPosition。原创 2024-07-06 12:34:43 · 307 阅读 · 0 评论 -
【Unity】常量数据类中字符串string的便捷赋值
如上面的代码,字符串的内容本身和字符串的命名一样,但却需要重复写一遍。通过在构造函数中使用Field.SetValue,可以实现自动赋值。开发中,我们经常会设置固定的字符串用于事件系统和调用。原创 2024-07-05 13:42:44 · 122 阅读 · 0 评论 -
【Unity代码】使用txt文件保存和读取游戏数据
使用二进制存储数据1.创建需要存取的数据类: public class SaveData { public int i = 11; public string str = "save"; } SaveData data = new SaveData(); data.i = 12; data.str = "ccc";2.获取数据存取路径Application.persistentDataPath官方文档:https://docs.un原创 2022-03-14 15:21:04 · 6205 阅读 · 0 评论 -
Unity优化,纹理贴图渲染设置QualitySettings.masterTextureLimit
QualitySettings.masterTextureLimit用于设置贴图渲染质量。只适用于贴图,不适用于UI图片。QualitySettings.masterTextureLimit默认为0,表示不对贴图渲染限制;设置为1,是渲染1/2的画质,相当于压缩贴图1/2大小。设置为2则是 1/4;设置为3则是1/8;以此类推。注:对项目内所有贴图进行渲染限制。效果图片:(桐人图片来自网络,侵删)贴图大小为849*1200设置为0设置为1设置为2设置为3设置为4设置为5原创 2021-03-26 16:25:19 · 1451 阅读 · 0 评论 -
Unity,Animator旋转差值调整,欧拉差值和四元数差值
默认的Animator动画总是不能完成我们想要让物体旋转n圈的效果。解决方法:在Rotation旋转动画右键,选择Interpolation,可以选择欧拉差值,或者四元数差值。Euler Angles欧拉差值,则为起点值,到终点值的变化。例如在欧拉差值下:从0 - 720,转了两圈。真实的从0度转到了720度。Quaternion四元数差值,则只关注起点值方向,到终点值方向的变化。在四元数差值下:从0 - 720,没有转动。相当于从0度 转到 (720 % 360)0度。...原创 2020-11-17 12:08:22 · 945 阅读 · 1 评论 -
Unity WebGL背景透明化(画布透明),显示Html网页背景
实现效果演示unity中:网页中:1.创建.jslib文件,文件内容如下:var LibraryGLClear = { glClear: function(mask) { if (mask == 0x00004000) { var v = GLctx.getParameter(GLctx.COLOR_WRITEM...原创 2020-04-16 11:05:01 · 3649 阅读 · 13 评论 -
Unity WebGl播放m3u8在线视频(监控,直播)解决方案
WebGL版本播放视频是很大的一个坑,教程也不多。以下为工作中使用的两个方法。一、使用AVProVedio插件新版AVProVedio插件支持WebGl播放倒入插件,我用的版本是1.9.4,文章结尾会放链接。1.修改SourcePath为 Absolute Path Or URL在下面写上播放的链接,测试链接为CCTV1:http://ivi.bupt.edu.cn/hls/cctv...原创 2020-06-22 09:18:46 · 21573 阅读 · 58 评论 -
UnityC#超简单读写txt、json文件
超简单的读写txt文件,json文件内容。1.读取使用到的类TextAsset 文本资源类(只读)(Unity中API)Resources 用于方便的读取Unity中Resources文件夹内的文件(由于本例子是读取Resources文件)核心代码很简单//获取Resources文件夹下名为_dataName的文本文件TextAsset jsonTextAsset = Resour...原创 2020-01-20 11:55:01 · 1383 阅读 · 1 评论 -
Unity圆盘抽奖(轮盘赌)代码,思路
思路1.初始化:确定有几个扇形区域,每个区域有多大,算出每个区域占比分别是多少。2.判断 :设定一个随机数(0~1),判断随机数在圆盘的那个区域中。3.提高准确性,杜绝偶然性,重复n次第2步。得到进入次数最多的区域。(好比扔硬币,扔10次,可能10次正面,但要是扔足够多次数,1w次,10w次,次数越多越无限接近于50%,即真正的概率)实现1.定义字段 //试验次数 publ...原创 2020-01-20 09:38:41 · 1505 阅读 · 0 评论 -
Unity代码添加Animator动画回调事件
手动添加动画回调事件在帧动画上方右键,添加Animation Event;在Inspector选择添加的方法。需要脚本挂载在相应有Animator的物体上,才可选择其public方法。代码添加动画回调事件需要用到的类Animator、AnimatorOverrideController 用于覆盖控制器中的动画剪辑,以针对给定的头像专门化动画,不会重置状态机的当前状态、Animat...原创 2020-01-17 11:29:54 · 8156 阅读 · 0 评论 -
Unity简单实用的文本对话插件,可以做任务说明框
实现需求:类似对话,开始对话,1.播放问题文字,打字机动画播放文字,鼠标点击播完所有文字,2.再次点击,播放回答文字。3.再次播放问题文字。4.如果第2步没有对应文字,则跳到第1步,第1步没有对应文字则跳到第2步。引用了DoTween插件和特性拓展插件NaughtyAttributes。https://github.com/dbrizov/NaughtyAttributes核心...原创 2020-01-15 15:09:09 · 1066 阅读 · 0 评论 -
Unity Socket建立服务器客户端与mysql数据库互通,数据库返回数据转换成类
1.编写服务器和客户端用Socket互联(1)编写MyServer服务器using System;using System.Collections.Generic;using System.IO;using System.Net;using System.Net.Sockets;using System.Threading;using UnityEngine;namespace ...原创 2019-12-31 12:04:59 · 723 阅读 · 2 评论 -
Unity功能代码插件 中只显示选中物体 隐藏其他物体
分享一个在Unity中控制代码,只显示选中物体和Camera还有挂载本脚步的物体使用方法:在场景中添加一个空物体,挂载本脚本即可。实现很简单,1.获取本场景所有物体。 public List<GameObject> list; public void Init() { list = new List<GameObject>(); ...原创 2019-12-14 12:41:24 · 2214 阅读 · 2 评论