/// <summary> /// Initializes a new instance of the <see cref="SkeletalRenderer" /> class. /// </summary> /// <param name="layerType">Type of the layer.</param> /// <param name="samplerMode">The sampler mode.</param> public SkeletalRenderer(Type layerType, AddressMode samplerMode = AddressMode.LinearClamp) : base("SkeletalRenderer" + instances++, layerType) { this.Transform2D = null; this.samplerMode = samplerMode; this.material = new BasicMaterial2D() { LayerType = layerType, SamplerMode = this.samplerMode }; this.position = new Vector2(); this.scale = new Vector2(1); this.ActualDebugMode = DebugMode.Bones; }
/// <summary> /// Creates a new layer mesh /// </summary> /// <param name="startIndex">Start index.</param> /// <param name="count">Count indices</param> /// <param name="image">Mesh material</param> private void NewMesh(int startIndex, int count, Texture2D image) { Mesh mesh = new Mesh( 0, this.vertices.Length, startIndex * indicesPerTile, count * 2, this.vertexBuffer, this.indexBuffer, PrimitiveType.TriangleList) { DisableBatch = true }; BasicMaterial2D material = new BasicMaterial2D(image, this.LayerType) { SamplerMode = this.samplerMode }; material.Initialize(this.Assets); this.meshes.Add(new Tuple <BasicMaterial2D, Mesh>(material, mesh)); }
/// <summary> /// Initializes a new instance of the <see cref="SkeletalRenderer" /> class. /// </summary> /// <param name="layerType">Type of the layer.</param> public SkeletalRenderer(Type layerType) : base("SkeletalRenderer" + instances++, layerType) { this.Transform2D = null; this.material = new BasicMaterial2D(); this.position = new Vector2(); this.scale = new Vector2(1); this.ActualDebugMode = DebugMode.Bones; }
/// <summary> /// Creates a new layer mesh /// </summary> /// <param name="startIndex">Start index.</param> /// <param name="count">Count indices</param> /// <param name="image">Mesh material</param> private void NewMesh(int startIndex, int count, Texture2D image) { Mesh mesh = new Mesh( 0, this.vertices.Length, startIndex * indicesPerTile, count * 2, this.vertexBuffer, this.indexBuffer, PrimitiveType.TriangleList) { DisableBatch = true }; BasicMaterial2D material = new BasicMaterial2D(image, this.LayerType) { SamplerMode = this.samplerMode }; material.Initialize(this.Assets); this.meshes.Add(new Tuple<BasicMaterial2D, Mesh>(material, mesh)); }