
Unity
刘星看流星
有一个馍馍多好
展开
-
Operation is not supported on this platform?
找一找自己的dll文件,查看它的AssemblyInfo版本号。是否与自己的Unity上设置的版本一致。Project Setting 中的Player下的Other setting里面的Api CompatibilityLevel版本选择。改一下就行,如果找不到就需要找到版本对应的dll文件适配Unity版本...原创 2021-10-22 09:48:04 · 2909 阅读 · 0 评论 -
MSBuild.exe路径报错处理方法之一
打包Holoens项目时遇到这个问题,找了许久没有找到正确的解决方案。最后在我的误打误撞中,还是处理好了这个问题,答案就是:下载Unity 的Windows Build Support版本!原创 2021-09-02 17:14:57 · 707 阅读 · 0 评论 -
Unity 简单实现 模型添加背景图
1. 建立两个Canvas2. 一个将Render Mode设置为 Screen Space - Overlay放置正常的按键等UI(不会被模型遮挡,始终显示在最前面)一个将Render Mode设置为 Screen Space -Camera添加一个Image的背景图,将背景的Transform 的stretch设置为全屏模式就行。这个就是背景图的设置。...原创 2021-05-11 11:58:20 · 2668 阅读 · 0 评论 -
Unity Failed to run reference rewriter with command
最近项目需要实现一个在Holoens上PC端的视频通话,并且需要实现图片的发送功能做完了,但是打包出现这个问题:找了很久,最后发现问题在我所下的几个dll文件上,System.Drawing.dll,System.Windows.Forms,LitJson.dll最后将他们删除问题就解决了!...原创 2021-04-21 16:14:45 · 452 阅读 · 0 评论 -
Unity 发送语音,留存语音消息
Tip:预设Button上1.添加Video Source组件2.添加下面的脚本:using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;public class PlayVideo : MonoBehaviour{ private Button playBtn; private AudioSource aud; // Star原创 2021-04-19 09:22:08 · 765 阅读 · 0 评论 -
Unity 本地获取图片文件,显示在面板上
根据自己的Unity的.Net版本在Unity中选择合适的配置文件:System.Drawing.dll;System,Windows.Forms.dll文件路径:D:\Unity2019.3.0\Editor\Data\MonoBleedingEdge\lib\mono先定义文件属性:using System;using System.Runtime.InteropServices;[StructLayout(LayoutKind.Sequential, CharSet = CharSet.原创 2021-04-16 15:16:49 · 868 阅读 · 0 评论 -
Unity 代码慢放项目的运行
public void Slowmo (bool slowmo) { Time.timeScale = slowmo?0.25f:1; }//挂载Toggle下,可以调节是否慢放原创 2021-03-22 10:55:54 · 384 阅读 · 0 评论 -
Unity 判断鼠标点击的是单击还是双击
if ((Time.realtimeSinceStartup - time) < 0.2f)//双击{ //DoSomething}else//单机{ time = Time.realtimeSinceStartup;}原创 2021-03-22 10:54:44 · 785 阅读 · 0 评论 -
Unity 遍历Hierarchy下的所有物体,包括隐藏物体
using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEditor;public class MyEditorUtils { [MenuItem("GameTools/遍历Hierarchy")] static void GetAllSceneObjectsWithInactive() { var allGos = Resources..原创 2021-03-22 10:53:32 · 826 阅读 · 0 评论 -
Unity Excel表格合并
将多个表格合并为一个表格的功能首先需要配套的dll:EPPlus.dll,Excel.dll,ICSharpCode,SharpZipLib.dll(版本适合很重要)下面就是两个脚本的编辑:ExcelReadEditorusing OfficeOpenXml;using System.IO;using UnityEditor;using UnityEngine;public class ExcelReadEditor : Editor{ static int num=5;原创 2021-03-22 10:51:27 · 490 阅读 · 0 评论 -
Unity Inspector面板脚本编辑功能
这段时间,需要讲一个模型的数据变成可视化编程的操作。网上找了一些方法处理Inspector的面板数据实时更改模型变化的功能!希望对你有帮助,废话不多说,看下面的两个脚本,不会花费很多时间来讲解其中的细节。搭了一个测试的场景,仅供大家参考:成品的效果图:上面的按键切换不同的数据面板。using System.Collections.Generic;using UnityEngine;public enum ConveyorType{ 数字,//履带传送 字符,//滚轮传原创 2021-03-05 14:45:29 · 1053 阅读 · 0 评论 -
Unity 控制物体在一定范围内来回移动
public void ChangeModelPositionZ(Transform currentObj, float minValue, float maxValue, float moveSpeed = 0.1f, bool isMove = false) { if (isMove) { moveL = currentObj.localPosition.z + moveSpeed; if (moveL &l...原创 2021-02-01 14:37:47 · 5449 阅读 · 0 评论 -
内存优化
内存优化应从项目资源的大小和释放不用的资源两方面入手。1.导入优化 导入fbx文件是,如不需要相关功能,择关闭Read/Write Enable、Animation Type和Normalmap等选项。2.音频优化 采用率一般20K就足够,如果不需要双声道,建议将其压缩成单声道。3. 不需要Alpha通道的图片建议将其Alpha通道关闭。同时应注意UI贴图的尺寸,在合理的范围内适当降低品质。4. 应减少游戏对象的生成和销毁次数,改用对象池的方法管理游戏对象。5. 释放内存中的资源,例如Asse原创 2021-01-11 17:05:33 · 138 阅读 · 0 评论 -
GPU优化
GPU主要处理图像渲染,当Profiler选项卡中出现Gfx.WaitForPersent时,表示GPU每帧渲染的事件过长,GPU需要优化的部分主要有以下几点:1. 模型优化,尽量减少模型的三角面数和顶点数。2. 材质优化:2.1 保持尽量少的材质数目,便于Unity进行批处理。2.2 使用纹理图集(一张大贴图中包含多个子贴图)来替代一系列单独的小贴图。2.3 使用代码操作材质时,尽量使用renderer.shareMaterial代替renderer.Material,因为后者的每一次改动都会创原创 2021-01-11 16:56:43 · 922 阅读 · 0 评论 -
CPU优化
CPU优化主要关注“卡顿”的帧,即CPU耗时较长的帧。关于CPU优化有一下几点建议:1. Unity中利用控制台输出是非常占用CPU的,无论是Debug.Log()还是print()。生成的程序在应用时依旧会输出日志,因此程序正式发布时,一定不要包含控制台输出。2. 良好的代码习惯:2.1 尽量减少使用GameObject.Find等搜索方法。2.2 频繁使用的变量不应定义为临时变量。2.3 只在唤醒的方法中使用GetComponent()方法并储存,而不是每次使用时都重新获取组件。2.4 频繁原创 2021-01-11 16:40:17 · 603 阅读 · 0 评论 -
Unity UI布局没问题,但是依然会出问题?
一句话:记得在实例化的时候设置scale哦!原创 2020-12-31 17:00:34 · 255 阅读 · 0 评论 -
Unity 编辑器运行没问题,打包exe文件运行蓝屏?
这真的是一种折磨,为什么网上找不到答案?是因为只有我遇到这种问题吗?项目编辑器里边运行完全没问题,一打包出来运行就报错,各种方法都试了,就是测不出来。最后:网上查看各种资料,感觉问题可能出在Playsetting中,最后无意中在playerSetting->FullscreenMode改为ExcluiveFullscreen打包出来,就可以了。。苍天啊,这种问题真的是折磨你以为结束了吗??????悄悄告诉你,最后你再改回去,也不会蓝屏了。真是莫名其妙的问题,莫名其妙就解决了。...原创 2020-12-25 17:39:03 · 3450 阅读 · 2 评论 -
Unity 动画的简单切换
1.在Project面板下Asset中创建一个Animator Controller;2.创建两个Animation,分别命名为Walk,Idle;**3.**打开Animator面板,创建两个Creat State—Empty,分别命名为Walk,Idle;**4.**点击Idle,和Walk,创建Make Transition将Idle和Walk互连起来;(如上图)5.点击Parameters,进入此面板,创建一个Bool值,命名为walkBool;**6.**点击Idle与Walk互连原创 2020-12-08 16:39:28 · 6765 阅读 · 1 评论 -
Unity 激活UI面板会触发Toggle按键的Bug
做项目的时候,发现含有Toggle按键的面板,每次激活都会调用一次关闭面板前使用的Toggle按键。Debug输出了一下,最终导向的是EventSystem组件上。这里有个Send Navigation Events勾选。会发送Navigation事件。而Toggle组件上面这个Navigation一般默认为Automatic,所以会发送这个事件,只需要把这个换成None就行了...原创 2020-12-03 09:53:22 · 628 阅读 · 0 评论 -
VRTK_PhysicsPusher
最近做一个项目的vr部分,已经大体完成了项目需求,但是制作中间,网上对于VRTK的脚本介绍比较少,自己就写点东西,给自己记录一下:官方说明:https://vrtoolkit.readme.io/docs/vrtk_chest这个很重要,有不懂的一定要查看官方文档功能模拟推动模型;一般用于按键的模拟按下效果;这个是脚本的界面使用前必备:1.模型推动方向为本地坐标。 如果模型角度不正,不能正确按照一个方向移动,可以建立空物体,将模型坐标复制给空物体,将模型挂在空物体下面。再进行推动效果的制作原创 2020-11-27 09:17:32 · 204 阅读 · 0 评论 -
Unity 处理Scene视角容易穿模问题
问题一般有两个解决方法:1.重新进行Unity布局,右上角哪里重新进行Layout布局,一般可以恢复Scene视角相机的初始化2.Scene视角顶部信息栏有一个摄像头图标,点开,就是可以进行Scene摄像机的控制,把Field of View调小就可以调整穿模现象了。...原创 2020-11-17 10:01:07 · 9545 阅读 · 1 评论 -
物体移动不过去的问题:transform.position=new Vector3()
关于transform.position=new Vector3()的问题!昨天被一个物体移动问题卡了半天,死活没明白下面这个语句问题在哪里transform.position = startPos;问了大神:问题在于我的物体一开始就处于显示状态,这样移动只移动了MeshFilter,物体本身的Mesh并没有移动;解决方案:运行前把物体隐藏掉,如果必须要显示,可以在移动的时候增加gameObject.SetActive(false);transform.position = startPos原创 2020-10-16 11:16:26 · 1843 阅读 · 0 评论 -
脚本出现No MonoBehaviour Scripts in the file...
Unity 脚本出现No MonoBehaviour Scripts in the file…解决方法:1.脚本命名不一致2.Unity引擎安装有问题,重新下载安装3.脚本内有错误未处理原创 2020-09-28 16:17:10 · 7093 阅读 · 1 评论 -
读取Excel表格内容
读取Excel表格内容/// <summary>/// 读取excel文件内容/// </summary>/// <param name="filePath">文件路径</param>/// <param name="columnNum">行数</param>/// <param name="rowNum">列数</param>/// <returns></returns>原创 2020-09-28 09:45:53 · 502 阅读 · 0 评论 -
Unity 鼠标悬浮显示UI,离开隐藏UI(类似播放视频的效果)
首先显示与隐藏要认识一个组件,CanvasGroup组件:CanvasGroup里面的alpha是透明度控制。通过进入UI控制Alpha为1,离开为0控制UI的显隐。脚本很简单,再给UI添加一个组件EventTrigger,添加PointerEnter和PointerExit写个脚本:private CanvasGroup itsUI;void Start(){ itsUI = this.GetComponent<CanvasGroup>();}public void原创 2020-07-29 11:20:17 · 3819 阅读 · 2 评论 -
Unity 多个视频合为一个视频无障碍播放
废话不多说,看代码using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;using UnityEngine.Video;public class PlayVideo : MonoBehaviour{public Slider videoSlider;//视频进度条public Text videoName;//视频名称public Text videoTime;//视频时间public List&原创 2020-07-23 09:40:31 · 1558 阅读 · 2 评论 -
Shader学习过程(一)
最近加入一家公司,开始让我学习做特效,我一脸懵逼,不会啊!浅薄的理解了一下粒子系统又开始学习Shader 的编写。在没了解之前还以为Shader会和C#一样,上手简单,但是到直到现在,还没理解Shader的逻辑。老天了,送我一个大佬吧!经过最近的学习,整理了以下自己对Shader编写的认知,都比较浅薄,有错误希望大佬及时指出。就写一下自己整理的Shader的框架吧。名字(自己命名)属性 Properties{}2.1 属性名字由一个下划线开始,括号中的第一个参数,是属性显示在材质面板上的名原创 2020-07-07 15:01:15 · 662 阅读 · 0 评论