Example #1
0
        //--------------------------------------------------------------
        #region Methods
        //--------------------------------------------------------------

        #region ----- Cloning -----

        /// <inheritdoc/>
        protected override Light CreateInstanceCore()
        {
            return(new ProjectorLight(null, Projection.Clone()));
        }
Example #2
0
 /// <summary>
 /// When implemented in a derived class, creates a new instance of the <see cref="Camera"/>
 /// derived class.
 /// </summary>
 /// <returns>The new instance.</returns>
 /// <remarks>
 /// <para>
 /// Do not call this method directly (except when calling base in an implementation). This
 /// method is called internally by the <see cref="Clone"/> method whenever a new instance of the
 /// <see cref="Camera"/> is created.
 /// </para>
 /// <para>
 /// <strong>Notes to Inheritors:</strong> Every <see cref="Camera"/> derived class must
 /// implement this method. A typical implementation is to simply call the default constructor
 /// and return the result.
 /// </para>
 /// </remarks>
 protected virtual Camera CreateInstanceCore()
 {
     return(new Camera(Projection.Clone()));
 }