版本:Unity 6 (6000.0)
语言英语
  • C#

ParticleSystemRenderer.alignment

提出变更建议

成功!

感谢你帮助我们提升 Unity 文档的质量。尽管我们无法接受所有提交,但我们确实会阅读用户提出的每一条变更建议并会在适用时进行更新。

关闭

提交失败

由于某种原因,你的变更建议无法提交。请在几分钟后<a>重试</a>。感谢你抽出时间帮助我们提升 Unity 文档的质量。

关闭

取消

public ParticleSystemRenderSpace alignment;

描述

控制粒子相对于相机的朝向。

对于许多应用,让粒子始终面向摄像机是有益的。此属性允许你更改系统中的粒子是否面向摄像机。

粒子可以通过两种方式面向摄像机

1) 与摄像机平面对齐,这样所有粒子都与相同的朝向对齐。
2) 单独对齐以面向视点,这对于在近距离接近摄像机的粒子或 VR 环境来说可能更令人信服。

可以根据需要将未对齐的粒子设置为与世界对齐或与其本地变换对齐。

using UnityEngine;
using System.Collections;

[RequireComponent(typeof(ParticleSystem))] public class ExampleClass : MonoBehaviour {

private ParticleSystem ps; private ParticleSystemRenderer psr; public ParticleSystemRenderSpace alignment = ParticleSystemRenderSpace.View;

void Start() {

Camera.main.transform.rotation = Quaternion.Euler(0.0f, 20.0f, 0.0f); // rotate the camera so we can see the difference between view and world space

ps = GetComponent<ParticleSystem>(); psr = GetComponent<ParticleSystemRenderer>();

var main = ps.main; main.startSpeed = 2.0f;

psr.material = new Material(Shader.Find("Sprites/Default")); }

void Update() { psr.alignment = alignment; }

void OnGUI() { alignment = (ParticleSystemRenderSpace)GUI.SelectionGrid(new Rect(25, 25, 300, 30), (int)alignment, new GUIContent[] { new GUIContent("View"), new GUIContent("World"), new GUIContent("Local"), new GUIContent("Facing") }, 4); } }