instancing技(ji)�g允�S大(da)量一(yi)�拥奈矬w十(shi)分高效(xiao)的合�K�理。(you)�蛟�(zai)�鼍爸型��r存在(zai)大(da)量相同的物�w,我��qiang)ke)以在(zai)�@(zhe)��技(ji)�g下(xia)收益(yi)。instancing的技(ji)�g��以及怎�邮�(shi)用(yong)它,支持哪(na)些平台,以及在(zai)哪(na)�N�h境(jing)下(xia),我��的游(you)���受(shou)益(yi)于(yu)此。yi)��大(da)的�yping)�嫉募ji)�g。它通常在(zai)2d游(you)�蚝�UI系�y中使(shi)用(yong),但是也可(ke)以在(zai)3d游(you)�蛑惺�(shi)用(yong)。yin)此�m合合�K。�[屎臀�u(ping)淼耐ge),不�是在(zai)Unity�(bian)�(ji)器(qi)中�是在(zai)�\行�r使(shi)用(yong)代�a。��我��手zhi)?喜?ge)�r,我��必�意�R(shi)到,�影,光照和剔除仍然在(zai)每(mei)���为�的物�w��(ceng)�上操作。吹�习��di)消(xiao)。package中的CombineChildren�_本是一(yi)��例子。-在(zai)�_本中,我��必�小心(xin)使(shi)用(yong)Renderer.material,�@(zhe)���椭�(zhi)材�|,�K且返回一(yi)��新副(fu)本的引用(yong)。�@(zhe)�幼��破��batching,如果�@(zhe)是合�K中的一(yi)部分。�Q��zhi)的物�w的��(shu)��,排序(xu)�@(zhe)些��(shu)��,生成GPU命令(ling),�@(zhe)些都��CPU限制(zhi)有��I。\行,取�Q于(yu)我��游(you)�虻脑O置(zhi)以及目�擞布�(jian)。qian)猿【爸忻mei)��激活的物�w,每(mei)���z(she)像�C每(mei)��物�w的�(ji)算,甚至(zhi)是哪(na)些不被渲染的��(ceng)�的物�w。�榱私�(jiang)dang)�zhe)些,我������P�]�z(she)像�C,�K且�τ�(yu)��前an)皇shi)用(yong)的物�w反激活或者禁用(yong)renderer。-Batching可(ke)以�O大(da)的增加向GPU�l(fa)送命令(ling)的速度,但是他有�r可(ke)能��在(zai)其他地方��硐�(xiao)耗。SkinnedMeshRenderers在(zai)��我��使(shi)用(yong)一(yi)���W格(ge)�赢��形�r(技(ji)�g上�Q�楣趋�赢�)使(shi)用(yong)。依�于(yu)游(you)�虻脑O置(zhi)以及目�擞布�(jian)。qiang)ke)以�L(chang)�去改�M它的性能。-我�����mei)kao)�]��前正在(zai)使(shi)用(yong)SkinnedMeshRenderers�M件(jian)的物�w是否有必要使(shi)用(yong)。(han)一(yi)��MeshRenderer�M件(jian)替biao)kinnedMeshRenderers�M件(jian)。-如果我��只在(zai)一(yi)些�r刻�\�游矬w(例如,只在(zai)游(you)�蜷_始�r,或者只有距�x�z(she)像�C一(yi)定(ding)距�x��r),我�����交(jiao)�Q�橐�(yi)�����^(jiao)少的�W格(ge),或者使(shi)用(yong)MeshRenderer替biao)kinnedMeshRenderers。SkinnedMeshRenderers�M件(jian)有一(yi)��函��(shu)BakeMesh,可(ke)以用(yong)匹配(pei)的�幼��建一(yi)���W格(ge),�@(zhe)��十(shi)分有用(yong),在(zai)不同的�W格(ge)或渲染器(qi)中切�Q�r物�w不��有可(ke)�的�化。GPU比(bi)�^(jiao)��(qiang),�@(zhe)��值dang)�Qchang)�。o�P的很(hen)重要。(you)�蚴�GPU限制(zhi),那�N第一(yi)件(jian)事就是找到GPU瓶�i的原因(yin)。(chong)率是指GPU在(zai)屏幕上每(mei)秒可(ke)以渲染的像素��(shu)。如果我��的游(you)�蚴盏教畛�(chong)率shi)南拗zhi),意味著我��的游(you)�蛎�(mei)���L(chang)��L制(zhi)的像素��(shu)量超�^了GPU的�理能力。很(hen)可(ke)能是填充(chong)率shi)奈侍/p>如果�_�J了填充(chong)率引起了���},有���方法可(ke)以解�Q���}�U-片(pian)元(yuan)shader是告�VGPU怎�N�尤ダL制(zhi)一(yi)��像素的一(yi)段(duan)shader代�a。敲春hen)容易�l(fa)生性能���}。-如果我��的游(you)�蚴�(shi)用(yong)Unity�戎�(zhi)shader,我�����使(shi)用(yong)最��魏妥��(you)化的shader,�榱诉_到我��想(xiang)要的��X效(xiao)率。shaders是Unity��σ�(yi)�悠教ǜ叨��(you)化的shader,我�������(shi)�(yan)使(shi)用(yong)它��是否可(ke)以在(zai)不影���X效(xiao)果的前提下(xia)改善性能。�@(zhe)些shader是�榱艘�(yi)�悠教ㄔO�(ji)的,但是它��也�m用(yong)于(yu)任何�目。(hen)好的改善性能的。Shader,那�N理解Unity�(bian)�g�@(zhe)些shader是基于(yu)��前的材�|�O置(zhi)的是很(hen)重要的。有xin)切┐鼻笆shi)用(yong)的功能��被�(bian)�g。maps可(ke)以�p少片(pian)元(yuan)shader的�碗s度,�@(zhe)�π阅芴嵘�有很(hen)大(da)益(yi)�。-如果我��游(you)�蚴�(shi)用(yong)的是qian)ding)制(zhi)的shader,我������M(jin)可(ke)能的��(you)化它。-Overdraw是指相同的像素�L制(zhi)了多次(ci)。死斫verdraw,我��必�先理解Unity在(zai)�鼍爸欣L制(zhi)物�w的�序(xu)。queue�傩�Q定(ding)。queue的物�w在(zai)被�L制(zhi)之(zhi)前��按(an)不同的�序(xu)排序(xu)。queue中,�榱诉_到��X效(xiao)果的要求(qiu),�t是�尼岬角芭判�(xu)物�w。queue中,�尼嵯蚯芭判�(xu)物�w其��(shi)最大(da)化了Overdraw。判xu)是�P�I。Overdraw的因(yin)素是透明(ming)材�|,未(wei)��(you)化的粒子,和重�B的UI元(yuan)素。所(suo)以我������L(chang)���(you)化�@(zhe)些。(Optimized)替biao)loom。