平面电商网站建设东莞企业营销型网站策划

news/2025/9/27 11:35:39/文章来源:
平面电商网站建设,东莞企业营销型网站策划,泉州关键词排名推广,蚌埠最新通告今天一#xff0e;代码规范和建议 避免Update LateUpdate等函数内频繁的GC Alloc#xff0c;避免在Update和LateUpdate内有以下操作#xff1a; 调用GetComponet() 调用FindObjectsOfType() 使用GameObject.Tag和GameObject.Name 等等其他有堆内存分配的操作 避免频繁调用T…一代码规范和建议 避免Update LateUpdate等函数内频繁的GC Alloc避免在Update和LateUpdate内有以下操作 调用GetComponet() 调用FindObjectsOfType() 使用GameObject.Tag和GameObject.Name 等等其他有堆内存分配的操作 避免频繁调用ToString分配内存 避免OnGUI的调用 禁止使用Debug.Log打印log用框架中的LogManager统一管理 避免使用枚举或struct做key进行字典查找除非使用定制的comparer他们的GetHashCode都有装箱操作,每次调用TryGetValue查找都会有内存分配. 在使用协程时尽量复用WaitXXX对象而不是每次分配 频繁创建和更新的字符串尽量缓存比如CD时间等 尽量避免dict.Values操作直接遍历取Values即可 使用CompareTag代替GameObject.Tag 用RayCastNoAlloc替换RayCastAll 用yield return null 代替 yield reture 0 如果文件中不需要Update或Start函数等删掉对应的空函数 尽量少用lambda创建带upvalue的lambda对象会产生124B的GC禁止在Update或for循环中使用 使用数组的数组而不是多维数组。如int[i][j]的数组的数代替int[i,j]的多维数组 尽可能避免使用携程 禁止使用接受字符串参数的GetComponent等类似函数的重载方法使用泛型类型的 代码中需要访问到 Transform 组件的位置数据时, 尽可能使用 localPosition 代替对 position 属性的访问. localPosition存储在transform中访问该值时Unity会直接将其返回而position在每次访问时都会重新计算如果要经常获取position可以将其缓存起来。 避免使用LINQ表达式部分功能无法在某些平台上使用会分配大量GC Alloc。 禁止高频的字符串拼接. 如无法避免, 必须使用 StringBuilder 代替 操作符进行字符串拼接. Delegate 回调方法必须适时的解除注册, 否则回调方法所属的对象会一直有引用计数, 继而引起该对象所引用的资源无法得到释放. 尽量避免使用 Reflection(反射). 尽量避免使用可变参数(param object[] args), 避免装箱拆箱. 简单条件判断尽量使用三目运算符: b?x:y. 注意 List 等容器常用接口的复杂度, 尽量从尾部移除/批量移除(RemoveRange)等. 在频繁查询数据列表时, 建议使用 HashSet/HashTable 查找时间复杂度低的数据结构, 避免使用 List. 尽可能为快速产生和消灭的大量对象建立缓冲池. 尽可能将类或函数声明为 sealed, IL2CPP 会对 sealed 的类或函数进行优化, 变虚函数调用为直接函数调用. 尽量减少new的次数,预分配/成员变量替代临时new变量等. 最快的空串比较方法最快的方法是str.Length 0其次是str String.Empty或str 注C#在编译时会将程序集中声明的所有字符串常量放到保留池中intern pool相同常量不会重复分配。(指的是这个) 减少Find方法使用。Find()方法会遍历内存中的每个GameObject和组件随着项目规模的扩张它的开销将会越来越大。不要频繁的使用Find()和与其类似的方法可以考虑在Inspector中设置对对象的引用或者创建一个专门用于管理需要搜索的对象的引用的脚本。 避免使用Camera.main。 Camera.main 因此遭遇了和 Find() 一样的问题:在内存中搜索了所有的 GameObjects 和 Components这个使用可能会消耗大。 尝试使用sqrMagnitude即magnitude的平方替代magnitude减少开平方操作。 尽量少用模运算和除法运算比如a/5f要写成a*0.2f。 尽量避免在运行时为Transforms重新设置parent。Unity对于在同一个parent下的所有Transforms内存排布是连续的类似动态数组运行时重新设置parent可能会导致数组重新分配 变量和字段如果可以声明为const应该总是被声明为const如果无法使用const尝试使用readonly 二其他规范和建议 禁止非图集贴图资源不合理的留白. 会影响 UGUI 运行时自动合批. 资源设置 UI 的贴图资源禁止勾选 Generate Mip Maps. 禁止使用修改 Alpha 值的方式来隐藏界面. 尽可能降低 Release 版中图集留白, 提高贴图利用率. 建议同一 Canvas 中使用到的图集数量控制在三个以内. 建立合理规划公共图集. 在内存占用/加载频度/引用复杂度之间确定合理的平衡点. 禁止匿名 GrabPass. 如需使用到 GrabPass 必须命名并尽可能复用. Shader中尽可能减少多 Pass 渲染, 除非必须这么做. 尽可能降低 Release 版中 Shader 中的 Keyword 数量. 尽可能降低 SkinnedMeshRenderer 组件数量. 禁止逐帧直接使用名称对 Shader Uniform 量进行更新 尽量避免在 Shader 中使用复杂的计算如: pow/sin/cos/tan/log 等. 建议在 Shader 中采用预混合或实时混合纹理的方式代替实时地多次纹理采样 移动平台的 Shader 编码一定要考虑数据精度(float/half/fixed)的合理使用. 应尽可能减少每帧 Material.GetXX/Material.SetXX的次数, 比如把多个 uniform half 变量合并为 uniform half4. 尽可能避免将 Animator 的 Culling Mode 属性设置为 Always, 对于不使用 RootMotion 的项目建议选择 CullCompletely. 尽可能避免使用物理引擎. 建议自行编码模拟物理效果 使用物理模块的游戏, 建议在 PhysicsManager 中设置矩阵, 会有较大的性能提升 如使用第三方音频插件, 需禁用 FMOD 模块(Edit - Project Settings - Audio - Disable - UnityAudio). 若不需要立体音效, 音频导入设置需勾选 Force to Mono(注: 制作音频时就应该制作单通道的.) 音频格式: iOS平台一般使用 mp3, Android平台一般使用 ogg. 无需由逻辑代码访问的渲染资源禁止勾选 Read/Write Enabled, 如网格和图片. 导入蒙皮网格模型时建议勾选 Optimize GameObject 优化选项, 可极大地降低骨骼层次复杂度, 优化 CPU 性能. 无动作模型资源必须将 Animation Type 设置为 None, 否则会导致游戏对象挂在不必要的动画脚本, 大量的话会严重影响 CPU 性能. 导入的模型如果无需用到法线和切线, 必须将导入设置的 Normals 和 Tangents 选项设置为 None. 导入的模型如果无需参与Unity Lightmap 烘焙, 必须将导入设置的 Generate Lightmap UVs 选项设置为 None. 禁止在 Release 版中存在任何 OnGUI 相关代码 禁止在 Release 版中存在任何日常调试相关的 UnityEngine.DeBug 类日志输出 禁止在 Release 版中开启 Development Build 和 Script Debugging 选项 在发布时必须将游戏锁定至合适的帧率(建议 30/60 帧) 禁止在 Release 版中使用引擎提供的 SendMessage 方法.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/919406.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一个空间可以放两个网站吗简历怎么制作网站

GPADC 模块介绍 GPADC 是 12bit 采集精度的模数转换模块,支持 4 路通道,模拟输入范围 0-1.8v,最高采样率 1MHZ,并且支持数据比较,自校验功能,同时工作于可配置的四种工作模式: Single mode&a…

java学习 2025-9-27

📅 学习日志 2025-9-27 Java注释单行注释:// comment多行注释:/* * comment1 * comment2 */文档注释:/** * comment1 * comment2 */阿弥陀佛:数据类型String:(似乎不是数据类型而是类,类似还有Byte等)大小写…

揭秘JUC:volatile与CAS,并发编程的两大基石

揭秘JUC:volatile与CAS,并发编程的两大基石JUC(java.util.concurrent)并发包,作为Java语言并发编程的利器,由并发编程领域的泰斗道格利(Doug Lea)精心打造。它提供了一系列高效、线程安全的工具类、接口及原子…

题解:P11667 [USACO25JAN] Astral Superposition B

题解:P11667 [USACO25JAN] Astral Superposition B 发一篇之前在luogu上没发出去的题解(考USACO时的考场思路+代码) 题意理解每颗星星要么消失,要么向右移动 A 像素,并且向下移动 B 像素 (0≤A,B≤N)也就是行(…

【项目实战 Day7】springboot + vue 苍穹外卖架构(微信小程序 + 微信登录模块 完结)

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

深入解析:Pytorch框架笔记

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

网站建设服务标准ui网页界面设计素材

文章目录 一、stack的使用1.stack的介绍2.stack的使用 二、queue的使用1.queue的护额晒2.queue的使用 三、stack和queue相关算法题1.最小栈2.栈的压入、弹出序列3.逆波兰表达式4.两个栈实现一个队列5.用两个队列实现栈6.二叉树的层序遍历1.双队列2.用一个变量levelSize去控制 7…

北极通讯网络题解(做题记录)

北极通讯网络题解(做题记录) 前言 本文以一道 Kruskal 的好题实例来讲一下 Kruskal 的过程,对于初学 Kruskal 的OIer们有很大的帮助。 luogu 相似题:P1991 无线通讯网。 题目简述 有 n 座村庄,每座村庄的坐标用一对…

如何在局域网中做网站wordpress怎样发布时间

SpringMVC 的入门 1环境搭建 1.1.创建工程 1.2.添加web支持 右键项目选择Add framework support... 2.添加web支持 ​ 3.效果 注意&#xff1a; 不要先添加打包方式将web目录要拖拽到main目录下&#xff0c;并改名为webapp 1.3.pom.xml <?xml version"1.0&q…

elasticsearch安装插件 - 实践

elasticsearch安装插件 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco"…

个人学习——前端react项目框架

文件作用 package.json npm脚本部分"scripts" 项目启动与打包"dev": "vite" 启动 开发环境,开启本地服务器,支持热更新。 用法:npm run dev "build": "tsc &&…

软件基础第一次作业

这个作业属于哪个课程 https://edu.cnblogs.com/campus/zjlg/25rjjc这个作业的目标 对自我进行分析和评估,了解博客使用方法,说明对课程的想法姓名-学号 林子渊 2023333503079自我介绍: 我叫林子渊,来自 23 自动化…

网站建设7个基本流程分析统一门户登录

一、简述 这里的代码主要是基于图像的推荐系统,该系统利用 ResNet-50 深度学习模型作为特征提取器,并采用余弦相似度来查找给定输入图像的最相似嵌入。 该系统旨在根据所提供图像的视觉内容为用户提供个性化推荐。 二、所需环境 Python 3.x tensorflow ==2.5.0 numpy==1.21.…

.net商城网站模板下载宁乡电商网站建设收费

title: URL编码&#xff1a;原理、应用与安全性 date: 2024/3/29 18:32:42 updated: 2024/3/29 18:32:42 tags: URL编码百分号编码特殊字符处理网络安全应用场景标准演变未来发展 在网络世界中&#xff0c;URL&#xff08;统一资源定位符&#xff09;是我们访问网页、发送请求…

LGP9755 [CSP-S 2023] 种树 学习笔记

LGP9755 [CSP-S 2023] 种树 学习笔记 Luogu Link 前言 故地重游。 巧合的是,上次写这道题刚好是在去年的九月二十七日,整整一年前。 题意简述 给定一个 \(n\) 个点,\(n-1\) 条边的简单无向连通图。好吧,这片地本身…

7、revision 是 Maven 3.5+ 引入的现代版本管理机制 - 实践

7、revision 是 Maven 3.5+ 引入的现代版本管理机制 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consol…

P1731 生日蛋糕 做题记录

洛谷P1731 生日蛋糕 做题记录 题意简述 一个生日蛋糕由几个圆柱体组成,每个圆柱体的底面半径和高从下到上严格递减,现给出蛋糕的体积 N pi 以及层数 M,试求蛋糕的最小表面积。 思路速通 基本为 DFS ,对于每层的半径…

详细介绍:【MySQL】MySQL数据库入门指南

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

如何有效提升代码覆盖率:从单元测试到集成测试的实践指南

Go语言代码覆盖率实现 一、什么是代码覆盖率代码覆盖率是软件测试中的一种白盒测试度量指标,表示程序源代码中被执行的比例。简单来说,就是“我的测试到底跑过多少代码”。 覆盖率常见的几种标准:语句覆盖(段覆盖、…

深入解析:SSM网络游戏交易系统a9n72(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面

深入解析:SSM网络游戏交易系统a9n72(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto …