草庐IT

RTC1-Unity

全部标签

UNITY--读取Excel的几种方式

目录一.DLL插件读取1.1.Excel存放位置1.2.使用示例1.3.Excel格式 1.4.输出显示 1.5.所需插件二.Excel转成Asset文件,再进行读取2.1Excel文件存放位置2.2编辑模式生成Asset文件,并保存到指定位置 2.3创建ExcelRead脚本,读取Excel内容2.4创建数据存储脚本2.5 编辑器生成Asset与属性面板详情 2.6Asset数据的使用方式 三:Excel文件转成json再以json的方式读取一.DLL插件读取1.1.Excel存放位置如图将命名为cook的excel文件存放在Assets根目录下1.2.使用示例usingSystem.Dat

【Unity 手写PBR】Build-in管线:实现间接光部分

写在前面直接光昨天已经实现了:【UnityShader】Build-in管线实现PBR:直接光部分,今天趁热打铁,补完剩下的间接光计算。1补一个法线纹理突然法线直接光部分忽略了法线纹理应用的部分,这当然也是不可或缺的部分,之前学习入门精要的时候,就已经分别在法线空间和世界空间下实现了:【UnityShader】纹理实践3.0:切线空间下使用法线纹理【UnityShader】纹理实践5.0:世界空间下使用法线纹理这里要使用Cubemap的话,就必须要用世界空间下的方法了,补充一下就好!(顺便说明一点,暂时先不考虑必要时候使用half变量来优化整个shader,所以暂时所有变量都用的float,等

unity异常:InvalidOperationException: Burst failed to compile the function pointer `Int32

异常信息具体如下:InvalidOperationException:Burstfailedtocompilethefunctionpointer`Int32ValidateCollinear$BurstManaged(Unity.Mathematics.float2*,Int32,Single)`Unity.Burst.BurstCompiler.Compile(System.ObjectdelegateObj,System.Reflection.MethodInfomethodInfo,System.BooleanisFunctionPointer,System.BooleanisILPo

Unity通过TCP/IP协议进行通信

uinty项目中需要与C++编写的硬件进行通信,因此采用TCP/IP协议进行通信,主要实现了与服务器的连接、通信内容的发送以及断开连接等功能。根据确定好的协议格式,编写需要发送的内容,将其转为字节流(byte[])通过通信接口进行发送即可。具体代码如下:usingUnityEngine;usingSystem.Net;usingSystem.Net.Sockets;usingSystem;usingSystem.Text;usingUnityEngine.UI;publicclassTCPCommunication:MonoBehaviour{ privatestaticstringIP=“1

如何使用Unity的Instantiate

一、前言刚开始学习游戏开发的时候,对于实例化的方式一直模棱两可,看别人的例子有时用到new,有时又用到Instantiate。new大家熟悉的一种用法就是创建一个对象,一般用于类的实例化;Instantiate是Unity里的一种方法,一般用于对Prefab(预制体)的实例化。下面主要介绍Instantiate的用法二、Instantiate的用法使用Instantiate时,其属性和原物体一致,由于是实例化一个prefab,所以可以想到它包含的参数应该有①prefab是什么②位置和方向是怎样的③它是挂载在哪里?所以就有了以下几种方式去应用InstantiateInstantiate(Obje

unity使物体运行时自动旋转

usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;publicclassjiaobeng:MonoBehaviour{  publicfloatspeed=80f;  //Updateiscalledonceperframe  voidUpdate(){    transform.Rotate(Vector3.up*Time.deltaTime*speed);  }}需要将脚本挂在需要自动旋转的物体component上即可运行,可根据自己需要对脚本进行更改  

Unity Lighting Mode

在Light中Mode设置为Mixed时,LightingMode(在Window->Rendering->Light->Scene)有三种选项如下图: BakedIndirect        烘焙间接光,效果最好性能最耗混合光源照亮的动态游戏对象将接收:实时直接光照。烘焙间接光照(使用光照探针)动态游戏对象的阴影,不超过阴影距离(ShadowDistance)静态游戏对象的实时阴影,不超过阴影距离(ShadowDistance)混合光源照亮的静态游戏对象将接收:实时直接光照。烘焙间接光照(使用光照贴图)静态游戏对象的实时阴影,不超过阴影距离(ShadowDistance)动态游戏对象的实时

unity 判断当前设备是否是模拟器(安卓)

最近有个需求,需要判断当前设备是否是模拟器,网上查了一下,发现基本上都是使用特征字符串进行检索,类似这种:if(SystemInfo.deviceModel.Contains("Emulator")||SystemInfo.deviceModel.Contains("AndroidSDK"))returntrue;if(SystemInfo.deviceName.Contains("AndroidSDK"))//设备名称的字符串检测returntrue;if(SystemInfo.deviceType==DeviceType.Unknown&&SystemInfo.operatingSyste

Unity Canvas动画不显示的问题

问题描述:我通过角色创建了一个walk的动画,当我把这个动画给到Canvas里面的一个image上,这个动画就不能正常播放了,经过一系列的查看我才发现,canvas里面动画播放和非canvas得动画播放,他们的动画参数是不一样的。一个是Image,一个是Sprite。1.下方的是sprite动画2.下面是UI内的动画解决方法:对于这2种类型的动画,我们需要穿件2个不一样的animcontroller和对应的anim动画

Unity视角拉近时物体缺失的问题处理

在Unity的开发过程中,我们可能会遇到以下情况:    就是在场景的不断编辑中,突然又一次打开场景,再拉近或拉远场景视角时,会出现场景中的对象会显示不全的问题。 出现了这样的情况会让场景的预览很不友好。出现这个问题的原因是Unity生成的场景对应的文件中的"orthographic"属性被修改成了"true"。 以上的文件夹内会有某个文件的"orthographic"属性被修改成了"true"。 只要找出对应的(或者全部的)文件内的"orthographic"属性被修改成了"false"。  这样就可以修改好这个问题了。