备忘录
虚拟手机验证:https://www.yima123.xyz/壁纸网站:https://wallhaven.cc翻墙软件:https://cylink.oneGitClone加速:gitclone.com图片压缩工具:https://pngquant.org动漫网站:https://www.agefans.vipppt模板:https://www.canva.com图书(电子书):https://singlelogin.me游戏下载(需翻墙):https://byrut.org/Unity资源下载: https://unityassetcollection.com/Mac软件下载:https://www.macyy.cn/Mac谷歌跨域浏览器:open -n -a /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome —args —user-data-dir=”/tmp/chrome_dev_test” —disable-web-security
Unity-Dots
Dots前置Dots简介DOTS是什么Data-Oriented Technology Stack(面向数据的技术栈) The C# job system The Burst compiler Unity Mathematics Unity Collections Entities ( Entity-Component System) Entities.Graphics ( Hybird Renderer ) Netcode Physics Animation (WIP) Audio(WIP) DOTS可以应用到哪些地方? 具有大世界流式加载的游戏 具有复杂的大规模模拟的游戏 具有多种网络类型的多人联线游戏 具有需要客户端模拟预测的网络游戏,如射击游戏 为什么我们需要DOTS? CPU与Memory的速度发展不均衡以及带宽限制 添加高速的缓存Cache内存层级结构去弥补 摩尔定律的延续与现代CPU设计。 越来越好的工艺 越来越多的核 分工越来越细的处理单元与存储 SIMD/SIMT 3.并行编程的发展 OpenMP TBB—-Intel ...
Unity-移动端屏幕适配
开始之前的重要信息本教程的标签之⼀是初学者,但这不是完全初学者的教程。 虽然您不必是专业的 C# 编码⼈员,但我希望您熟悉 C#,以便您可以根据⾃⼰的需要编辑脚本。 如何修复不同屏幕尺⼨的差距移动游戏开发的⼀个⼤问题是游戏中的空⽩空间和资产之间的差距。在⼤多数情况下,这是游戏背景和空⽩区域的问题。 例如,让我们看⼀下这个场景: 如您所⻅,这是“游戏”选项卡的屏幕截图,该场景使⽤的参考分辨率是全⾼清,例如 1920×1080。 从上图中我们可以看到设置没有任何问题,⼀切都在它应该在的地⽅。但是,这是 Unity 编辑器的预览,让我们来看看游戏在真实设备上的样⼦。 这是在分辨率为 1920×1080 的 iPhone 6 Plus 上预览游戏的效果: 这是游戏在分辨率为 1334×750 的 iPhone 7 上的样⼦: 这是游戏在分辨率为 1280×720 的三星 Galaxy A5 上的样⼦: 如您所⻅,我们的游戏在 Unity 编辑器和上述设备上看起来是⼀样的。这⾥的问题是我们只在分辨率为1920×1080或以下的设备上测试了游戏,让我们来看看我们的游戏在分辨率更⾼的设备 ...
Unity-性能优化
一个B站UP主的教程,后半部分涉及到很多urp源码修改暂时还看不懂,只记录了前半部的内容 视频地址:https://www.bilibili.com/video/BV1AL4y1b75c/?spm_id_from=333.999.0.0&vd_source=4c7b49a270731b8ec068bfb156c5af6a 资源优化Unity资源检测工具Asset Checker用于本地资源检测,帮助开发者尽早发现资源文件中存在的问题 支持所有版本的Unity项目 不依赖Unity Editor,无需安装绿色运行 检测速度极快,可在UPR中查阅检测结果 支持命令行模式,可与CI/CD工具轻松集成,实现自动化检测 规则库持续更新 支持AssetBundle冗余检测 支持静态代码分析 Asset Checker 官方教程地址(包含工具下载地址) Audio导入设置检查与优化 根据平台选择合理的音频设置,原始音频资源尽量采用未压缩WAV格式 移动平台对音乐音效统一采用单通道设置(Force to Mono),并将音乐采样频率设置为22050Hz 一般勾选了强制单声道之后也要勾选No ...
Unity-移动端打包记录(持续更新)
AndroidGradle版本问题本地打包的大部分错误都是因为这个问题,这是因为笔者接入的SDK自定义了gradle的插件版本,这个再unity本身其实已经定义过了,但是自己是可以通过修改build.gradle进行修改的。查看unity本身gradel的插件版本的路径是:Editor\Data\PlaybackEngines\AndroidPlayer\Tools\GradleTemplates\baseProjectTemplate.gradle,以2019.4.28版本为例,里面代码为: 123456789101112allprojects { buildscript { *** dependencies { *** classpath 'com.android.tools.build:gradle:3.4.0' **BUILD_SCRIPT_DEPS** } } ***}** ...
C# LINQ
LINQ 是 Language INtegrated Query 单词的首字母缩写,翻译过来是语言集成查询。它为查询跨各种数据源和格式的数据提供了一致的模型,所以叫集成查询。由于这种查询并没有制造新的语言而只是在现有的语言基础上来实现,所以叫语言集成查询。 基础在 C# 中,从功能上 LINQ 可分为两类:LINQ to Object 和 LINQ to XML;从语法上 LINQ 可以分为 LINQ to Object 和 LINQ 扩展方法 纠正: 从功能上 LINQ 可分为两类: LINQ to Object,查询内存集合,直接把查询编译成 .NET 代码执行。 LINQ to Provider,查询自定义数据源,由开发者提供相应数据源的 Provider 并翻译和执行自定义查询,如 XML、JSON 等都可以作为 Provider 对应的数据源,数据源对应的 LINQ 查询叫 LINQ to <数据源>,比如:LINQ to XML。 从语法上 LINQ 可以分为: SQL风格:语法和 SQL 相似,部分复杂查询用 SQL 风格语义会更清晰明了,比如 Sele ...
Unity-移动平台相关Java语法
简单了解Java语法 环境Java环境:www.baidu.com 写Java编辑器推荐是IDEA 但是我们是Unity导出的Android项目所以还是用AndroidStudio 变量Java中的有符号整型123456789101112131415161718//1.byte(1个字节,8位,-2^7 ~ 2^7 - 1,-128 ~ 127)System.out.println("byte位数" + Byte.SIZE);System.out.println("byte最大值" + Byte.MAX_VALUE);System.out.println("byte最小值" + Byte.MIN_VALUE);//2.short(2个字节,16位,-2^15 ~ 2^15 - 1,-32768 ~ 32767)System.out.println("short位数" + Short.SIZE);System.out.println("short最大值" + Short.MAX_VALUE ...
Unity-移动平台相关Android
Android发布流程Unity2019及以上发布Android准备工作 通过UnityHub安装Android平台相关工具 1.Android构建支持 2.Android SDK(安卓软件开发工具包)、NDKTools(本地开发工具包) 3.OpenJDK(Java开发工具包) 注意:Unity支持Android 5.1及以上版本 Unity2019以下版本1.Android构建支持工具安装(Unity提供下载,安装时需要关闭Unity) 2.JDK(Java开发工具包)(网络下载) JDK 必须是版本 8 https://www.oracle.com/java/technologies/downloads/#jdk18-windows 3.NDK (本地开发工具包)(网络下载)NDK 版本必须是 Unity2018——r16b, Unity2017——r13d 注意:NDK是可选的工具,如果之后要发il2cpp的应用程序,那么NDK是必须的,如果是Mono可以不使用它 https://blog.csdn.net/momo0853/article/details/73898066 h ...
Unity-网络开发(三)
大小端模式什么是大小端模式大端模式是指数据的高字节保存在内存的低地址中 而数据的低字节保存在内存的高地址中 这样的存储模式有点儿类似于把数据当作字符串顺序处理 地址由小向大增加,数据从高位往低位放 符合人类的阅读习惯 小端模式是指数据的高字节保存在内存的高地址中 而数据的低字节保存在内存的低地址中 举例说明十六进制数据0x11223344 大端模式存储11 22 33 44 0 1 2 3 低地址——>高地址 小端模式存储44 33 22 11 0 1 2 3 低地址——>高地址 为什么有大小端模式大小端模式其实是计算机硬件的两种存储数据的方式 我们也可以称大小端模式为 大小端字节序 对于我们来说,大端字节序阅读起来更加方便,为什么还要有小端字节序呢? 原因是,计算机电路先处理低位字节,效率比较高 计算机处理字节序的时候,不知道什么是高位字节,什么是低位字节 它只知道按顺序读取字节,先读第一个字节,再读第二个字节 如果是大端字节序,先读到的就是高位字节,后读到的就是低位字节 小端字节序正好相 ...
Unity-UniTask
UniTask为Unity提供一个高性能,0GC的async/await异步方案。 基于值类型的UniTask<T>和自定义的 AsyncMethodBuilder 来实现0GC 使所有 Unity 的 AsyncOperations 和 Coroutines 可等待 基于 PlayerLoop 的任务( UniTask.Yield, UniTask.Delay, UniTask.DelayFrame, etc…) 可以替换所有协程操作 对MonoBehaviour 消息事件和 uGUI 事件进行 可等待/异步枚举 拓展 完全在 Unity 的 PlayerLoop 上运行,因此不使用Thread,并且同样能在 WebGL、wasm 等平台上运行。 带有 Channel 和 AsyncReactiveProperty的异步 LINQ, 提供一个 TaskTracker EditorWindow 以追踪所有UniTask分配来预防内存泄漏 与原生 Task/ValueTask/IValueTaskSource 高度兼容的行为 有关技术细节,请参阅博客文章:UniTask ...