Exemple #1
0
        /// <summary>
        /// Called to start foliage painting
        /// </summary>
        /// <param name="foliage">The foliage.</param>
        private void PaintStart(FlaxEngine.Foliage foliage)
        {
            // Skip if already is painting
            if (IsPainting)
            {
                return;
            }

            _undoAction   = new EditFoliageAction(foliage);
            _paintFoliage = foliage;
            PaintStarted?.Invoke();
        }
Exemple #2
0
        /// <summary>
        /// Called to end foliage painting.
        /// </summary>
        private void PaintEnd()
        {
            // Skip if nothing was painted
            if (!IsPainting)
            {
                return;
            }

            _undoAction.RecordEnd();
            Editor.Instance.Undo.AddAction(_undoAction);
            _undoAction   = null;
            _paintFoliage = null;
            PaintEnded?.Invoke();
        }
        /// <summary>
        /// Called to start foliage painting
        /// </summary>
        /// <param name="foliage">The foliage.</param>
        private void PaintStart(FlaxEngine.Foliage foliage)
        {
            // Skip if already is painting
            if (IsPainting)
            {
                return;
            }

            if (Editor.Instance.Undo.Enabled)
            {
                _undoAction = new EditFoliageAction(foliage);
            }
            _paintFoliage     = foliage;
            _paintUpdateCount = 0;
            PaintStarted?.Invoke();
        }
Exemple #4
0
 /// <summary>
 /// Initializes a new instance of the <see cref="EditFoliageAction"/> class.
 /// </summary>
 /// <remarks>Use <see cref="RecordEnd"/> to finalize foliage data after editing action.</remarks>
 /// <param name="foliage">The foliage.</param>
 public EditFoliageAction(FlaxEngine.Foliage foliage)
 {
     _foliageId = foliage.ID;
     _before    = foliage.ToJson();
 }
Exemple #5
0
 /// <summary>
 /// Initializes a new instance of the <see cref="EditFoliageAction"/> class.
 /// </summary>
 /// <remarks>Use <see cref="RecordEnd"/> to finalize foliage data after editing action.</remarks>
 /// <param name="foliage">The foliage.</param>
 public EditFoliageAction(FlaxEngine.Foliage foliage)
 {
     _foliageId = foliage._internalId;
     _before    = Actor.Serialize(foliage);
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="EditInstanceAction"/> class.
 /// </summary>
 /// <param name="foliage">The foliage.</param>
 /// <param name="index">The instance index.</param>
 public EditInstanceAction(FlaxEngine.Foliage foliage, int index)
 {
     _foliageId = foliage.ID;
     _index     = index;
     _before    = foliage.GetInstance(_index).Transform;
 }
Exemple #7
0
 /// <summary>
 /// Initializes a new instance of the <see cref="EditFoliageAction"/> class.
 /// </summary>
 /// <remarks>Use <see cref="RecordEnd"/> to finalize foliage data after editing action.</remarks>
 /// <param name="foliage">The foliage.</param>
 public EditFoliageAction(FlaxEngine.Foliage foliage)
 {
     _foliageId = foliage._internalId;
     _before    = foliage.ToJson();
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="DeleteInstanceAction"/> class.
 /// </summary>
 /// <param name="foliage">The foliage.</param>
 /// <param name="index">The instance index.</param>
 public DeleteInstanceAction(FlaxEngine.Foliage foliage, int index)
 {
     _foliageId = foliage.ID;
     _index     = index;
 }