关键词:
Unity 小科普
老规矩,先介绍一下 Unity 的科普小知识:
- Unity是 实时3D互动内容创作和运营平台 。
- 包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助 Unity 将创意变成现实。
- Unity 平台提供一整套完善的软件解决方案,可用于创作、运营和变现任何实时互动的2D和3D内容,支持平台包括手机、平板电脑、PC、游戏主机、增强现实和虚拟现实设备。
- 也可以简单把 Unity 理解为一个游戏引擎,可以用来专业制作游戏!
🎬 博客主页:https://xiaoy.blog.csdn.net
🎥 本文由 呆呆敲代码的小Y 原创,首发于 CSDN🙉
🎄 学习专栏推荐:Unity系统学习专栏
🌲 游戏制作专栏推荐:游戏制作
🌲Unity实战100例专栏推荐:Unity 实战100例 教程
🏅 欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
📆 未来很长,值得我们全力奔赴更美好的生活✨
------------------❤️分割线❤️-------------------------
Unity 实用小技能学习
Unity中 检查当前设备网络状态 的几种方法整理
在做项目时有时候可能需要拿到当前设备的网络状态,所以本文整理了在Unity中可以用到的一些拿到网络状态的方法,下面一起来看看吧。
第一种:使用Unity自己的API判断网络状态
Unity API 如下:https://docs.unity3d.com/ScriptReference/NetworkReachability.ReachableViaLocalAreaNetwork.html
/// <summary>
/// <para>Describes network reachability options.</para>
/// </summary>
public enum NetworkReachability
/// <summary>
/// <para>Network is not reachable.</para>
/// </summary>
NotReachable,
/// <summary>
/// <para>Network is reachable via carrier data network.</para>
/// </summary>
ReachableViaCarrierDataNetwork,
/// <summary>
/// <para>Network is reachable via WiFi or cable.</para>
/// </summary>
ReachableViaLocalAreaNetwork
使用方法如下:
void Start()
// 1
Debug.Log("当前网络状态:"+ Application.internetReachability);
// 2
switch (Application.internetReachability)
case NetworkReachability.NotReachable:
Debug.Log("当前网络不可用");
break;
case NetworkReachability.ReachableViaCarrierDataNetwork:
Debug.Log("当前网络为移动网络");
break;
case NetworkReachability.ReachableViaLocalAreaNetwork:
Debug.Log("当前网络为Wifi");
break;
default:
break;
// 3
if (Application.internetReachability == NetworkReachability.NotReachable)
Debug.Log("当前网络不可用");
else if (Application.internetReachability == NetworkReachability.ReachableViaCarrierDataNetwork)
Debug.Log("当前网络为移动网络");
else if (Application.internetReachability == NetworkReachability.ReachableViaLocalAreaNetwork)
Debug.Log("当前网络为Wifi");
优点:方便快捷,使用一行API代码就可以查询此时的网络状态
缺点:项目打包成exe后无法通过该方法判断网络状态
第二种方法:引用外部库wininet
[DllImport("wininet")]
private extern static bool InternetGetConnectedState(ref int connectionDescription, int reservedValue);
public bool IsConnectedInternet()
int i = 0;
if (InternetGetConnectedState(ref i, 0))
Debug.Log("已联网");
return true;
else
Debug.Log("未联网");
return false;
第三种方法:Ping命令检测网络是否畅通
public bool PingIsHaveNet(string url)
System.Net.NetworkInformation.Ping ping = new System.Net.NetworkInformation.Ping();
PingReply ret = ping.Send(url);
try
if (ret.Status != IPStatus.Success)
Debug.Log("未联网");
return false;
else
Debug.Log("已联网");
return true;
catch (Exception e)
Debug.Log("Ping URL 失败");
return false;
第四种方法: 通过 .Net.NetworkInformation 方法检测
需要引用命名空间 using System.Net.NetworkInformation
private bool UrlExistsUsingSockets(string url)
if (url.StartsWith("https://")) url = url.Remove(0, "https://".Length);
try
System.Net.IPHostEntry ipHost = System.Net.Dns.GetHostEntry(url);// System.Net.Dns.Resolve(url);
Debug.Log("已联网");
return true;
catch (System.Net.Sockets.SocketException se)
System.Diagnostics.Trace.Write(se.Message);
return false;
以上就是整理的几种查询当前设备网络状态的几种方法,如果有更好的方法可以评论区留言提出哦~
100个unity实用技能|c#检查字典中是否存在某个key的几种方法
Unity小科普老规矩,先介绍一下Unity的科普小知识:Unity是实时3D互动内容创作和运营平台。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助Unity将创意变成现实。Unity平台提供一整套完善的软件解决方案,可... 查看详情
100个unity实用技能|c#检查字典中是否存在某个key的几种方法(代码片段)
Unity小科普老规矩,先介绍一下Unity的科普小知识:Unity是实时3D互动内容创作和运营平台。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助Unity将创意变成现实。Unity平台提供一整套完善的软件解... 查看详情
100个unity实用技能|c#检查字典中是否存在某个key的几种方法(代码片段)
Unity小科普老规矩,先介绍一下Unity的科普小知识:Unity是实时3D互动内容创作和运营平台。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助Unity将创意变成现实。Unity平台提供一整套完善的软件解... 查看详情
100个unity实用技能|游戏中使技能或装备跟随角色环绕,持续旋转(代码片段)
Unity小科普老规矩,先介绍一下Unity的科普小知识:Unity是实时3D互动内容创作和运营平台。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助Unity将创意变成现实。Unity平台提供一整套完善的软件解... 查看详情
100个unity实用技能|游戏中使技能或装备跟随角色环绕,持续旋转(代码片段)
Unity小科普老规矩,先介绍一下Unity的科普小知识:Unity是实时3D互动内容创作和运营平台。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助Unity将创意变成现实。Unity平台提供一整套完善的软件解... 查看详情
100个unity实用技能☀️|unity中检测设备麦克风权限(代码片段)
Unity小科普老规矩,先介绍一下Unity的科普小知识:Unity是实时3D互动内容创作和运营平台。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助Unity将创意变成现实。Unity平台提供一整套完善的软件解... 查看详情
100个unity实用技能|修改unityui控件中默认字体配置(代码片段)
Unity小科普老规矩,先介绍一下Unity的科普小知识:Unity是实时3D互动内容创作和运营平台。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助Unity将创意变成现实。Unity平台提供一整套完善的软件解... 查看详情
100个unity实用技能|unity中常用的几种路径分析,不同平台路径总结(代码片段)
Unity小科普老规矩,先介绍一下Unity的科普小知识:Unity是实时3D互动内容创作和运营平台。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助Unity将创意变成现实。Unity平台提供一整套完善的软件解... 查看详情
100个unity实用技能|unity中常用的几种路径分析,不同平台路径总结(代码片段)
Unity小科普老规矩,先介绍一下Unity的科普小知识:Unity是实时3D互动内容创作和运营平台。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助Unity将创意变成现实。Unity平台提供一整套完善的软件解... 查看详情
100个unity实用技能|unity中常用的几种路径分析,不同平台路径总结(代码片段)
Unity小科普老规矩,先介绍一下Unity的科普小知识:Unity是实时3D互动内容创作和运营平台。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助Unity将创意变成现实。Unity平台提供一整套完善的软件解... 查看详情
100个unity实用技能☀️|c#中add和addrange的区别及使用示例(代码片段)
Unity小科普老规矩,先介绍一下Unity的科普小知识:Unity是实时3D互动内容创作和运营平台。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助Unity将创意变成现实。Unity平台提供一整套完善的软件解... 查看详情
100个unity实用技能|unity自定义脚本的初始模版(代码片段)
Unity小科普老规矩,先介绍一下Unity的科普小知识:Unity是实时3D互动内容创作和运营平台。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助Unity将创意变成现实。Unity平台提供一整套完善的软件解... 查看详情
100个unity实用技能|unity自定义脚本的初始模版(代码片段)
Unity小科普老规矩,先介绍一下Unity的科普小知识:Unity是实时3D互动内容创作和运营平台。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助Unity将创意变成现实。Unity平台提供一整套完善的软件解... 查看详情
100个unity实用技能|lua中获取当前时间戳,时间戳和时间格式相互转换时间戳转换为多久之前(代码片段)
Unity小科普老规矩,先介绍一下Unity的科普小知识:Unity是实时3D互动内容创作和运营平台。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助Unity将创意变成现实。Unity平台提供一整套完善的软件解... 查看详情
100个unity实用技能|游戏中获取鼠标点击的坐标,并将游戏对象移动到鼠标的点击位置(代码片段)
Unity小科普老规矩,先介绍一下Unity的科普小知识:Unity是实时3D互动内容创作和运营平台。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助Unity将创意变成现实。Unity平台提供一整套完善的软件解... 查看详情
100个unity实用技能|c#中list使用exists方法判断是否存在符合条件的元素对象(代码片段)
Unity小科普老规矩,先介绍一下Unity的科普小知识:Unity是实时3D互动内容创作和运营平台。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助Unity将创意变成现实。Unity平台提供一整套完善的软件解... 查看详情
100个unity实用技能|c#中list使用exists方法判断是否存在符合条件的元素对象(代码片段)
Unity小科普老规矩,先介绍一下Unity的科普小知识:Unity是实时3D互动内容创作和运营平台。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助Unity将创意变成现实。Unity平台提供一整套完善的软件解... 查看详情
100个unity实用技能|c#中list.find方法详解查找符合要求的第一个元素并返回(代码片段)
Unity小科普老规矩,先介绍一下Unity的科普小知识:Unity是实时3D互动内容创作和运营平台。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助Unity将创意变成现实。Unity平台提供一整套完善的软件解... 查看详情