Unity性能优化的N种武器

 

贴图

l  控制贴图大小,尽量不要超过 1024 x1024;

l  尽量使用2的n次幂大小的贴图,否则GfxDriver里会有2份贴图;

l  尽量使用压缩格式减小贴图大小;

l  若干种贴图合并技术;

l  去除多余的alpha通道;

l  不同设备使用不同的纹理贴图,分层显示;

 

模型

l  尽量控制模型的面数,小于1500会比较合适;

l  不同设备使用不同的模型面数;

l  尽量保持在30根骨骼内;

l  一个网格不要超过3个material;

 

动画

l  N种动画压缩方法;

l  尽量减少骨骼数量;

 

声音

l  采用压缩MP3 和 wav;

 

资源方面的优化

l  使用 Resource.Load 方法在需要的时候再读取资源;

l  各种资源在使用完成后,尽快用Resource.UnloadAsset和UnloadUnusedAsset卸载掉;

l  灵活运用AssetBundle的Load和Unload方法动态加载资源,避免主要场景内的初始化内存占用过高;(实现起来真的很难…)

l  采用www加载了AssetBundle后,要用www.Dispose 及时释放;

l  在关卡内谨慎使用DontDestroyOnLoad,被标注的资源会常驻内存;

 

代码的优化

l  尽量避免代码中的任何字符串连接,因为这会给GC带来太多垃圾;

l  用简单的“for”循环代替“foreach”循环;

l  为所有游戏内的动态物体使用内存对象池,可以减少系统开销和内存碎片,复用对象实例,构建自己的内存管理模式,减少Instantiate和Destory;

l  尽量不使用LINQ命令,因为它们一般会分配中间缓器,而这很容易生成垃圾内存;

l  将引用本地缓存到元件中会减少每次在一个游戏对象中使用 “GetComponent” 获取一个元件引用的需求;

l  减少角色控制器移动命令的调用。移动角色控制器会同步发生,每次调用都会耗损较大的性能;

l  最小化碰撞检测请求(例如ray casts和sphere checks),尽量从每次检查中获得更多信息;

l  AI逻辑通常会生成大量物理查询,建议让AI更新循环设置低于图像更新循环,以减少CPU负荷;

l  要尽量减少Unity回调函数,哪怕是空函数也不要留着;(例如空的Update、FixedUpdate函数)

l  尽量少使用FindObjectsOfType函数,这个函数非常慢,尽量少用且一定不要在Update里调用;

l  千万一定要控制mono堆内存的大小;

 

摘自《腾讯大咖说:腾讯是如何做Unity手游性能优化的》

原文地址:http://wetest.qq.com/lab/view/108.html

转载于:https://www.cnblogs.com/fws94/p/6367471.html

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

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

相关文章

cmd控制屏幕光标_电脑控制手机?上班时间愉快尽情地玩手机吧!它值得您拥有!...

在现今时代,手机已成为人们必不可少的工具,有的时候甚至可以说手机比电脑方便好用多了,例如某些实用的APP软件就只有手机端并没有电脑端,想使用的话就得整天捧着手机盯着不放。但别忘记,我们大多数都是打工族&#xff…

xp系统设置锁定计算机,系统锁定时不关机的诀窍 给XP系统关闭计算机再加一把锁...

很多用户抱怨在使用电脑的过程中,总是经常会被琐碎的事情打断,有时候难免暂时离开电脑,处于便利和资料安全,我们往往会按下“WindowsL”来锁定计算机。这样,操作方便同时又能阻止他人乱动我们的计算机。但是如果遇到好…

ACM题目————中位数

题目描述 长为L的升序序列S,S[L / 2]为其中位数。 给出两个等长升序序列S1和S2,求两序列合并并排序后的中位数。 输入 多组数据,每组第一行为n,表示两个等长升序序列的长度。 接下来n行为升序序列S1的元素,再接下来n行…

Regular Exprassion--正则表达式基础

正则表达式: 强大灵活的文本处理工具 语法: 普通字符 转义字符 \ , \t , \n , \\ 标准字符集合(大写代表相反的意思) \d 任意一个数字 \w 任意一个字母、数字、下划线 \s 空白符&#xff…

使用ReportNG更好看的TestNG HTML测试报告– Maven指南

当“扩展TestCase”是编写测试中必不可少的一部分时, TestNG是作为JUnit 3的注释驱动替代创建的测试框架。 即使现在,它也提供了一些有趣的功能,例如数据提供程序,并行测试或测试组。 在我们的测试不是从IDE执行的情况下&#xff…

gitee项目404问题_七款开源项目,让你数据库管理不再成为一个问题

在开发过程中,数据库是必不可少的一环,但大多数情况下开发者们还是在用命令行来管理数据库。虽然在外人看起来输入一行行代码非常的酷炫,但其中的繁琐可能也只有开发者知道。七款开源项目,让你数据库管理不再成为一个问题今天 Git…

vb 窗体html表格,VB.Net – 高级表格

在本章中,让我们研究以下概念 :在应用程序中添加菜单和子菜单在表单中添加剪切,复制和粘贴功能锚定和对接控件表格模态表格添加菜单和子菜单应用程序中的菜单传统上,菜单,MainMenu,ContextMenu和MenuItem类用于在Windo…

SpringMVC后台接收list类型的数据的实现方式

一、背景 最近在做一些东西的时候&#xff0c;遇到一个需要Springmvc后台接收list类型数据的需求&#xff0c;几经辗转才完美解决了这个问题&#xff0c;今天记下来方便以后使用&#xff0c;也分享给需要的小伙伴们~ 二、实现方式 实现方式一 前端页面 1 <% page language&q…

Maven集成测试和Spring Restful Services

介绍 我的原始博客通过一个非常简单的示例展示了如何分离Maven单元和集成测试。 http://johndobie.blogspot.com/2011/06/seperating-maven-unit-integration-tests.html此后&#xff0c;许多人要求我提供比最初使用的示例更实际的示例。 这篇文章展示了如何在实际环境中&#…

玩cf出现outofmemory_CF画质粗糙平衡感人,却能历经十年经久不衰,靠的是什么?...

Hello大家好&#xff0c;我是沐辰。《穿越火线》这款游戏国内运营时间已长达十年&#xff0c;从最早接触这款游戏开始&#xff0c;很多玩家都在这里烙刻下了许多关于青春的回忆。CF的许多问题一直颇受诟病&#xff0c;例如落后且粗糙的画质、英雄级武器与平民武器的巨大差距、千…

jquery遍历ajax返回的json数据

我们以前在前端遍历ajax拿到的数据一般都是用for或其他方式遍历&#xff0c;这样做麻烦且费事&#xff0c;效率不高&#xff0c;下面提供一个函数&#xff0c;只需调用函数即可把数据遍历出来&#xff0c;方便高效。 html代码&#xff1a; <html> <head><script…

Apache JMeter:随心所欲进行负载测试

这是有关使用Apache JMeter进行负载测试的第二篇文章&#xff0c;请在此处阅读第一篇文章&#xff1a; 有关对关系数据库进行负载测试的分步教程。 JMeter有很多采样器 。 如果您需要JMeter不提供的采样器&#xff0c;则可以编写自定义采样器。 &#xff08;自定义采样器在JMet…

html5历史管理

在网易云课堂上看了妙味课堂的关于html5历史管理的课程&#xff0c;在这里做一下笔记。 单页面或ajax局部刷新的页面中&#xff0c;没有办法通过前一步和后一步得到历史访问数据&#xff0c;此时有两种方法可以解决这个问题&#xff1a; 1.onhashchange事件&#xff0c;示例代码…

elementui下拉框 清空_巧妙解决element-ui下拉框选项过多的问题

1. 场景描述不知道你有没有这样的经历&#xff0c;下拉框的选项很多&#xff0c;上万个选项甚至更多&#xff0c;这个时候如果全部把数据放到下拉框中渲染出来&#xff0c;浏览器会卡死&#xff0c;体验会特别不好用人会说element-ui的select有一个remote-method&#xff0c;支…

致敬词

见义勇为致敬词 面对灾难和死神&#xff0c;你们大义凛然、知险而上&#xff0c;把平安和生机留给他人&#xff0c;把困难和危险留给自己。巍巍乎高山景行&#xff0c;铮铮然铁骨侠风&#xff1b;壮志谱传奇&#xff0c;热血写春秋。你们是&#xff1a;百姓英雄&#xff0c;平安…

MOXy作为您的JAX-RS JSON提供程序–客户端

最近&#xff0c;我发布了如何利用EclipseLink JAXB&#xff08;MOXy&#xff09;的JSON绑定来创建RESTful服务。 在本文中&#xff0c;我将演示在客户端利用MOXy的JSON绑定有多么容易。 MOXy作为您的JAX-RS JSON提供程序–服务器端 MOXy作为您的JAX-RS JSON提供程序–客户端 …

经常使用计算机的孩子,常玩电脑对孩子负面影响大,家长们不容小觑!

相信不少的家庭都会备有电脑&#xff0c;人们在网络世界里面能够找到自己需要的东西。不仅是大人喜欢玩电脑&#xff0c;小孩也喜欢玩电脑。然而常玩电脑对孩子负面影响大吗&#xff1f;有多大&#xff1f;一、行为问题全国青少年教育协会指出&#xff0c;5岁以下的使用电脑的孩…

基于SpringBoot的养老院管理系统

文章目录 项目介绍主要功能截图:部分代码展示设计总结项目获取方式🍅 作者主页:超级无敌暴龙战士塔塔开 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关注我,都给你】 🍅文末获取源码联系🍅 项目介绍 基于SpringBoot的养老院管理系统,java项…

外呼机器人起名_智能外呼机器人,目前都有哪些公司做产品?

做智能外呼机器人的企业现在已经挺多了&#xff0c;比如各个答案中提到的各家的产品。它的市场认可度也比较高&#xff0c;大家都知道它能用于通知、回访、问卷调查、营销等业务场景。外呼机器人的价值很好衡量&#xff0c;用了外呼机器人后&#xff0c;能给企业赚多少钱&#…

VMware下ubuntu与Windows实现文件共享的方法

最近安装caffe需要将Windows下文件拷贝到ubuntu16.04下&#xff0c;就进行了共享文件夹的设置&#xff0c;期间遇到一些困难&#xff0c;记录下来&#xff0c;方便以后遇到此类问题不再困惑。 &#xff08;记录只为更好的分享&#xff09; 言归正传&#xff1a; 1、首先需要在u…