pivot
Modify the pivot point used for rotating particles.
Read time 1 minuteLast updated 4 days ago
Definition
- Type: Property
- Namespace: UnityEngine
- Assembly: UnityEngine.ParticleSystemModule
public Vector3 pivot { get; set; }
Remarks
The units are expressed as a multiplier of the particle sizes, relative to their diameters. For example, a value of 0.5 adjusts the pivot by the particle radius, allowing particles to rotate around their edges.
Examples
using UnityEngine;using UnityEditor;using System.Collections;[RequireComponent(typeof(ParticleSystem))]public class ExampleClass : MonoBehaviour { private ParticleSystem ps; private ParticleSystemRenderer psr; public Vector3 pivot; void Start() { ps = GetComponent<ParticleSystem>(); psr = GetComponent<ParticleSystemRenderer>(); psr.material = new Material(Shader.Find("Sprites/Default")); // square material so we can see the pivot more easily var rotation = ps.rotationOverLifetime; rotation.enabled = true; rotation.zMultiplier = 180.0f; // spin so we can see the pivot more easily } void Update() { psr.pivot = pivot; } void OnGUI() { GUI.Label(new Rect(25, 40, 100, 30), "X"); GUI.Label(new Rect(25, 80, 100, 30), "Y"); GUI.Label(new Rect(25, 120, 100, 30), "Z"); pivot.x = GUI.HorizontalSlider(new Rect(65, 25, 100, 30), pivot.x, -2.0f, 2.0f); pivot.y = GUI.HorizontalSlider(new Rect(65, 65, 100, 30), pivot.y, -2.0f, 2.0f); pivot.z = GUI.HorizontalSlider(new Rect(65, 105, 100, 30), pivot.z, -2.0f, 2.0f); }}