示例#1
0
 /// <summary>
 /// Initializes a RenderWare material instance with default properties.
 /// </summary>
 public RWMaterial(RWNode parent = null)
     : base(RWNodeType.Material, parent)
 {
     _struct = new RWMaterialStruct(this);
     _struct.IsTextured = false;
     _textureReference = null;
     _extension = new RWExtension(this);
 }
示例#2
0
 /// <summary>
 /// Initializes a RenderWare material instance with default properties and reference texture name set.
 /// </summary>
 /// <param name="textureName">Name of the texture to be referenced by the material.</param>
 public RWMaterial(string textureName, RWNode parent = null)
     : this(parent)
 {
     _struct.IsTextured = true;
     _textureReference = new RWTextureReference(textureName, this);
 }
示例#3
0
        /// <summary>
        /// Initializes a RenderWare material using data from the <see cref="RWNodeFactory"/>.
        /// </summary>
        /// <param name="header"></param>
        /// <param name="reader"></param>
        internal RWMaterial(RWNodeFactory.RWNodeInfo header, BinaryReader reader)
            : base(header)
        {
            _struct = RWNodeFactory.GetNode<RWMaterialStruct>(this, reader);

            if (_struct.IsTextured)
                _textureReference = RWNodeFactory.GetNode<RWTextureReference>(this, reader);

            _extension = RWNodeFactory.GetNode<RWExtension>(this, reader);
        }