![](https://img-blog.csdnimg.cn/20190918140213434.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Unity开发
文章平均质量分 53
unity学习笔记
Iamzls
这个作者很懒,什么都没留下…
展开
-
有用的网址
Unity 各模块功能例子:Unity-Technologies原创 2023-08-15 10:46:16 · 255 阅读 · 0 评论 -
C# 数组/集合排序
【代码】C# 数组/集合排序。原创 2024-05-29 17:06:33 · 287 阅读 · 0 评论 -
Unity 自定义窗口
放在Editor文件夹下;"自定义工具/自定义窗口"原创 2023-12-08 17:15:39 · 581 阅读 · 0 评论 -
Unity纹理优化:缩小包体
apk包体太大,经查证后发现纹理占比很高(82.8%),做出了纹理相关的优化原创 2022-12-10 19:17:13 · 2061 阅读 · 1 评论 -
Unity打apk时,Gradle build Failed (jcenter报错)
unity导出apk,从jcenter下载依赖时gradle报错原创 2022-12-03 17:59:55 · 1385 阅读 · 0 评论 -
PC辉光效果一切正常,安卓辉光却没效果、显示异常(爆闪、黑屏等)
安卓端辉光不显示、辉光显示异常、post process中bloom参数介绍原创 2022-12-03 17:22:48 · 2405 阅读 · 0 评论 -
关于Unity集成ShareSDK这件事(Android篇)
ShareSDK集成进Unity的步骤。官方文档写的非常清楚了,我这里就不要再画蛇添足的再写一遍了,在此只记录一些集成时碰到的一些问题,踩到的坑;原创 2022-09-26 19:40:22 · 1950 阅读 · 0 评论 -
Unity开发——开机自启动
unity实现windows平台开机自启动原创 2022-08-10 14:57:21 · 1662 阅读 · 0 评论 -
基于UnityXR 开发 Oculus Quest VR应用------的前期工作
开发oculus quest vr应用有两种方式:1、基于unity xr toolkit 开发2、直接接入oculus 原生sdk开发方式1:使用untiy xr开发,项目会更好维护一些,用的api也都是unity xr那一套,可直接上手开发。方式2:现成的功能会很全,sdk里面的例子场景顺着看一遍就基本了解了。开发复杂交互的项目会更方便一些。ps:我使用的unity版本是2019.4.16正题开始:基于unity xr开发oculus quest应用1、导入XR Plugub Mana.原创 2021-11-27 19:32:49 · 3099 阅读 · 1 评论 -
Unity GSXR接入配置
在我拿到gsxr的sdk后,里面有这几个文件:打开“开发者快速入门文档”根据文档步骤可接入sdk进行开发;这里主要记录下工程的配置1、工程配置前提:2、PackageManager接入GSXR3、配置工程:4、配置结束,创建空场景,删除Main Camera,场景中添加一个XR Rig5、配置XR Rig及手柄6、在左右手柄上添加指定脚本,并指定手柄类型7、配置完成,打包该场景,设备上安装,测试能否正常运行。补:如果以上配置打包出来,无法正确运行,请设置项目:关闭原创 2021-11-03 12:24:21 · 539 阅读 · 3 评论 -
Unity接入Steam成就
1、将steamworks.Net导入项目2、修改游戏id找到 steam_appid.txt 打开;将480替换为你游戏申请的ID;3、编写“成就”脚本using UnityEngine;using Steamworks;/// <summary>/// Steam成就/// </summary>public class SteamAchievements : MonoBehaviour{ /// <summary> /// 成原创 2021-10-26 15:15:29 · 2718 阅读 · 0 评论 -
Unity 使用Photon Server 联网开发(二)游戏同步+房间列表
photon联机的配置:直接去官网下载Pun的资源包导入项目,设置PhotonServerSettings配置文件,配置appid、通讯协议、服务器地址、端口号;服务器地址可以配置成自己本地服务器、云服务器、直接使用photon服务器。也可以查看photon server 联机配置photon server服务器配置:官网下载photoncontrol,配置流程很简单:photon server 联机配置获取房间列表的方式:PUN2之前:调用PhotonNetwork.GetRoomList()原创 2021-09-06 14:52:22 · 5968 阅读 · 1 评论 -
Unity 使用Photon Server 联网开发(一)配置连接设置流程
Photon官网首页:Photon官网下载配置Pun与Server的教程:Photon Pun与Server的下载与配置教程1、 Pun导入项目后配置PhotonServerSettings:Hosting(服务器托管方式):Not Set :未设置Photon Cloud :Photon云端Self Hosted :自己搭建的服务器(这里我们是自己配的本地服务器)Offline Mode:离线模式Best Region:最佳云端区域Protocol:传输层协议(TCP/UDP)Se原创 2021-08-19 18:57:20 · 5393 阅读 · 2 评论 -
Unity 使用 腾讯Behaviac (三)
using System;using System.Collections;using System.Collections.Generic;using UnityEngine;///<<< BEGIN WRITING YOUR CODE FILE_INIT///<<< END WRITING YOUR CODEpublic class TestAgent: behaviac.Agent{ public string bTName = "BT_Tree原创 2021-07-31 09:38:45 · 478 阅读 · 0 评论 -
adb查看应用log日志的两种方式(usb连接和无线连接)
本文本中用到的所有命令:adb是否可以使用: adb version查看电脑连接设备: adb devices启动命令: adb start-server停止命令: adb kill-server设置端口号: adb tcpip 8888ip连接设备: adb connect 192.168.101.38:8888ip断开连接: adb disconnect 192.168.101.38:8888查看应用log日志: adb logcat原创 2021-07-05 17:45:50 · 11819 阅读 · 0 评论 -
Unity UGUI 文本 特殊文字添加事件
最终效果:这是显示的文本鼠标移上事件文字 “百鬼夜行” 后,控制台打印:鼠标点击事件文字 “百鬼夜行” 后,控制台打印:鼠标移出事件文字 “百鬼夜行” 后,控制台打印:(一)主脚本:mTextPro.cs;调用脚本内的SetText()函数传参数就可以了。使用方法见步骤(二)using System.Collections.Generic;using System.Text;using System.Text.RegularExpressions;using UnityEngine原创 2021-06-11 19:04:28 · 2764 阅读 · 4 评论 -
Unity(C#)Excel 操作
Excel读取 private void GetExcelData() { DataRowCollection collect = ReadExcel("D/user.xlsx", "userSheet"); for (int i = 0; i < collect.Count; i++) { Debug.Log(collect[i]); } } /// <summary> //原创 2021-05-22 09:48:17 · 289 阅读 · 0 评论 -
Unity(C#)Linq 操作
DistrictPoint districts4 = field.districtPoints.Where(point => point.bDistrictID == 4).OrderBy(p => Guid.NewGuid()).First();原创 2021-05-21 14:30:26 · 736 阅读 · 0 评论 -
Unity XR Toolkit (一)项目配置
Unity:2019.4.16f1版本;XR Interaction Toolkit :0.10.0-preview;我用的还是预览版,在unity2020版本toolkit就已经是正式版了。Package Manager的介绍:Unity Package - 手册XR Plugin ManagementXR Plugin Management:用于简化 XR 插件管理的包。提供有关 XR 插件的加载、初始化、设置和构建支持的帮助和管理功能。Window→Package Mana.原创 2021-04-10 11:00:40 · 2244 阅读 · 0 评论 -
Unity 正交相机的控制:鼠标在屏幕边缘时、按键时、鼠标拖动时 移动相机。滚轮控制视野范围
传统的moba游戏中对相机的控制为:1、鼠标移动到屏幕边缘时,移动相机2、按下鼠标会拖动相机3、按下对应按键(WASD)会移动相机4、滑动鼠标滚轮时,会改变相机视野范围4、相机在移动过程中会有范围限制实现以上功能的相机代码为:using System.Collections;using System.Collections.Generic;using UnityEngine;public class CameraController : MonoBehaviour{ ///原创 2021-03-13 14:22:19 · 1811 阅读 · 2 评论 -
Unity 项目性能优化
今天在网上搜了一些代码性能优化方面的知识:1、放置内存泄漏,在架构上可以灵活使用abstract,并注意自己写的代码2、严格控制static的使用3、SendMessage()、BroadcastMessage();他们使用了反射,造成高开销,可以考虑使用 事件 和 委托 代替。4、用 协程 替代 Invoke、InvokeRepeating invoke也是使用了反射来实现,可以使用协程替代。5、脚本中没有必要的空回调函数:继承于Mono的 Start()、Update()、FixedUpdat原创 2020-10-21 18:46:21 · 527 阅读 · 1 评论 -
Unity:UI 面板始终保持在窗口内,无法拖动到窗口视野外
当我实现鼠标可以拖动窗口时、或者某个时刻在不确定的位置弹出tips面板,有时候,该面板的位置可能会有点偏,窗口视野显示不全,面板内容超出窗口显示了,我们可以写一个简单的类,专门用来让ui面板保持在狂口内显示的:using System.Collections;using System.Collections.Generic;using UnityEngine;public class UIKeepInScreen : MonoBehaviour{ /// <summary>原创 2020-10-10 10:22:39 · 1397 阅读 · 2 评论 -
Unity:图片的一个像素单位对应Unity中的一个距离单位
当我们使用unity开发时2D项目时,如果需求是一个像素单位就要对应unity中的一个距离单位,也就是:图片的1像素 = unity中的1个距离单位。在该图片的属性面板中可以看到有个属性是:Pixels Per Unit。该变量的意思是:unity中的一个距离单位显示图片的100个像素。而我们只需要把该值改成1,就是我们想要:一个像素距离就是unity中的一个距离单位了。...原创 2020-09-15 15:41:39 · 3502 阅读 · 1 评论 -
unity C#脚本封装成dll
直接写步骤吧:一:打开VS新建一个.Net项目,选择地址和命名建好之后会有一个默认的Class1类,你可以选择删除也可以不删。二:添加unity的脚本引用:UnityEngine.dll 和 UnityEditor.dll2.1:点击添加引用2.2:点击浏览2.3:找到当前使用的unity版本安装目录下:unity→Editor→Data→Managed找到位置后选择UnityEditor.dll以及EnityEngine.dll。2.4:点击 添加→确定。在新建的.Net工程中原创 2020-09-12 18:35:47 · 2347 阅读 · 1 评论 -
Unity SerialPort 实现 串口通讯
Unity与串口通信,利用SerialPort,传入硬件的串口号于波特率,SerialPort的内置方法打开串口(关闭串口),写入数据(发送数据)等。代码在SerialPort中也都给封装好了。using UnityEngine;using System.Collections;using System.IO.Ports;using System;public class MyComSocket : MonoBehaviour{ //串口号(CM3、CM8) private string原创 2020-07-30 09:56:39 · 3403 阅读 · 0 评论 -
Unity 使用 Behaviac (二)让unity的行为能执行behaviac搭建的树的逻辑
该篇文章会记录Behaviac与Unity通过XML进行交互,非程序人员不用项目程序,只使用项目exe就能进行测试的效果原创 2020-07-18 11:03:19 · 1843 阅读 · 1 评论 -
Unity 使用 Behaviac (一)behaviac下载及其简单的使用
PS:behaviac在3.6.x版本之后的有若干重大改动,若想了解可转至:https://www.behaviac.com/language/zh/updatenotes/一:下载 behaviac3.6.39.unitypackage 以及 behaviacSetup.exe:https://www.behaviac.com/language/zh/downloads/#3622_2017-3-2(随便即可,我下载的是稳定版)...原创 2020-07-17 16:47:44 · 3235 阅读 · 6 评论 -
Behaviac 和 Behavior Designer两者的区别
PS:该篇文章主要记录了behaviac和behavior的区别,如果没有兴趣可跳过。想了解behaviac可转至:想了解behavior designer可转至:行为树技术已经在游戏开发过程中逐渐变得流行起来。目前业界有两款知名度相对比较高的行为树组件——Behavior Designer(后面简称 BD)和 behaviac。本文将重点剖析这两款行为树组件的特点和差异。BD 是独立游戏工作室 Opsive 开发的一款集成在 Unity 引擎中的行为树插件(www.opsive.com),提供了原创 2020-07-17 16:29:42 · 2606 阅读 · 1 评论 -
UGUI 富文本编辑 + 16进制颜色值转成RGB
Unity中Text、Image等设置颜色的时候Hex Color 的颜色值为16进制颜色值。将其转成RGB的颜色值。解决方案如下: /// <summary> /// 根据16进制颜色值获取RGB /// </summary> /// <param name="hex">16进制的颜色值</param> /// <returns></returns> public Color GetCol原创 2020-07-09 11:55:15 · 947 阅读 · 0 评论 -
Unity开发记录 持续更新
1、设置UI文本颜色:代码设置text文本颜色时,下面代码中,我设置的是0-255的值;这样是不行的;正确的应该是算出比例设置0-1范围内的值。原创 2020-05-30 19:38:48 · 231 阅读 · 0 评论 -
Unity的语音识别
unity实现语音识别:PC端、移动端一、PC端(方式一)Unity有个自带的库,使用它可以很方便的实现PC端的语音识别;可以用它来识别一些关键字,进行短语句的识别。引入命名空间:using UnityEngine.Windows.Speech;设置识别可信度public ConfidenceLevel mConfidenceLevel = ConfidenceLevel.Mediu...原创 2020-04-25 19:01:08 · 3812 阅读 · 19 评论 -
unity 各类【】标签的使用
本文仅供学习记录,如有任何侵权行为立即删除!Inspector的扩展※ ※ ※ [Header] 标头属性在代码中声明: [Header("名称")] public string roleName;//人名 public string desc;//人物介绍 [Header("角色属性")] public float hp;//血量 publ...原创 2020-04-17 18:18:09 · 2956 阅读 · 0 评论 -
Unity导出WebGL使用 http与服务器通讯;Jsp与服务器互通解决方案、踩坑记录、注意事项
这两天做了一个项目,从已有的通讯框架基础上修改。使Unity导出的WebGL的包能和服务器通讯,Jsp页面也能和服务器通讯。第一次做通讯的项目。踩了不少坑记录一下。本次使用的通讯框架服务器是java、客户端是Unity开发的。使用 http 实现弱联网的简单通讯Unity开发WebGL注意事项1、导出WebGL包时,目录路径不能有中文2、打出来的Web页面显示不出中文来,是因为web页面不...原创 2020-04-16 20:15:40 · 1776 阅读 · 0 评论 -
Unity C# 协程:(开始一个协程、停止一个协程、优化协程、协程中yield的用法)
协程:顾名思义就是在主程序运行的同时,开启另外一段逻辑处理,来协助主程序的执行,大多数情况下我使用协程是为了延时调用某个函数、某块逻辑要一直循环判断执行这两种请况,之前一直以为终止协程时的函数有个弊端,现在查了些资料,记录下来:1、写一个协程函数:(开始调用时打印“开始”,等待5秒后执行后面的逻辑打印文字。) IEnumerator Test() { Debug.Log...原创 2020-04-08 19:00:03 · 12048 阅读 · 1 评论 -
Unity C# 计算两个时间的时间差
获取两个系统时间,计算这两个时间之间的间隔使用很简单,没有什么好说的,就是利用系统内置的方法求出两个时间的时间差,可以获取两个时间之间相差的秒数、分钟和天数。看代码吧:using System;using UnityEngine;public class TimeTest : MonoBehaviour{ DateTime startTime; private voi......原创 2020-04-08 18:09:38 · 6744 阅读 · 3 评论 -
C# 反射(根据字符串找到一个类中变量名和该字符串相同的变量)
找到FieldTest类中,名为name的变量。原创 2020-04-02 19:17:54 · 2867 阅读 · 1 评论 -
Unity实现调起路径选择窗口
本文记录了,在unity中点击按钮后,调起一个新窗口选择指定文件的功能直接看代码吧:using System;using System.Collections;using System.Collections.Generic;using System.Runtime.InteropServices;using UnityEngine;public class OpenFileTes...原创 2020-04-02 18:48:36 · 910 阅读 · 0 评论 -
C#、Unity 读取外部自定义文本文件
本文主要记录了使用C#解析外部自定义的文本文件。首先要解析文本文件,读取成功后,主要就是对文本文件的操作了。1、先看看我自定义的文本文件(名叫:test.log):2、直接用代码解析文本文件:代码读取文本,首先设置路径,直接用File.ReadAddText()函数来解析文本 //指定文件路径 string logPath = Application.streaming...原创 2020-04-02 18:30:24 · 1074 阅读 · 1 评论 -
(unity、C#)启用某个进程,让该进程窗口保持最上层显示,且鼠标仍能和下层窗口交互
近期实现了一个功能:调起外部exe后,让外部exe的窗口一直在最上层显示,并且此时鼠标可以和下层窗口交互,就像是qq聊天框“保持窗口最前”的功能似的。当我们用C#对进程、窗口操作时,需要调用win32的API接口,对于win32API我也是因为要实现这个功能才知道的,初次了解,写的不深。下面就用unity写的一个例子来讲一下:1、创建一个新脚本和新场景,脚本中首先要调用 win 32 的API...原创 2020-03-24 12:28:41 · 4600 阅读 · 0 评论 -
Pico neo 2 unity 开发笔记(一)将PicoSDK接入项目,并设置工程
官方开发包和讲解文档介绍网址(写的很清楚了):‘https://developer.pico-interactive.com/sdk写在前面:传感器融合双目立体渲染光学畸变校正异步时间扭曲单缓冲区渲染3DoF / 6DoF多重互动支持电源和散热管理帐户和付款管理。一、将下载的PicoVR_Unity_SDK.unitypackage导入unity工程,工程目录下会出现Pico...原创 2020-03-19 11:23:14 · 8253 阅读 · 14 评论