[{"data":1,"prerenderedAt":1169},["ShallowReactive",2],{"\u002F2015-06-30-ue4-particle-basics":3},{"id":4,"title":5,"body":6,"date":1145,"description":12,"extension":1146,"meta":1147,"navigation":1150,"path":1162,"seo":1163,"stem":1164,"tags":1165,"__hash__":1168},"blogs\u002F_legacy\u002F2015\u002F2015-06-30-ue4-particle-basics.md","UE4粒子系统基础属性整理",{"type":7,"value":8,"toc":1134},"minimark",[9,13,16,19,30,33,38,41,47,53,56,61,64,69,72,77,80,85,88,93,96,101,104,109,112,117,120,125,128,133,136,141,144,149,152,155,162,167,170,174,177,182,185,190,198,203,206,211,214,219,222,227,230,235,238,243,246,251,256,259,263,266,271,276,279,284,287,292,295,300,303,308,311,316,319,324,327,332,335,340,343,347,350,354,359,362,367,370,374,377,382,385,388,392,395,400,403,408,411,416,419,424,427,432,435,501,506,509,514,517,522,525,530,533,584,589,592,597,600,605,608,613,616,621,624,629,636,641,644,649,652,656,661,664,669,672,677,683,688,691,696,703,708,711,763,768,771,776,779,784,787,792,795,799,802,807,812,815,820,823,828,831,899,904,909,912,948,953,956,961,963,968,971,974,978,981,985,990,993,998,1001,1006,1009,1014,1017,1022,1025,1030,1033,1061,1066,1069,1105,1110,1113,1118,1121,1125,1128,1131],[10,11,12],"p",{},"要在游戏中实现炫丽的特效，最有效的方法之一就是使用粒子系统。",[10,14,15],{},"当前UE4版本为4.8.1。",[10,17,18],{},"UE4拥有一个非常强大的模块化粒子系统编辑器，名为Cascade。",[10,20,21,22,29],{},"与通用的粒子系统设计一样，UE4的粒子系统由发射器产生粒子，并通过设置发射器和粒子的属性来实现不同的效果。在一个单一的粒子系统中，UE4可以同时添加多个发射器，通过组合可以实现非常炫丽的效果。在编辑器中，发射器的计算顺序是从左到右的，而模块的运算顺序是从上到下的。UE4的粒子系统同时支持LOD，以有效的控制粒子在场景中对运算量的消耗。系统中粒子也可以接收光照，只要使用材质时进行设定即可。当前文档中关于LOD上的bLit标签是有问题的，可参照",[23,24,28],"a",{"href":25,"rel":26},"https:\u002F\u002Fanswers.unrealengine.com\u002Fquestions\u002F44995\u002Fwhere-is-blit-in-cascade.html",[27],"nofollow","AnswerHub","。",[10,31,32],{},"和其他UE4的部分一样，大部分的属性都非常的易懂。但是将文档过一遍是很有必要的，这样才能知道系统都提供哪些功能，哪些是系统做不到的。",[34,35,37],"h3",{"id":36},"particle-system-class","Particle System Class",[10,39,40],{},"粒子系统本身的属性，点击没有发射器的空白处就会出现。",[10,42,43],{},[44,45,46],"em",{},"Particle System",[10,48,49],{},[50,51,52],"strong",{},"System Update Mode",[10,54,55],{},"粒子系统的更新模式，分为实时和固定两种，通常情况下使用实时即可。",[10,57,58],{},[50,59,60],{},"Update Time_FPS",[10,62,63],{},"固定时间模式下的步长设定。",[10,65,66],{},[50,67,68],{},"Warmup Time",[10,70,71],{},"预热时间。粒子系统初始时应该处于的时间，通常用于雾气等环境效果，保证游戏开始时粒子系统就处于完整的状态。会消耗一定的运算量。",[10,73,74],{},[50,75,76],{},"Warmup Tick Rate",[10,78,79],{},"系统预热步长。越低的数值精度越高，相反的，提高这个数值就能降低运算量消耗。0代表默认步长。",[10,81,82],{},[50,83,84],{},"Orient ZAxis Toward Camera",[10,86,87],{},"将粒子的Z轴锁定到摄像机。",[10,89,90],{},[50,91,92],{},"Seconds Before Inactive",[10,94,95],{},"当粒子系统不再被渲染时，经过多长时间才停止运算，0代表不停止。",[10,97,98],{},[44,99,100],{},"Thumbnail",[10,102,103],{},"内容浏览器的缩略图用属性，没有什么特别值得关注的地方。",[10,105,106],{},[44,107,108],{},"LOD",[10,110,111],{},"粒子系统的LOD相关属性。",[10,113,114],{},[50,115,116],{},"LOD Distance Check Time",[10,118,119],{},"检查粒子系统的距离的时间间隔，只有当LOD Method设定为自动时才起作用，用于自动切换LOD的显示。",[10,121,122],{},[50,123,124],{},"LOD Method",[10,126,127],{},"LOD的切换方式。Automatic为自动由距离决定，DirectSet为由代码进行调整，ActivateAutomatic为系统初始化时进行一次判定之后交由代码自行调整。",[10,129,130],{},[50,131,132],{},"LOD Distances",[10,134,135],{},"LOD级别的距离范围设定，每个数值代表当前等级的最大距离。",[10,137,138],{},[50,139,140],{},"LOD Settings",[10,142,143],{},"如开头所描述，由于当前Lit属性似乎不可用，这个属性当前也没有意义。",[10,145,146],{},[44,147,148],{},"Bounds",[10,150,151],{},"通过开关控制的边界盒体，由此决定当粒子不在视野中时不再对粒子系统进行运算，以降低系统消耗。",[10,153,154],{},"直接点击上方工具栏的『设置固定边界』，就会自动生成一个，然后在属性中可以手动进行微调。",[10,156,157],{},[158,159],"img",{"alt":160,"src":161},"image","\u002Fwp-content\u002Fuploads\u002F2015\u002F06\u002Fimage_thumb4.png",[10,163,164],{},[44,165,166],{},"Delay",[10,168,169],{},"延迟，设置在调用ActivateSystem之后粒子系统延迟激活的时间。",[10,171,172],{},[50,173,166],{},[10,175,176],{},"延迟的时间。",[10,178,179],{},[50,180,181],{},"Delay Low",[10,183,184],{},"延迟的下限时间，需要下面的范围开关启动。",[10,186,187],{},[50,188,189],{},"Use Delay Range",[10,191,192,193,197],{},"延迟范围开关。打开之后延迟将会在",[194,195,196],"span",{},"Delay Low ~ Delay","之间进行随机。",[10,199,200],{},[44,201,202],{},"Macro UV",[10,204,205],{},"中文名称不明。该UV贴图坐标用于将一个贴图平铺在所有的粒子上。",[10,207,208],{},[50,209,210],{},"MacroUVPosition",[10,212,213],{},"决定整个UV平铺的中心。",[10,215,216],{},[50,217,218],{},"MacroUVRadius",[10,220,221],{},"决定UV平铺的半径。",[10,223,224],{},[44,225,226],{},"Occlusion",[10,228,229],{},"遮蔽。",[10,231,232],{},[50,233,234],{},"Occlusion Bounds Method",[10,236,237],{},"遮蔽边界方式。None为不启用遮蔽，Particle Bounds为使用粒子系统定义的边界，Custom Bounds为自定义遮蔽边界。",[10,239,240],{},[50,241,242],{},"Custom Occlusion Bounds",[10,244,245],{},"自定义边界，调整时可以在视口中看到预览。",[10,247,248],{},[44,249,250],{},"Materials",[10,252,253],{},[50,254,255],{},"Named Materia Slots",[10,257,258],{},"可暴露给外界蓝图使用的材质参数插槽。",[34,260,262],{"id":261},"particle-emitter-class","Particle Emitter Class",[10,264,265],{},"发射器的属性。",[10,267,268],{},[44,269,270],{},"Particle",[10,272,273],{},[50,274,275],{},"Emitter Name",[10,277,278],{},"发射器名称",[10,280,281],{},[50,282,283],{},"Initial Allocation Count",[10,285,286],{},"当这个值不为0时，发射器将采用这个数值作为初始化粒子发射数。",[10,288,289],{},[50,290,291],{},"Quality Level Spawn Rate Scale",[10,293,294],{},"显示质量设置缩放比例，决定当系统的视频设置较低时的缩放比例，用于降低系统消耗。",[10,296,297],{},[50,298,299],{},"Detail Mode",[10,301,302],{},"发射器的显示精度，当系统的显示精度低于这个设置时，这个发射器将不会工作。",[10,304,305],{},[50,306,307],{},"Disabled LODs Keep Emitter Alive",[10,309,310],{},"当LOD为禁止状态时仍然保持发射器为激活状态。",[10,312,313],{},[44,314,315],{},"Cascade",[10,317,318],{},"在编辑器中的显示设定。",[10,320,321],{},[50,322,323],{},"Emitter Render Mode",[10,325,326],{},"发射器的渲染模式。Normal为正常渲染，Point为近显示点，Cross为显示十字交叉线，Lights Only为仅光照，None为不显示。",[10,328,329],{},[50,330,331],{},"Emitter Editor Color",[10,333,334],{},"发射器在编辑器中的颜色。",[10,336,337],{},[50,338,339],{},"Collapsed",[10,341,342],{},"是否展开显示发射器。",[34,344,346],{"id":345},"particle-module-class","Particle Module Class",[10,348,349],{},"粒子模块的基类，提供一些通用的属性。",[10,351,352],{},[44,353,315],{},[10,355,356],{},[50,357,358],{},"3DDraw Mode",[10,360,361],{},"如果打开的话就会显示相应的辅助渲染信息。",[10,363,364],{},[50,365,366],{},"Module Editor Color",[10,368,369],{},"模块在编辑器中的颜色。",[34,371,373],{"id":372},"typedata-modules","TypeData Modules",[10,375,376],{},"发射器的类型。添加时为默认的类型，可以通过添加类型数据进行修改。",[10,378,379],{},[158,380],{"alt":160,"src":381},"\u002Fwp-content\u002Fuploads\u002F2015\u002F06\u002Fimage_thumb5.png",[10,383,384],{},"可以添加的类型一共有五种，能够实现不同类型的粒子效果。",[10,386,387],{},"除了TypeData之外，还有很多其他的模块。作为对粒子发射器的控制被添加到粒子发射器上，以实现不同的粒子效果。",[34,389,391],{"id":390},"required-module","Required Module",[10,393,394],{},"粒子发射器的一些基本属性在这个模块里进行设置。这个模块是必须的，无法手动删除。",[10,396,397],{},[44,398,399],{},"Emitter",[10,401,402],{},"发射器相关属性。",[10,404,405],{},[50,406,407],{},"Emitter Materia",[10,409,410],{},"粒子发射器发出的粒子所使用的材质。",[10,412,413],{},[50,414,415],{},"Emitter Origin",[10,417,418],{},"粒子发射器的发射起点。",[10,420,421],{},[50,422,423],{},"Emitter Rotation",[10,425,426],{},"发射粒子的初始旋转。",[10,428,429],{},[50,430,431],{},"Screen Alignment",[10,433,434],{},"粒子相对与摄像机的朝向。",[436,437,438,449],"table",{},[439,440,441],"thead",{},[442,443,444,447],"tr",{},[445,446],"th",{},[445,448],{},[450,451,452,461,469,477,485,493],"tbody",{},[442,453,454,458],{},[455,456,457],"td",{},"FacingCameraPosition",[455,459,460],{},"粒子旋转朝向摄像机位置（忽略摄像机选择）",[442,462,463,466],{},[455,464,465],{},"Square",[455,467,468],{},"面向相机，使用X轴进行统一缩放",[442,470,471,474],{},[455,472,473],{},"Rectangle",[455,475,476],{},"面向相机，非统一缩放",[442,478,479,482],{},[455,480,481],{},"Velocity",[455,483,484],{},"朝向摄像机和粒子自身的运动方向，运行非统一缩放",[442,486,487,490],{},[455,488,489],{},"Away From Center",[455,491,492],{},"背离中心方向",[442,494,495,498],{},[455,496,497],{},"TypeSpecific",[455,499,500],{},"使用TypeData中的定义（仅Mesh类型可用）",[10,502,503],{},[50,504,505],{},"Use Local Space",[10,507,508],{},"是否使用本地空间或是使用父节点的坐标变换。",[10,510,511],{},[50,512,513],{},"Kill on Deactivate",[10,515,516],{},"是否在非活动时销毁粒子。",[10,518,519],{},[50,520,521],{},"Kill on Completed",[10,523,524],{},"是否在执行完成时销毁自身。",[10,526,527],{},[50,528,529],{},"Sort Mode",[10,531,532],{},"排序模式。",[436,534,535,543],{},[439,536,537],{},[442,538,539,541],{},[445,540],{},[445,542],{},[450,544,545,553,561,569,577],{},[442,546,547,550],{},[455,548,549],{},"PSORTMODE_None",[455,551,552],{},"不进行排序",[442,554,555,558],{},[455,556,557],{},"PSORTMODE_ViewProjDepth",[455,559,560],{},"根据视图映射深度排序",[442,562,563,566],{},[455,564,565],{},"PSORTMODE_DistanceToView",[455,567,568],{},"根据粒子到摄像机的距离排序",[442,570,571,574],{},[455,572,573],{},"PSORTMODE_Age_OldestFirst",[455,575,576],{},"粒子的生存时间排序，最旧优先",[442,578,579,582],{},[455,580,581],{},"PSORTMODE_Age_NewestFirst",[455,583,576],{},[10,585,586],{},[50,587,588],{},"Use Legacy Emitter Time",[10,590,591],{},"是否使用传统发射计时。传统发射计时采用EmitterDuration和SecondsSinceCreation来计算发射器时间，在循环或是变化时间粒子系统中可能会遇到问题。当不使用时，会使用新方法，利用DeltaTime来进行计算。",[10,593,594],{},[50,595,596],{},"Orbit Module Affects Velocity Align",[10,598,599],{},"当开启时，环绕模块所产生的影响将会应用到速度屏幕对齐（Screen Alignment： Velocity）的粒子上。",[10,601,602],{},[44,603,604],{},"Duration",[10,606,607],{},"时间间隔，发射器开始循环之前的间隔时间。",[10,609,610],{},[50,611,612],{},"Emitter Duration",[10,614,615],{},"发射器进入循环前的间隔时间，为0则不循环。",[10,617,618],{},[50,619,620],{},"Emitter Duration Low",[10,622,623],{},"发射器间隔低值，需要下面的开关打开才有效。",[10,625,626],{},[50,627,628],{},"Emitter Duration Use Range",[10,630,631,632,635],{},"间隔时间范围开关。当打开时间隔时间将在",[194,633,634],{},"Emitter Duration~Emitter Duration Low","之间随机。",[10,637,638],{},[50,639,640],{},"Duration Recalc Each Loop",[10,642,643],{},"每一次循环完成后都会重新计算间隔时间",[10,645,646],{},[50,647,648],{},"Emitter Loops",[10,650,651],{},"发射器循环次数，为0则永久循环。",[10,653,654],{},[44,655,166],{},[10,657,658],{},[50,659,660],{},"Emitter Delay",[10,662,663],{},"延迟时间。与Duartion不同的是，Delay的期间发射器是不发射粒子的。",[10,665,666],{},[50,667,668],{},"Emitter Delay Low",[10,670,671],{},"延迟时间低值，需要下面的开关打开才有效。",[10,673,674],{},[50,675,676],{},"Emitter Delay Use Range",[10,678,679,680,635],{},"延迟范围开关。打开后延迟将会在",[194,681,682],{},"Emitter Delay~Emitter Delay Low",[10,684,685],{},[50,686,687],{},"Delay First Loop Only",[10,689,690],{},"仅在第一次循环前延迟",[10,692,693],{},[44,694,695],{},"Sub UV",[10,697,698,699,29],{},"Sub UV属性是针对Sub UV模块的，详情可以参考这里：",[23,700,702],{"href":701},"\u002F2015-07-01-ue4-particles-subuv-module\u002F","SubUV模块属性及应用",[10,704,705],{},[50,706,707],{},"Interpolation Method",[10,709,710],{},"插值方法。",[436,712,713,721],{},[439,714,715],{},[442,716,717,719],{},[445,718],{},[445,720],{},[450,722,723,731,739,747,755],{},[442,724,725,728],{},[455,726,727],{},"None",[455,729,730],{},"不在应用SubUV功能",[442,732,733,736],{},[455,734,735],{},"Linear(线性)",[455,737,738],{},"按照子图像顺序进行线性的过渡，但是与下一张图像不混合",[442,740,741,744],{},[455,742,743],{},"Linear_Blend (线性_混合)",[455,745,746],{},"按照子图像顺序进行线性的过渡，与下一张图像进行混合",[442,748,749,752],{},[455,750,751],{},"Random(随机)",[455,753,754],{},"下一张子图像随机的抽取，但是与下一张图像不混合",[442,756,757,760],{},[455,758,759],{},"Random_Blend(随机_混合)",[455,761,762],{},"下一张子图像随机的抽取，与下一张图像进行混合",[10,764,765],{},[50,766,767],{},"Sub Images Horizontal",[10,769,770],{},"贴图X轴上的子图像数量。",[10,772,773],{},[50,774,775],{},"Sub Images Vertical",[10,777,778],{},"贴图Y轴上的子图像数量。",[10,780,781],{},[50,782,783],{},"Scale UV",[10,785,786],{},"UV缩放的比例。",[10,788,789],{},[50,790,791],{},"Random Image Chagnes",[10,793,794],{},"粒子生命周期中随机图像的变换次数。",[10,796,797],{},[44,798,202],{},[10,800,801],{},"与粒子系统的Macro UV属性类似。",[10,803,804],{},[44,805,806],{},"Rendering",[10,808,809],{},[50,810,811],{},"Use Max Draw Count",[10,813,814],{},"是否使用最大绘制次数限制",[10,816,817],{},[50,818,819],{},"Max Draw Count",[10,821,822],{},"最大绘制次数的限定值",[10,824,825],{},[50,826,827],{},"UVFlipping Mode",[10,829,830],{},"所有粒子的UV翻转模式 。",[436,832,833,841],{},[439,834,835],{},[442,836,837,839],{},[445,838],{},[445,840],{},[450,842,843,851,859,867,875,883,891],{},[442,844,845,848],{},[455,846,847],{},"Flip UV",[455,849,850],{},"翻转UV",[442,852,853,856],{},[455,854,855],{},"Flip Uonly",[455,857,858],{},"翻转U",[442,860,861,864],{},[455,862,863],{},"Flip Vonly",[455,865,866],{},"翻转V",[442,868,869,872],{},[455,870,871],{},"Random Flip UV",[455,873,874],{},"随机翻转UV",[442,876,877,880],{},[455,878,879],{},"Random Flip Uonly",[455,881,882],{},"随机翻转U",[442,884,885,888],{},[455,886,887],{},"Random Flip Vonly",[455,889,890],{},"随机翻转V",[442,892,893,896],{},[455,894,895],{},"Random Flip UV Independent",[455,897,898],{},"随机翻转UV（UV相互独立）",[10,900,901],{},[44,902,903],{},"Normals",[10,905,906],{},[50,907,908],{},"Emitter Normals Mode",[10,910,911],{},"发射器法线的计算模式",[436,913,914,922],{},[439,915,916],{},[442,917,918,920],{},[445,919],{},[445,921],{},[450,923,924,932,940],{},[442,925,926,929],{},[455,927,928],{},"ENM_CameraFacing",[455,930,931],{},"默认模式，法线由朝向几何体的摄像机生成",[442,933,934,937],{},[455,935,936],{},"ENM_Spherical",[455,938,939],{},"以Normals Sphere Center为中心的球体来生成法线",[442,941,942,945],{},[455,943,944],{},"ENM_Cylindrical",[455,946,947],{},"以穿过Normal Sphere Center并以NormalsCylinderDirection为方向的圆柱体来生成法线。",[10,949,950],{},[50,951,952],{},"Normals Sphere Center",[10,954,955],{},"法线生成中根据选项不同会用到的参数。",[10,957,958],{},[50,959,960],{},"Normals Cylinder Direction",[10,962,955],{},[10,964,965],{},[50,966,967],{},"Materias",[10,969,970],{},"Named Materia Overrides",[10,972,973],{},"指定材质插槽名称，以替换发射器使用的材质。插槽中的材质则可以通过蓝图进行设置。",[34,975,977],{"id":976},"spawn","Spawn",[10,979,980],{},"这也是一个必须的模块，无法删除。用于设定粒子是如何发射出去的。",[10,982,983],{},[44,984,977],{},[10,986,987],{},[50,988,989],{},"Rate",[10,991,992],{},"每秒中产生粒子的个数。",[10,994,995],{},[50,996,997],{},"Rate Scale",[10,999,1000],{},"发射速率缩放系数。",[10,1002,1003],{},[50,1004,1005],{},"Apply Global Spawn Rate Scale",[10,1007,1008],{},"如果打开此开关，那么发射器的缩放因子将会受到全局设定中的r.EmitterSpawnRateScale数值影响。",[10,1010,1011],{},[50,1012,1013],{},"Process Spawn Rate",[10,1015,1016],{},"打开之后才会处理Rate的设置，当发射器中有多个Spawn时，其中任何一个关闭这个选项都将导致Rate不被处理。",[10,1018,1019],{},[44,1020,1021],{},"Burst",[10,1023,1024],{},"爆发。在给定时间内强制发射一定数量的粒子。",[10,1026,1027],{},[50,1028,1029],{},"Particle Burst Method",[10,1031,1032],{},"粒子爆发方式。",[436,1034,1035,1043],{},[439,1036,1037],{},[442,1038,1039,1041],{},[445,1040],{},[445,1042],{},[450,1044,1045,1053],{},[442,1046,1047,1050],{},[455,1048,1049],{},"Instant",[455,1051,1052],{},"立即",[442,1054,1055,1058],{},[455,1056,1057],{},"Intepolated",[455,1059,1060],{},"插值",[10,1062,1063],{},[50,1064,1065],{},"Burst List",[10,1067,1068],{},"粒子爆发参数列表，用于指定时间和粒子爆发。数组元素的属性有三个。",[436,1070,1071,1079],{},[439,1072,1073],{},[442,1074,1075,1077],{},[445,1076],{},[445,1078],{},[450,1080,1081,1089,1097],{},[442,1082,1083,1086],{},[455,1084,1085],{},"Count",[455,1087,1088],{},"爆发的粒子个数",[442,1090,1091,1094],{},[455,1092,1093],{},"Count Low",[455,1095,1096],{},"爆发的粒子下限个数，为-1时则无作用",[442,1098,1099,1102],{},[455,1100,1101],{},"Time",[455,1103,1104],{},"爆发的时间点",[10,1106,1107],{},[50,1108,1109],{},"Burst Scale",[10,1111,1112],{},"爆发的缩放因子。",[10,1114,1115],{},[50,1116,1117],{},"Process Burst List",[10,1119,1120],{},"打开之后才会处理Burst List，发射器中任何一个Spawn模块没有打开这个开关，就会导致Burst List不被处理。",[10,1122,1123],{},[44,1124,315],{},[10,1126,1127],{},"通用的编辑器属性。",[1129,1130],"hr",{},[10,1132,1133],{},"至此，粒子系统部分的主要属性算是整理了一遍。但是还有大量的模块和粒子类型没有进行研究，基本的参数含义在只是知道含义的情况下也没什么用。因此决定接下来从实践的角度对粒子系统进行研究。",{"title":1135,"searchDepth":1136,"depth":1137,"links":1138},"",2,3,[1139,1140,1141,1142,1143,1144],{"id":36,"depth":1137,"text":37},{"id":261,"depth":1137,"text":262},{"id":345,"depth":1137,"text":346},{"id":372,"depth":1137,"text":373},{"id":390,"depth":1137,"text":391},{"id":976,"depth":1137,"text":977},"2015-06-30","md",{"layout":1148,"status":1149,"published":1150,"author":1151,"author_login":1152,"author_email":1153,"author_url":1154,"wordpress_id":1155,"wordpress_url":1156,"date_gmt":1157,"excerpt":1158},"post","publish",true,{"display_name":1152,"login":1152,"email":1153,"url":1154},"chaoshikari","chaoshikari@gmail.com","\u002F",1319,"\u002F\u002F?p=1319","2015-06-30 03:30:50 +0000",{"type":7,"value":1159},[1160],[10,1161,12],{},"\u002F2015-06-30-ue4-particle-basics",{"title":5,"description":12},"_legacy\u002F2015\u002F2015-06-30-ue4-particle-basics",[1166,1167],"UE4","粒子","yj_Ij1vsLYIcuPNLxkOsLmGjTNtay4B73uXQDAbRbCk",1788763180752]