![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Unity开发
文章平均质量分 71
小程小程,永不消沉
一个专注于游戏开发的程序小伙。
不定期与大家分享 Unity3D、AR、VR、MR 等游戏开发及周边技术。
展开
-
Unity3D 羊了个羊等休闲益智游戏工程源码/3D资源 大合集
Unity3D 羊了个羊等休闲益智游戏工程源码/3D资源 大合集原创 2024-04-22 10:52:16 · 2263 阅读 · 5 评论 -
网络游戏开发之同步模式
网络游戏开发之同步模式网络游戏如何实现所有客户端玩家信息同步?(如吃鸡中所有玩家的位置同步)同步模式一般分两种:状态同步和帧同步。状态同步:状态发生变化后,客户端上传操作到服务器,服务器收到后处理行为的结果,然后以广播的方式把状态发送给客户端,客户端收到状态后再根据状态显示内容。如:吃鸡等大地图游戏、MMO游戏、因为MMO游戏的客户端承载有限,并不能把整张地图的实体全部展现出来。帧同步:每一帧都要同步,每个客户端通过拿到相同的状态和指令,按帧顺序执行,达到同步效果。如:LOL、王者荣耀等二者原创 2021-11-22 18:21:41 · 4986 阅读 · 1 评论 -
MMORPG类游戏制作思路分享(Unity3D+PhotonServer)
网虫虫 http://www.u3d8.com/?cat=324原创 2021-11-11 13:16:07 · 5684 阅读 · 3 评论 -
Unity2020 几种常用热更新方案的优劣及XLua实战
了解热更新之前,首先得知道为啥要用热更新?为了省去用户自行更新客户端的步骤,从而改善用户体验。Unity热更新方案一、几种常用热更新方案的区别1、uLua2、xLua3、toLua4、ILRuntime5、uLua二、下载地址及教程一、几种常用热更新方案的区别热更新1、uLua2、xLua3、toLua4、ILRuntime5、uLua二、下载地址及教程...原创 2021-10-26 20:55:07 · 9640 阅读 · 0 评论 -
Unity2020 AR传送门开发(ARFoundation)
Unity版本:2020.3.0先看看成品效果目录一、AR环境搭建二、AR传送门原理三、代码控制AR的状态检测、开启及关闭1、如何判断设备是否满足AR硬件需求2、如何主动开启、关闭AR功能四、项目下载链接一、AR环境搭建我这边开发AR用的是ARFoundation,集成了ARCore和ARKit的功能,AR环境的搭建有两种方式:1、直接使用unity提供的AR模板在unityHub面板新建项目,弹出如下弹框,选择AR模板,设置好项目名称和位置,创建。2、如果是在已有项目上添加AR功能,则可以原创 2021-10-21 15:48:29 · 17764 阅读 · 30 评论 -
C# 进程(Process)与线程(Thread)的理解及运用
线程的理解及运用一、进程、线程和协程的理解1、进程、线程、协程的定义2、串行,并行和并发的基本概念二、线程的使用一、进程、线程和协程的理解在unity中可以使用多线程去做 解压资源、更新资源等操作。因为单开线程的话 不会影响主线程卡顿,这样UI就不会卡了。但是开的线程里边不能执行unity主线程的mono代码。线程启动后,执行完毕自动结束该线程、可以同时启动多个线程做事。比如微信,在启动的时候就会开两个线程。微信有两个进程分别是com.tencent.mm(A), com.tencent.mm:pus原创 2021-10-11 11:48:26 · 3530 阅读 · 4 评论 -
Unity3D实现页面的滑动切换功能
https://blog.csdn.net/mumu6200/article/details/91989449原创 2021-09-23 09:53:07 · 3882 阅读 · 13 评论 -
最新Jenkins自动化构建使用 (Unity2020+Jenkins+云效)
http://www.u3d8.com/?p=1996https://www.xuanyusong.com/archives/3349原创 2021-09-11 11:15:05 · 2917 阅读 · 12 评论 -
游戏开发面试题分享
分享一波 Unity3D面试经常被问的基础问题及答案。一:动态加载资源的方式?他们之间的区别1.Resources.Load();2.AssetBundle二:请描述游戏动画有哪几种,以及其原理?主要有关节动画、骨骼动画、单一网格模型动画(关键帧动画)。关节动画:把角色分成若干独立部分,一个部分对应一个网格模型,部分的动画连接成一个整体的动画,角色比较灵活,Quake2中使用这种动画;骨骼动画,广泛应用的动画方式,集成了以上两个方式的优点,骨骼按角色特点组成一定的层次结构,有关节相连,可做相对原创 2021-07-19 15:50:55 · 1323 阅读 · 1 评论 -
Unity 编辑器开发——批量打包工具开发分享
研发了两年多的项目开始推广了,为了应对多平台、多渠道需要打包巨多的应用程序,写了个一键打包工具,下面是源码及讲解。这个打包工具包含的功能有一下几点:自动配置ProjectSetting自动配置KeyStore自动打包场景自动配置项目某个脚本的参数(如taptap、4399等渠道)using UnityEngine;using UnityEditor;using System.Collections;using System.Collections.Generic;using Syst原创 2021-07-02 20:43:32 · 977 阅读 · 4 评论 -
Unity 直指灵魂的代码详解——委托、事件与Observer设计模式
委托、事件与Observer设计模式一、委托 delegate 的用法1、将方法作为另一个方法的参数2、将方法绑定到委托二、事件 Event一、委托 delegate 的用法1、将方法作为另一个方法的参数委托是一个类,它定义了方法的类型,使得可以将方法当作另一个方法的参数来进行传递,这种将方法动态地赋给参数的做法,可以避免在程序中大量使用If-Else(Switch)语句和枚举定义,同时使得程序具有更好的可扩展性。没看懂?没关系,看代码一目了然!定义及使用方式案例:public class Sh原创 2021-06-29 21:16:34 · 590 阅读 · 7 评论 -
Unity项目如何加入AndroidX依赖,解决APK运行闪退问题?
Unity项目如何加入AndroidX依赖?环境:Unity2020.3.0 / Android3.4.1问题:安卓supportV4升级成AndroidX,打出的APK运行闪退。解决方法:1、在AS的build.gradle文件中添加AndroidX依赖2、修改gradleTemplate.properties文件, 允许Unity引擎打包时添加AndroidX依赖。2、在Unity项目的mainTemplate.gradle配置文件中添加AndroidX依赖环境:Unity2020.3.0原创 2021-06-23 15:05:35 · 4320 阅读 · 7 评论 -
Unity反导打包详细步骤
导出资源包以后,打开AndroidStudio。File->Import Project打开导出的资源路径,可以看到此资源文件夹图标变成了安卓标志,表示此项目可以导入到AndroidStudio。等待右下角资源加载完毕。下面开始打包APK,Build->Generate Signed Bundle选择keystore(或者.jks)路径,输入密码等信息根据需求选择一种打包类型,正式版选release,测试版 debug,勾选V1 V2,等待右下角打包进度选择Proje.原创 2021-06-28 09:29:45 · 526 阅读 · 6 评论 -
Unity 打包APK签名用法原理及META-INF文件夹
先介绍下签名的概念,知道的略过。在消息通信时,必须解决两个问题:一是确保消息来源的真实性,二是确保消息不会被第三方篡改。在安装Apk时,同样需要确保Apk来源的真实性,以及Apk没有被第三方篡改。为了解决这两个问题,开发者对Apk进行签名:在Apk中写入一个“指纹”。指纹写入以后,Apk中有任何修改,都会导致这个指纹无效,Android系统在安装Apk进行签名校验时就会不通过,从而保证了安全性。目录一、APK的Jar签名过程——META-INF文件夹二、签名文件校验过程三、签名相关命令四、keytool原创 2021-06-17 15:01:49 · 2495 阅读 · 7 评论 -
Unity3D 如何优化Camera视野外的物体,减少性能消耗
Unity3D 如何优化像机外的物体,减少性能消耗?在项目中制作场景的过程中,我们经常会使用到大量的粒子系统。比如场景中的火把,在一个村寨中,美术们放置了大量的火把。整个场景中的各个地方,有上百个火把。Unity中,在摄像机范围外的粒子系统虽然不会被绘制。但是update是一直持续的。这也就意味着,这100多个火把,不论是否可见都在更新。这个设计应该是很不合理的,这时就需要一个开关,来控制不可见的粒子系统是否需要update。有的粒子系统在不可见的时候需要更新,比如爆炸。有的不需要更新,比如火堆火把。原创 2021-06-02 11:30:48 · 2008 阅读 · 11 评论 -
Unity2020 Gradle Error系列问题处理方法
Unity发布Android的APK时,关于AndroidManifest的合并,分为两种情况:当存在多个jar包时,需要手动合并每个jar包的AndroidManifest到主AndroidManifest文件当存在aar包时,在导出APK时,Unity会解析Arr包的资源,并自动吧它们的AndroidManifest文件合并主AndroidManifest文件PS:主AndroidManifest文件为Plugins/Android目录下的AndroidManifest文件或者Unity默...原创 2021-05-27 16:44:00 · 6876 阅读 · 26 评论 -
Unity使用PostProcessing没有滤镜效果原因总结
PostProcessing官方文档点这里在使用Unity的PostProcessing时,为什么没有滤镜效果?修改参数场景没有任何变化?原因可能有以下几点:一、Layer问题二、Global问题三、Weight渲染权重问题四、intensity强度问题一、Layer问题滤镜层一定要和所渲染的目标层一样,如下:二、Global问题PostProcessVolume组件的IsGlobal如果不勾选,需要通过触发器判断需要渲染的区域,如果目标不在渲染区域,就没效果。IsGlobal如果勾选,则就原创 2021-04-22 15:49:34 · 8157 阅读 · 9 评论 -
Unity3D 项目优化干货分享
一、程序方面 01、务必删除脚本中为空或不需要的默认方法; 02、只在一个脚本中使用OnGUI方法; 03、避免在OnGUI中对变量、方法进行更新、赋值,输出变量建议在Update内; 04、同一脚本中频繁使用的变量建议声明其为全局变量,脚本之间频繁调用的变量或方法建议声明为全局静态变量或方法; 05、不要去频繁获取组件,将其声明为全局变量; 06、数组、集合类元素优先使用Array,其次是List; 07、脚本在不使用时脚本禁用之,需要时再启用; 08、可以使用Ray来代替原创 2021-04-16 17:36:20 · 282 阅读 · 6 评论 -
在线玩家人数上限实时监测(Photon)
https://www.jianshu.com/p/f3f9123df1b9https://www.jianshu.com/p/fb6db20766d9?from=groupmessage原创 2021-03-29 14:52:09 · 4003 阅读 · 16 评论 -
免费资源分享(八) 3D跑酷游戏源码分享
免费分享 Unity3D 。适应版本:Unity 2018.4如果该文章侵犯到您的权益,请及时主动留言联系,我们将及时删除相关内容。(需要 指定场景、模型、音效、各类游戏源码等资源的,可以在评论区评论,博主会在下期更新)如果该文章侵犯到您的权益,请及时主动留言联系,我们将及时删除相关内容。如果您也想为UNITY免费资源的分流出力,请及时留言和博主联系,我们将尽快更新文章以及相关资源。感谢客官们的支持!我会持续更新哒~(需要 指定场景、模型、音效、各类游戏源码等资源的,可以在评论区评论,博主会原创 2021-03-25 10:04:12 · 5718 阅读 · 33 评论 -
C# 工具类:时间戳转换日期格式
给大家分享一个静态类,可以很方便地把时间戳转换日期格式输出。调用方法和效果如下:using System;using UnityEngine; private void Start() { DateTime dateTime = TimestampHelper.GetDateTime(1482115779); Debug.Log(dateTime.Year+"年"+ dateTime.Month+"月"+ dateTime.Day + "日");原创 2021-03-11 18:18:35 · 1393 阅读 · 1 评论 -
Unity 文件操作及各路径总结
Unity 数据存储及各路径总结一.Resources文件夹。二.Windows平台文件处理三.StreamingAssets文件夹。四.使用Application.persistentDataPath操作文件五.使用Application.temporaryCachePath操作文件六.文件目录介绍一.Resources文件夹。可以使用Resources.Load(“文件名字,注:不包括文件后缀名”);把文件夹中的对象加载出来。注:此方可实现对文件实施“增删查改”等操作,但打包后不可以更改了。二.原创 2021-03-06 09:17:21 · 4220 阅读 · 17 评论 -
Unity 图片及截图本地存储、相册更新等系列问题总结
https://www.cnblogs.com/zhepama/p/4362312.html原创 2021-03-04 16:30:24 · 3441 阅读 · 10 评论 -
Unity 打包APK 适配全面屏、刘海屏、水滴屏、挖孔屏
上述两种屏幕都可以统称为刘海屏,不过对于右侧较小的刘海,业界一般称为水滴屏。目录一、全面屏适配细节二、刘海上方有黑条怎么解决?一、全面屏适配细节目前国内流行的手机厂商主要有:vivo、oppo、华为、小米。各厂商对刘海屏的适配都大不相同,各自有各自对刘海屏的适配API,具体的适配方法可以阅读相应的官网:VIVO:https://dev.vivo.com.cn/documentCenter/doc/103OPPO:https://open.oppomobile.com/wiki/doc#id=10.原创 2021-03-04 15:35:30 · 5876 阅读 · 27 评论 -
免费资源分享(七) 3D吃鸡写实动态场景
免费分享 Unity3D 吃鸡场景,户外写实场景。适应版本:Unity 2018.4如果该文章侵犯到您的权益,请及时主动留言联系,我们将及时删除相关内容。(需要 指定场景、模型、音效、各类游戏源码等资源的,可以在评论区评论,博主会在下期更新)如果该文章侵犯到您的权益,请及时主动留言联系,我们将及时删除相关内容。如果您也想为UNITY免费资源的分流出力,请及时留言和博主联系,我们将尽快更新文章以及相关资源。感谢客官们的支持!我会持续更新哒~(需要 指定场景、模型、音效、各类游戏源码等资源的,可原创 2020-12-22 13:24:21 · 782 阅读 · 1 评论 -
Unity开发 MMORPG类游戏引导系统
下面展示一些 MMORPG类游戏引导系统逻辑代码。using LitJson;using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI; class GuideController : MonoBehaviour { public static GuideController instance; public List原创 2020-12-21 10:19:52 · 913 阅读 · 1 评论 -
Unity 自定义文本,自动写入Log日志
下面展示 自定义文本,自动写入Log日志。using BehaviorDesigner.Runtime.Tasks.Movement;using MR_LBS.Common;using System.IO;using UnityEngine;using UnityEngine.UI; public class AndroidLogHelper : MonoBehaviour { public static AndroidLogHelper instance = nul原创 2020-12-18 09:25:48 · 1786 阅读 · 9 评论 -
Unity开发 浅谈MVC、MVP、MVVM的特点、运用与区别
目录MVCMVPMVVM总结:MVCModel-View-Controller在ASP还在奋斗的时候WebForm突然到来,正如WebForm还在奋斗的时候MVC突然到来。当然,我这里讲的MVC还是最原始的MVC,因为MVC在我们还在争论的时候已经发展了许多不同分支了。有一点相信大家同意的就是,我们今天讨论争论的MVC、MVP、MVVM、Code Behind等等都源自于职能分化和规划的思想与目的,MVC不是它们的开始,但是一个很好的开始。相信MVC的模型大家很熟悉,也很容易找到,我们这里用一下某原创 2020-12-16 09:40:20 · 1896 阅读 · 2 评论 -
C# 如何使用Json+字典(Dictionary)处理 键值对
首先,引入命名空间:using LitJson;using System.Linq;下面展示 Json+字典(Dictionary)序列化和反序列化处理 键值对。 public void JsonTest() { //以LitJson方式存储键值对 JsonData jd = new JsonData(); jd["BattleStep"] = "1"; jd["sss"] = "2"; jd["aaa"] =原创 2020-12-11 14:58:36 · 2746 阅读 · 6 评论 -
免费资源分享(四)一万多个分类好的音效资源(3.4G)
免费分享 Unity3D 写实梦幻大场景。下载链接:https://pan.baidu.com/s/1M2Cvk5oWzqtDwwDaSv2yVA提取码:an58如果该文章侵犯到您的权益,请及时主动留言联系,我们将及时删除相关内容。如果您也想为UNITY免费资源的分流出力,请及时留言和博主联系,我们将尽快更新文章以及相关资源。感谢客官们的支持!我会持续更新哒~(需要 指定场景、模型、音效、各类游戏源码等资源的,可以在评论区评论,博主会在下期更新)...原创 2020-12-02 17:55:11 · 589 阅读 · 6 评论 -
免费资源分享(六) AAA级飞龙系列模型及动画
免费分享 Unity3D 写实梦幻大场景。下载链接:https://pan.baidu.com/s/1M2Cvk5oWzqtDwwDaSv2yVA提取码:an58如果该文章侵犯到您的权益,请及时主动留言联系,我们将及时删除相关内容。如果您也想为UNITY免费资源的分流出力,请及时留言和博主联系,我们将尽快更新文章以及相关资源。感谢客官们的支持!我会持续更新哒~(需要 指定场景、模型、音效、各类游戏源码等资源的,可以在评论区评论,博主会在下期更新)...原创 2021-03-12 12:17:08 · 1280 阅读 · 4 评论 -
游戏服务器设计 Unity3d + photon + grpc + nodejs + postgis/postgresql
unity3d + photon + grpc + nodejs + postgis/postgresql 游戏服务器设计游戏类型:MMORPG如果想使用grpc替换photon完成通信(长链接替换成短连接),可参考此博客:Unity + Grpc + protobuf + C# 使用流程详解团队由于缺少游戏网络层的设计经验,于是就采用市面上比效常用的服务器 photon 来做。具体到语言:unity3d 使用 c# , android 使用 java,photon 使用 c# 。做技术选型的时原创 2020-11-30 14:47:46 · 1429 阅读 · 10 评论 -
免费资源分享(二) Unity3D 写实梦幻大场景
免费分享 Unity3D办公室工艺仿真,全模型贴图。下载链接:https://pan.baidu.com/s/1Akf3VF0p3X-gty438Sr_EQ提取码:2t7s如果该文章侵犯到您的权益,请及时主动留言联系,我们将及时删除相关内容。如果您也想为UNITY免费资源的分流出力,请及时留言和博主联系,我们将尽快更新文章以及相关资源。感谢客官们的支持!我会持续更新哒~(需要 指定场景、模型、音效、各类游戏源码等资源的,可以在评论区评论,博主会在下期更新)...原创 2020-11-27 11:23:40 · 3557 阅读 · 20 评论 -
MonoBehaviour 协程coroutine的衍生及在 Lua中的使用
unity 协程coroutine异步操作的衍生使用 及 在 Lua中的使用目录一、常见使用协程的示例二、c#对协程调用的编译结果三、协程的衍生使用四、Lua中的协程一、常见使用协程的示例经常,我们会利用monobehaviour的startcoroutine来开启一个协程,这是我们在使用unity中最常见的直观理解。在这个协程中执行一些异步操作,比如下载文件,加载文件等,在完成这些操作后,执行我们的回调。 举例说明:public static void Download(System.Action原创 2020-11-26 09:14:01 · 447 阅读 · 5 评论 -
资源分享(一) Unity3D办公室工艺仿真(全模型)
免费分享 Unity3D办公室工艺仿真,全模型贴图。下载链接:https://pan.baidu.com/s/1Akf3VF0p3X-gty438Sr_EQ提取码:2t7s感谢客官们的支持!我会持续更新哒~(需要 指定场景、模型、音效、各类游戏源码等资源的,可以在评论区评论,博主会在下期更新)感谢客官们的支持!记得评论 666 呦~...原创 2020-11-23 11:00:13 · 1583 阅读 · 7 评论 -
Unity百例开发日记 之 静态批处理原理理解
转载自:https://www.cnblogs.com/zblade/目录一、静态批处理的时间点、静态批处理的基本原理三、为什么要用静态批处理?四、对于静态批处理后的物体,如何决定其可视?一、静态批处理的时间点在游戏导出的时候,在player setting中勾选static batching,这样在导出包的时候就进行批处理,导出来的包就会比较大。在游戏场景中勾选场景物体的static选项,在加载该场景的时候,会进行一次静态批处理的合并,这样导出来的包不大,但是在加载的时候会使得内存变大。、静态批原创 2020-11-22 22:54:27 · 1075 阅读 · 11 评论 -
Unity 原生版本管理工具VersionControl - Plastic SCM 详解
Unity原生版本管理工具 VersionControl- Plastic SCM 详解团队为了方便unity开发,尝试了各种类型的版本控制工具。尝试了Github客户端和SourceTree,发现都有各种不爽,预设体等Unity3D特有文件类型经常合并失败。最后,发现还是Unity的原生版本管理工具- Plastic SCM最好使,还集成到了Unity编辑器中,如下图。下面手把手教大家如何快速上手Plastic SCM。文章目录一、正常安装使用顺序二、Plastic 文件忽略三、Branc原创 2020-11-21 22:01:16 · 10598 阅读 · 5 评论 -
Unity百例开发日记 之 如何发布WebGL、去Logo、网络端通信 、本地运行
https://blog.csdn.net/blastblade/article/details/84440098https://blog.csdn.net/w405722907/article/details/81699068<!DOCTYPE html><html lang="en-us"><head> <meta charset="utf-8"> <meta http-equiv="Content-Type" content="t原创 2020-11-20 09:05:35 · 5171 阅读 · 8 评论 -
Unity百例开发日记 之 抗锯齿问题处理心得
https://blog.csdn.net/liang_704959721/article/details/42142047原创 2020-11-19 11:27:30 · 10225 阅读 · 5 评论 -
Unity3D 布料系统 And Cloth Constraint 及 Mesh双面渲染
如何在Unity3D 实布料旗帜的波动效果呢?如下图:目录一、布料系统的使用方法二、Cloth布料系统的属性设置1、Use Gravity 重力2、Damping 阻尼3、布料的拉扯和弯曲程度4、Use Continuous Collision5、添加碰撞体6、Cloth Unconstrained编辑面板三、使用布料系统的的注意事项四、双面材质的制作一、布料系统的使用方法1、添加Cloth组件此处以plane作为例子。在场景中生成plane平面后,添加组件Cloth,会出现Skinned Me原创 2020-11-29 19:44:12 · 2727 阅读 · 5 评论