自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 资源 (4)
  • 收藏
  • 关注

原创 Unity集成GPT

目前GPT在Unity的应用虽还不能很高的智能化,但可以使用他生产代码、修改代码、以及给出一些优化、设计建议等,从而很大程度的提升我们的工作效率。

2023-03-26 22:32:52 4795 6

原创 Unity XR

UnityXR及XRInteractionToolki使用

2023-01-31 09:19:56 951 2

原创 轨迹路线生成与运动插件 Curvy Spline 的使用

在这里插入图片描述

2022-01-20 16:42:29 5731

原创 权重随机数

权重随机数需求场景应用代码需求场景Unity和C#中都提供的随机数的方法,但实际工作中我们常常需要对不同类型的情况有不同随机概率,这时候就需对随机数做权重处理。应用代码为此我抽离了一个随机数权重的静态类using System.Collections;using System.Collections.Generic;using UnityEngine;/// <summary>/// 权重随机数/// </summary>public static class

2021-08-26 11:42:00 647

原创 Unity 文件压缩与线程使用

一、准备工作导入ICSharpCode.SharpZipLib.dll。下载地址:https://download.csdn.net/download/yasinxin/11861899二、zip压缩代码参考地址:https://www.cnblogs.com/kanekiken/p/8033685.html 三、压缩运用四、线程压缩五、获取压缩进度获取文件大小 /// <summary> /// 计算文件或文件夹大小

2021-06-04 01:15:59 594

原创 Unity 查找资源的引用与依赖

一、查找引用1.主要思路:1)使用Directory.GetFiles(Application.dataPath, "*.*", SearchOption.AllDirectories) 获取所有资源。2)通过File.ReadAllText() 获取资源的详细信息。3)最后通过正则表达式Regex.IsMatch(), 判断得到的详细信息中是否包含选中资源的guid。2.代码using UnityEngine;using UnityEditor;using System.IO

2020-10-18 22:22:00 4165

原创 Unity开发Hololens2

一、环境配置1) Unity版本2019以上(已验证版本unity2019.4.7f1)2) VisualStudio 2019vs要使用到的组件:3) Windows 10 SDK 下载连接:https://developer.microsoft.com/zh-cn/windows/downloads/windows-10-sdk/由于公司网络限制建议下载Iso二、Unity集成MRTK插件1) 下载Mixed Reality Toolkith...

2020-09-10 19:16:55 2554 4

原创 Unity Shader 素描渲染

一、效果Unity3D Shader 素描渲染二、实现1.素描shader

2020-07-11 15:42:17 1109

原创 心形函数的正确打开方式(Unity3D Shader)

一、前因前几天刷完了最近特别火的一部电视剧《隐秘的角落》,里面秦昊饰演的张东升提到了一个笛卡尔的心形函数:r=a(1-sinθ)。出于好奇我就去查了一下这个函数的图形,但感觉并不恨像心行,有点像桃子。所以我打算使用Unity的Shader画一个更好的心形函数。二、实现1.要渲染到全屏,就需要相机Camera的Texture进行材质修改,所以先创建一个RenderTexture的脚本public class RenderControl : MonoBehaviour {

2020-06-29 18:55:31 2681

原创 Unity对网络资源更新加载管理设计

一、诉求对于一些文件资源(图片、word、Excel、PPT、视频等),放再程序里会增加包体的大小,所以需要把资源放在服务器。实现的需求有:1)从网加载资源,并保存到本地,后面就从本地加载2)有更新机制,当网络上的资源更新后,要从新下载替换本地资源二、思路分析1.文件经常是分几个层级保存起来的,所以要知道某个文件夹或模块下有哪些资源文件的话,我们就需要一个配置文本,把每个层级对应的文件记录在文本中。2.为了校验是否有更新,可以把每个文件记录一个MD5值一并保存起来。3.加载时

2020-06-18 19:39:06 473

原创 AssetBundle的基础使用

一、关于AssetBundle1.什么是AssetBundle1) AssetBundle是一种经过Unity引擎处理了的资源包2) 已经序列化的资源3) 具有针对平台的特性4) 外部不相干,使用同样加密方式的包,可以互相调用2.类型1) 一个场景打成一个AB包,使用的时候,是将场景加载到游戏中2) 松散资源包,一堆可复用的资源打成一个包,使用的时候,是按需载入包3.作用1)最小化APP安装包1) 增量更新3) 更好的控制实时的内存消耗4) 选择性的提供.

2020-05-10 22:09:51 545

原创 基于四叉树的场景管理

一、解决的问题在游戏地图中有很多对象,根据视野范围内的区域,并把这些区域的对象显示出来,其它不在视野范围的不显示。效果如下:二、四叉树原理在数据结构中,树常常用于层级管理,就像我们国家行政单位一样,从国家-->省-->市-->县(区)-->街道(村)这样每个人属于哪个地方就很清楚了。同样我们在游戏场景中也可以对游戏地图做类似的分类,基于地图的形状...

2020-05-04 16:34:01 3566 1

原创 Unity中利用反射自动读取Excel配置

我之前写过一篇Excel转Asset的文章,链接:https://blog.csdn.net/YasinXin/article/details/102524921但当项目的Excel特别多时,那种方法还是不够灵活方便。之前的是要根据接受的Excel写好类和读取方法,这次是用一个统一的方法读取不同的Excel文件,且自动生成相应的类。那么就开始吧。...

2020-05-04 12:59:55 628

原创 Shader 实现颜色轮盘效果

一、效果如下,可以根据设置实现颜色的块数二、实现方法1.新建一个Unlitshader做模板2.色轮的变化需要使用hsb的色彩模式,所以先从网上找一个hsb转rgb的函数 fixed3 hsb2rgb(fixed3 c) { fixed3 rgb = clamp(abs(fmod(c.x*6.0 + fixed3(0.0, 4.0, 2.0),...

2020-05-03 17:34:48 1266

原创 Unity的单例

单例模式通常用于项目的模块管理,在Unity中主要用两种单例,一种是基于C#普通单例,一种是继承了Unity的MonoBehaviour的单例。1.普通单例where 限制模板的类型, new()指的是这个类型必须要能被实例化加lock以保证我们的单例是线程安全的。public abstract class Singleton<T> where T : new() {...

2020-05-02 18:46:16 939

原创 Unity自动添加脚本说明

我们需要在脚本添加作者、时间、功能描述等信息,但一个个手动添加很麻烦,有时也会忘了,所以一般都采用自动添加。1.修改Unity内置初始化脚本在unity的安装目录对应打开Editor-->Data-->Resources-->ScriptTemplates,如下里面有很多我们在unity里初始化创建的脚本模板,这里我们要修改的就是:81-C# Script-New...

2020-05-01 22:33:53 1720

原创 搭建SVN环境

一、下载软件下载地址:http://subversion.apache.org/packages.html网站上有各个系统版本的,我这安装的是Windows的,拉到网页最下面,如下下载TortoiseSVN (SVN客户端俗称小乌龟) 和 VisualSVN (SVN服务端)两个文件TortoiseSVNVisualSVN在TortoiseSVN下载页面可以选择...

2020-05-01 13:27:03 712

原创 Unity 快速实现镜子效果

一、快速搭建一个简单拿的场景如图,白色的Quad即当作镜子。二、使用相机纹理创建一个相机,放到和镜子相同的位置(根据具体效果微调),再新建一个renderTexture,链接到相机的TargetTexture,并赋给镜子的材质球当纹理贴图,如下就能把摄像机拍摄到的东西显示在镜子上。三、实现镜面效果我们现实中的镜子是左右反向的,所以要对现有纹理进行UV的反向处理。为了...

2020-04-09 22:35:03 7554 1

原创 Unity3D 使用xLua

一、LuaLua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。相比C# Lua不需要编辑即可执行,所以Lua可以很好地用在Unity3D程序的热更新。二、xLuaxLua是腾讯开发的开源Lua插件,它为Unity,.Net,Mono等C#环境增加Lua脚本编程的能力,借助xLua可以使lua...

2020-03-29 23:46:43 5403 3

原创 Unity事件管理器

一、诉求在Unity中,当程序比较庞大时,各个类之间的方法调用就会变的很麻烦。所以这个时候需要一个事件管理器,可以很方便地进行事件之间的调用,同时可以很大程度地解决程序的耦合性。二、创建事件管理器1.首先声明一个单例类 GMEventManager,并赋值所需属性 private static GMEventManager eventDispatcher = new GM...

2020-03-17 09:53:08 1537

原创 Unity录屏

一、准备工作使用到的插件:ffmpeg 和ScreenCapturerRecorder。ffmpeg 录屏的核心,ScreenCapturerRecorder是对ffmpeg的扩充插件。ffmpeg 放在工程的StreamingAssets中,如图:ScreenCapturerRecorder直接安装就行,装完桌面会有一个这样的图标:弄好这两个东西基本就准备好了。...

2020-01-10 17:14:39 8125 11

原创 简单的UI序列帧动画

写了个简单的UI图片序列帧动画,虽然Unity动画状态机也可以做图片序列帧动画,但自己写的可控性和扩展性更好点,就一个代码用起来也比较方便。效果如下:代码奉上,有需要的直接拿去用吧!public class FrameAnimation : MonoBehaviour { [Header("序列帧图片")] /// <summary> /...

2019-12-13 12:32:39 1093 2

原创 Unity3D Windows平台窗口置顶全屏

一、效果在打包后的程序启动过程,无任点击过什么界面,程序启动完后都能显示在窗口最前面,并且全屏无边框显示。二、思路主要是对Window编程,引入user32.dll调用window的API对窗口进行操作三、实现using System;using System.Collections;using System.Runtime.InteropServices;using ...

2019-10-22 10:47:24 2685 3

原创 Unity3D Excel转Asset文件

一、首先问题来了,为什么要把Excel转成Asset文件呢1.Excel的不兼容性。首先PC上打包的程序就比编辑器模式下要多添加几个dll才能读取,移动端对Excel的支持就更差。2.读取速度慢。这个我亲测过,一份Excel文件,一份该Excel转成的Asset文件。如下图,Excel第一次读取为88毫秒,后面基本维持在40毫秒左右,而Asset文件一直是0毫秒。为了了解读取...

2019-10-12 19:58:37 1348 2

原创 Unity自适应Text对话框

制作一个对话框,让框能随着文本的长度和高度变化。模式一一个随文本的实时输入而自动适应的对话框。1.效果:2.层级与组件:frame就是个Image对话框图,锚点和Text一样,使用ContentSizeFitter组件使Text适应文字,当小于单行的最大长度时使用HorizontalFit,当大于单行最大长度则使用VerticalFit,然后在代码中让框的大小随Text...

2019-07-16 13:56:56 3846

原创 Unity 开发规范

1. 编码(引擎相关)100 禁止通过 new 的方式实例化 MonoBehaviour 的派生类,否则无法得到引擎有效的 管理。规范等级S101 禁止在update,fixedupdate,lateupdate,ongui等频繁调用的逻辑中使用协程。规 范等级 S102 禁止使用 Resources.Load 加载资源。个别特殊情况除外。规范等级S103 禁止使用 Linq。规范...

2019-07-09 16:46:43 1379 1

原创 Unity自定义日志系统

Unity的系统日志算是很好用,但当程序很大时,就会比较乱,所以在项目中我们往往要对日志系统进行重新封装使用。一、日志系统封装如下代码,我们可以通过m_Log来控制是否打印日志,或对输出的日志加入时间等修改。 /// <summary> /// Log输出开关 /// </summary> public static bool m...

2019-05-28 18:14:26 7378

原创 Unity 读取与修改Json

一、读取Unity读取Json算是一个很常用的功能,今天来小小的总结一下。首先你得写个json,百度Json可以找到很多接送工具。比如我写的json,注意:因为有中文,所以要保存UTF-8的格式。后缀名可以为.txt 也可以为.json第一种,JsonData读取的方式,这种方法比较直接,先把数据拿过来再处理 StreamReader streamreade...

2019-04-04 14:38:30 10007 3

原创 Unity可以建模啦! ProBuilder

一、介绍Unit.y2018中针对建模推出了三大神器ProBuilder、Polybrush、ProGridsProBuilderProBuilder是一个3D建模和关卡设计工具的独特混合体,并且针对构建简单的几何体进行了优化,但也能够根据需求对网格进行详细的编辑和UV展开。ProBuilder可以帮助你快速创建建筑物、复杂的地形、车辆和武器的原型,或者制作自定义碰撞几何体、触发区域或导...

2019-01-25 14:28:00 34637 9

原创 Unity连接SQLServer

一、使用软件版本  这是我测试使用的版本,其它版本应该差别不大  unity5.6.1        Visuad Studio2017         SQLServer2014       二、准备环节及可能遇到的坑1.SQLServer2014  下载地址: https://www.microsoft.com/en-us/download/details.aspx?id=42...

2018-09-05 16:45:52 3545 4

原创 制作Unity的Dll

Unity里的很多内部库和插件都是用的dll,总觉得有一种神秘而高大上得感觉,于是想自己也整一个dll玩玩。那么开始吧。首先打开Visual studio,选择Visual C# 类库(.Net Framework), 注意:Net Framework要选3.5版本,unity好像只支持这个版本接下来就可以尽情地写你的方法了写完后选择生成=&gt;生成解决方案,就会得到你的dll把它导入Unity...

2018-04-10 16:42:13 2390 1

原创 Unity 相机滤镜

滤镜管理代码(挂在Camera对象上)using UnityEngine;using System.Collections;[ExecuteInEditMode]public class CameraShader : MonoBehaviour { private Material mat; private Shader shader; private float ...

2018-04-02 15:45:49 9834 1

原创 UGUI Scroll Rect 滑动列表细节

第一次写先来点简单的。对于Unity3D开发人员来说,滑动列表算是一个比较常见的功能,但有些细节的东西有时却很模糊。1、Unity版本2017.3.02、层级结构与预览3、组建Grid的组建Content Size Fitter 作用是随字节点的增减自动适配大小Scroll Rect的组建4、细节点这个是上下滑动的列表,所以在添加Grid下面的子节点时,为使Grid顶部位置不动,节点往下依次增加,...

2018-03-22 15:45:00 2556

Newtonsoft.Json.zip

Json的解析dll,感觉比LitJson好用,性能可能在初次加载是要多耗点时,但后面运行的速率比LitJson要快一些

2020-06-18

四叉树游戏源码.zip

使用四叉树来实现场景分区管理的Demo工程。 在游戏地图中有很多对象,根据视野范围内的区域,并把这些区域的对象显示出来,其它不在视野范围的不显示。

2020-05-04

recordVideo.unitypackage

在Unity3D中使用ffmpeg进行录屏的一个Demo示例。同时也使用到了ScreenCapturerRecorder插件对抓取屏幕的自由度进行扩展。

2020-01-10

Unity读取Excel 所需的Excel.dll和ICSharpCode.SharpZipLib.dll

其它需要的System.Data.dll 和 I18N开头的dll 分别在Unity安装目录的Editor\Data\Mono\lib\mono\2.0 和 Editor\Data\Mono\lib\mono\unity中找到

2019-10-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除