自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 Unity物理检测Physics

unity射线和物理检测测试实例,包含CheckBox、OverlapBox、OverlapBoxNonAlloc、BoxCast、BoxCastAll、BoxCastNonAlloc等共18个方法的测试

2023-11-01 16:46:41 358

转载 OnCollisionEnter和OnTriggerEnter 区别

1 OnTriggerEnter要求碰撞体的任意一方必须勾选IsTigger选项,OnCollisionEnter则要求全不勾选。3 OnTriggerEnter对刚体挂在碰撞双方的哪一方没有要求,而OnCollisionEnter则要求挂在碰撞的主动方。2 OnTriggerEnter对刚体的IsKinematic项没有要求,OnCollisionEnter则要求不能勾选。注意:OnCollisionEnter方法的形参对象指的是碰撞双方中没有携带OnCollisionEnter方法的一方。

2023-05-18 16:26:41 205

原创 Lua 反射获取和修改C#变量

【代码】Lua 反射获取和修改C#变量。

2023-02-13 14:47:44 416

原创 Lua判断一个对象是否为空,包含userdata

客户端在开发游戏的时候,经常会遇到一个问题,C#传递过来的GameObject已经被销毁了,但是lua这边判断却不是nil,而是一个userdata,那怎么判断一个userdata是否为空呢?

2023-02-09 12:20:36 1132

原创 unity2020.3.34安卓出包问题记录

unity2020.3.34版本安卓出包问题记录,主要是解决sdk兼容性问题

2022-08-24 16:35:22 1341

原创 Unity3D导入音频自动设置格式(包含手动设置)

using System.Collections;using System.Collections.Generic;using UnityEditor;using UnityEngine;using System.Text.RegularExpressions;using System.IO;public class AudioProcessor : AssetPostprocessor{ [MenuItem("AssetsTools/将选择文件夹的音频设置成规定格式", fals

2022-01-13 16:36:16 4101

原创 Unity3d 2020以上版本创建SpriteAtlas工具

using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEditor;using System.IO;using UnityEditor.U2D;using UnityEngine.U2D;public class CreateSpriteAtlas{ static string rootPath = (Application.dataPath + "/").Rep

2022-01-13 16:34:54 2959

原创 Unity3D Texture导入设置(包含手动和自动设置)

using System.Collections;using System.Collections.Generic;using UnityEditor;using UnityEngine;using System.Text.RegularExpressions;using System.IO;public class UISpritePostprocessor : AssetPostprocessor{ static string effectPath = "Game/Art/Eff

2022-01-13 16:32:27 3722

原创 Unity资源依赖检测小工具

using System;using System.Collections.Generic;using System.IO;using UnityEditor;using UnityEngine;public class CheckPrefabDependencies : EditorWindow{ private string idStr = ""; private static CheckPrefabDependencies window; private stat

2021-10-11 17:21:17 526

原创 Lua基础知识

一.Lua的8种数据类型在Lua中有8种基本类型,分别是:nil–空,boolean–布尔,number–数值,string–字符串,userdata–用户数据,function–函数,thread–线程(注意这里的线程和操作系统的线程完全不同,lua和c/c++进行交互的lua_Stack就是一种llua的线程类型),和table–表。我们可以通过调用print(type(变量))来查看变量的数据类型。(1) nil 类型nil是一种只有一个nil值的类型,它的主要作用是与其他所有值进行区分。Lu

2021-10-11 17:19:38 889 1

原创 unity小工具之Hierarchy控制物体显示和隐藏

unity小工具之Hierarchy控制物体显示和隐藏using System;using System.Collections.Generic;using System.Reflection;using UnityEditor;using UnityEngine;using Object = UnityEngine.Object;namespace SubjectNerd.QuickToggle{ [InitializeOnLoad] public class Quick

2021-03-26 16:07:10 2173

原创 UGUI性能优化之Drawcall详解

UGUI性能优化之Drawcall详解游戏开发圈里的人一定听过优化游戏要降低DrawCall,那么DrawCall到底是什么呢?要了解什么是Drawcall,就要从图形引擎渲染画面说起了。一、图形引擎渲染画面的过程Unity(或者说基本所有图形引擎)生成一帧画面的处理过程大致可以这样简化描述:1. 可见性测试引擎首先经过简单的可见性测试,确定摄像机可以看到的物体2. 准备好需要渲染的数据把这些物体的顶点(包括本地位置、法线、UV等),索引(顶点如何组成三角形),变换(就是物体的位置、旋转、缩放

2021-02-25 16:17:08 2406 1

原创 Unity的Mask组件性能解析

Unity的Mask组件性能解析UGUI的裁切分为Mask和Mask2D两种一、Mask:IMaskable,IMaterialModifier我们先来看Mask。它可以给Mask指定一张裁切图裁切子元素。我们给Mask指定了一张圆形图片,那么子节点下的元素都会被裁切在这个圆形区域中。Mask的实现原理:Mask会赋予Image一个特殊的材质,这个材质会给Image的每个像素点进行标记,将标记结果存放在一个缓存内(这个缓存叫做 Stencil Buffer)当子级UI进行渲染的时候会去检查这个

2021-02-02 14:30:55 2645

原创 Unity3D各平台Application.xxxPath的路径

Unity3D各平台Application.xxxPath的路径前几天我们游戏在一个同事的Android手机上启动时无法正常进入,经查发现Application.temporaryCachePath和Application.persistentDataPath返回空字符串。便花时间认真研究了一下Unity3D的路径问题。我们常用的是以下四个路径:Application.dataPathApplication.streamingAssetsPathApplication.persistentDataP

2020-10-09 16:27:20 808

原创 unity3d中ScriptingBackend选择mono和il2cpp的区别

unity3d中ScriptingBackend选择mono和il2cpp的区别在iOS和Android上,在Player Settings中选择mono或il2cpp脚本后端。要更改脚本后端,请转到“Player Settings 窗口(菜单:Edit > Project Settings > Player),向下滚动到“Other Settings”部分,然后从“Scripting Backend”下拉菜单中选择mono或il2cpp。注意:从2017.3开始,选择IL2CPP脚本后端或

2020-10-09 15:32:31 6473 2

转载 Unity Color Space详解--深入理解Gamma、Linear、sRGB

深入理解Gamma、Linear、sRGB“为什么我渲染出来的场景,总是感觉和真实世界不像呢?”游戏从业者或多或少都听过Linear、Gamma、sRGB和伽马校正这些术语,互联网上也有很多科普的资料,但是它们似乎又都没有讲很"清楚"。游戏界(特别是中小团队)很容易忽略这些概念造成的影响。长远来看,作为游戏从业者的你应该理解这些术语的含义,理解它们的本质联系,理解选择Linear或Gamma 空间带来的工作流变化。本文将会简单介绍Gamma、Linear、sRGB和伽马校正的概念。接着通过实例解析统

2020-09-30 14:44:36 2315

原创 Unity动态设置帧率以及垂直同步V Sync Count详解

Unity动态设置帧率以及垂直同步V Sync Count详解1.显示器的工作原理要知道什么是垂直同步,必须要先明白显示器的工作原理,显示器上的所有图像都是一线一线的扫描上去的,无论是隔行扫描还是逐行扫描,显示器扫描的过程中有两个重要的概念:H Blank(水平同步)和V Blank(垂直同步)。什么叫水平同步?什么叫垂直同步?垂直和水平是CRT中两个基本的同步信号,水平同步信号决定了CRT画出一条横越屏幕线的时间, 垂直同步信号决定了CRT从屏幕顶部画到底部,再返回原始位置的时间, 而恰恰是垂直同

2020-09-28 17:15:44 1694

原创 Unity性能优化-音频设置

Unity性能优化-音频设置没想到Unity的音频会成为内存杀手,在实际的商业项目中,音频的优化必不可少。Unity支持许多不同的音频格式,但最终它将它们全部转换为首选格式。音频压缩格式有PCM、ADPCM、Vorbis,不是所有平台都支持这些所有的压缩格式,有些平台,例如WebGL只支持AAC格式。2.所有音频导入时,默认两项设置,LoadType是"Decompress On Load",压缩格式是“Vorbis”,例如下图原始文件大小计算为35.9 MB,导入的大小计算为10.7 MB。这意

2020-08-12 15:56:20 843

原创 Unity通过KeyChain获取IOS设备唯一ID完整流程

通过KeyChain获取IOS设备唯一ID

2020-06-23 11:59:19 1579

原创 UGUI性能优化之图集使用减少Drawcall

UGUI性能优化之图集使用减少Drawcall如果游戏内容比较多,是不太可能把所有的UI图片都合并在同一个图集里面的。所以必然会产生多个图集的问题。而使用同一个图集的Image能合并成一个DrawCall的前提,是他们中间没有再穿插着使用了其他图集的Image。打成图集需要注意的是:1、单张图片大小不要超过512*512;2、同一个图集的图片放到一个文件夹下,这样也方便管理;3、会频繁变动的元素(位置、颜色、大小等发生改变)单独打成一张图集,这样能减少不必要的元素重绘;使用图集的时候:同一图集

2020-06-23 11:38:14 995

转载 UGUI性能优化之Canvas

UGUI性能优化之Canvas自从Unity问世以来,UI一直都存在比较大的问题,自带的OnGUI不能所见即所得,制作过程比较麻烦。于是出现了很多第三方的优秀的UI插件,比如很多项目里面用到的NGUI,或者后来出的FairyGUI。Unity官方在4.x时代开始推出了自己的新UI系统,名为UGUI。由于是官方出品,所以选择使用的人也比较多。阿赵我也是基于信任官方出品的心理,在最近的两个项目里面都使用UGUI进行开发。UGUI是一个比较完整的所见即所得式的UI系统, 不过说实在的,我个人感觉它的成熟度还是

2020-06-23 11:24:24 708

原创 unity3D接入Sign in with Apple

unity3D接入Sign in with Apple苹果明确规定2020.6.30之后提交到AppStroe审核的app如接入了第三方登录,则必须接入Sign in with Apple;下面给大家分享一下unity3D接入Sign in with Apple的具体流程:1、首先是按钮格式必须使用苹果给定的几种,具体可以参考链接 苹果官方登录按钮样式;2、oc代码:#import <Foundation/Foundation.h>#import <AuthenticationS

2020-06-17 17:38:40 3303 1

空空如也

空空如也

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

TA关注的人

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