CS4L20——反射
CS4L20——反射 本章代码关键字 12345678910111213141516171819202122232425262728293031323334353637383940414243Type // 类型信息类object.GetType() // 获取一个变量的类型信息typeof() // 通过类名去获取类型信息Type.GetType() // 通过字符串获取类型信息type.GetMembers() // 通过类型信息获取类的所有成员信息// 构造函数信息type.GetConstructors() // 通过类型信息获取类的所有构造函数信息type.GetConstructor() // 通过类型信息和参数列表信息,获取类的一个特定的构造函数信息ConstructorInfo // 构造函数信息constructorInfo.Invoke() ...
UM1L4——Player Settings 打包安卓应用程序相关设置
UM1L4——Player Settings 打包安卓应用程序相关设置 Player Settings(打包安卓应用程序相关设置) Build Settings ——> Player Settings 即可直接进入进行相关设置 基础设置 公司名 项目名 版本号 默认图标 默认鼠标指针 光标贴图偏移 图标设置 Icon 设置在设备上显示的应用图标 Adaptive:运行在 Android8.0 及以上版本上的设备显示的应用图标 Round:运行在 Android7.1 及以上版本上的设备显示的应用图标 Legacy icons:运行在 Android7.1 以下版本上的设备显示的应用图标 里面的细分选项就是不同分辨率下的图标 分辨率和演示设置 Resolution and Presentation 分辨率和演示 Resoultion and Presentation Fullscreen Mode 全屏模式 Fullscreen Window:...
UM1L3——Build Settings 打包安卓应用程序相关设置
UM1L3——Build Settings 打包安卓应用程序相关设置 Build Settings(打包安卓应用程序相关设置) 新版本特有参数: Texture Compression:纹理压缩 设置发布后的纹理压缩格式 Use Player Settings: 使用在播放器设置中设置的纹理压缩格式 ETC:使用ETC格式(推荐) ETC2:使用ETC2格式 ASTC:使用ASTC格式 DXT:使用DXT格式 PVRTC:使用PVRTC格式 以前讲过相关内容,详见:U3L2-5——参数设置—平台设置 了解格式详细信息:Recommended, default, and supported texture formats, by platform - Unity 手册 注意:对于安卓ETC2是常用的压缩格式,支持透明通道。 但是对于老设备不支持ETC2,可以使用ETC。 我们可以统一设置为ETC2,在下方的ETC2 fallback中设置, 如果不支持ETC2,使用哪种压缩方式 ETC2...
UH3L13——客户端热更新路径优化
UH3L13——客户端热更新路径优化 当前需要优化的问题 不同平台的特殊路径,读取表现是不同的: Application.persistentDataPath Application.streamingAssetsPath UnityWebRequest或者WWW读取 C#文件流读取 UnityWebRequest或者WWW读取 C#文件流读取 PC 加 file:/// 无需处理 加 file:/// 无需处理 Android 加 file:/// 无需处理 直接用 不可用 IOS 加 file:/// 无需处理 加 file:/// 无需处理 如果我们不对不同平台加以判断,修改读取逻辑,可能就在不同平台上读取出现问题,因此我们需要优化热更新路径的逻辑 多路测试 通过预处理器指令#if ... #elif ... #else .......
UH3L11——编辑器窗口设计
UH3L11——编辑器窗口设计 前置知识点 IMGUI Unity编辑器:EditorWindow、[MenuItem()] 目标 将之前的编辑器功能整合到一个窗口中,并且在工具窗口中添加一个IP地址输入框,平台选择页签 代码实现 假设我们要实现这样的一个窗口: 1234567891011121314151617181920212223242526272829303132333435363738394041using UnityEditor;using UnityEngine;public class ABTools : EditorWindow{ private int nowSelIndex = 0; private string[] targetStrings = new string[] { "PC", "IOS", "Android" }; private string serverIP = "ftp://127.0.0.1"; ...
UM1L2——旧版Unity打包安卓应用程序
UM1L2——旧版Unity打包安卓应用程序 Unity 2019 以下的版本,相对新版本的 Unity 来说更麻烦 我们需要自己下载安装设置 JDK、NDK、Android SDK 准备好了他们 再设置基础关键信息 才能发布安卓.apk后缀的应用安装程序 Unity2019以下版本 发布Android准备工作 Android构建支持工具安装(Unity提供下载,安装时需要关闭Unity) JDK(Java开发工具包)(网络下载) JDK 必须是版本 8:Java Downloads | Oracle NDK (本地开发工具包)(网络下载)NDK 版本必须是 Unity2018——r16b,Unity2017——r13d 注意:NDK是可选的工具,如果之后要发il2cpp的应用程序,那么NDK是必须的,如果是Mono可以不使用它 Android NDK下载(r10~ r26b) 持续更新-CSDN博客 NDK 下载 | Android NDK | Android Developers (google.cn) Android...
UM1L1——新版Unity打包安卓应用程序
UM1L1——新版Unity打包安卓应用程序 Unity2019及以上发布Android准备工作 通过UnityHub安装Android平台相关工具 Android 构建支持 Android SDK(安卓软件开发工具包)、NDKTools(本地开发工具包) OpenJDK(Java开发工具包) 这些是发布安卓应用程序必备内容,安装了他们,才能发布安卓应用程序 注意:Unity支持Android 5.1及以上版本 在这里检查是否安装了 Android 构建支持,如果安装了则Build Setting可以显示该界面: 如果没有安装,请到Unity hub上为编辑器添加 Android 构建支持 一切准备就绪后,请选择安卓平台并点击切换平台(Switch Platform)选项 注:如果报错,请试试看先把Visual Studio关闭后再重新切换 发布必修改的设置 在File —— Build Setting —— Player Setting中修改 公司名 游戏项目名 版本号 默认图标 Other Settings ——...
CS5L14——unsafe
CS5L14——unsafe unsafe Unity移动开发 内涉及内容,这里将其补充到 C# 知识补充内,它本身不属于 C# 知识补充的课程 默认情况下,C# 是不允许使用 指针 的,unsafe 关键词用于在 C# 表示不安全的上下文, 如果想要在 C# 中进行任何和指针相关的操作,就必须配合 unsafe 关键词使用。 何为指针 指针(Pointer,简称 ptr)是计算机编程中一个重要的概念,它是一种特殊的数据类型,用于存储变量的内存地址。 简单来说,指针指向了一个变量在计算机内存中的存储位置。指针就是地址,地址就是指针 每个变量在内存中都有一个地址,在编程中,通过定义指针变量,我们可以存储一个变量的地址, 这就使得我们可以通过间接的方式操作和修改变量,而不需要访问原始的变量名。 在公共语言运行时(CLR)中,不安全代码是指无法验证的代码。 C# 中的不安全代码不一定是危险的,只是 CLR 无法验证该代码的安全性。 因此,CLR...
UM1——Android开发基础
UM1——Android开发基础 Android开发基础 本系列学习内容 新版 Unity 打包安卓应用程序(Unity 2019 版及以上版本) 旧版 Unity 打包安卓应用程序(Unity 2019 版以前) 打包安卓应用程序相关设置 Build Settings Player Settings Android Studio 打包安卓应用 调试相关 Unity 内调试安卓应用程序 Unity Remote(快速的测试设备的输入相关功能) Android Logcat (查看日志打印,内存统计,屏幕截图或录屏,堆栈跟踪) Android Studio内调试安卓程序 原生安卓游戏开发如何进行 要进行原生的安卓(Android)游戏开发,我们需要掌握的知识有: Java 语言 或 Kotlin 语言 对应的开发工具(IDE):Android Studio(推荐)、Eclipse、IntelliJ IDEA 等 Android 开发流程 Android SDK...