private void Initialize(SlicerCutSequenceArgs args) { _lifeTime = args.LifeTime; _speed = args.Speed; _overrideMaterial = args.OverrideMaterial; _effectPrefab = args.EffectPrefab; }
/// <summary> /// Update sequencer. /// </summary> /// <param name="slicer">Target slicer.</param> /// <param name="cuttedObjects">Separated objects.</param> /// <param name="plane">Separating plane.</param> private void UpdateSequencer(Slicer slicer, GameObject[] cuttedObjects, MeshCutter.CutterPlane plane) { if (slicer.Sequencer == null) { SlicerCutSequenceArgs args = new SlicerCutSequenceArgs { LifeTime = 1.58f, Speed = 0.1f, OverrideMaterial = _overrideMaterial, EffectPrefab = _effectPrefab, }; SlicerCutSequencer sequencer = new SlicerCutSequencer(args); sequencer.Add(cuttedObjects, plane, slicer); sequencer.OnEnded += OnEndedHandler; _slicerSequencerList.Add(sequencer); } else { SlicerCutSequencer sequencer = slicer.Sequencer; sequencer.Add(cuttedObjects, plane, slicer); sequencer.Remove(slicer); } Destroy(slicer.Root.gameObject); }
/// <summary> /// コンストラクタ /// </summary> public SlicerCutSequencer(SlicerCutSequenceArgs args) { Initialize(args); }