GenericMesh - Made 'Transform' property abstract

This commit is contained in:
miku-666
2024-09-21 10:58:07 +02:00
parent 6c38d688e5
commit 0cbc5faff3
3 changed files with 5 additions and 8 deletions

View File

@@ -53,6 +53,8 @@ namespace PckStudio.Rendering
22, 23, 20
];
public override Matrix4 Transform => Matrix4.CreateScale(1f, -1f, -1f);
internal static VertexBufferLayout VertexBufferLayout { get; } = new VertexBufferLayout().Add(ShaderDataType.Float3).Add(ShaderDataType.Float2);
public CubeMesh(Cube cube) : this(nameof(CubeMesh), cube, true)
@@ -64,7 +66,6 @@ namespace PckStudio.Rendering
{
ShouldRender = visible;
_cube = cube;
transform = Matrix4.CreateScale(1f, -1f, -1f);
}
public CubeMesh SetName(string name)

View File

@@ -65,11 +65,12 @@ namespace PckStudio.Rendering
if (value != _offset)
{
_offset = value;
transform = Matrix4.CreateTranslation(Translation + _offset) * Matrix4.CreateScale(1f, -1f, -1f);
}
}
}
public override Matrix4 Transform => Matrix4.CreateTranslation(Translation + _offset) * Matrix4.CreateScale(1f, -1f, -1f);
public int Count => cubes.Count;
public bool IsReadOnly => false;
@@ -79,7 +80,6 @@ namespace PckStudio.Rendering
internal CubeMeshCollection(string name) : base(name, PrimitiveType.Triangles, CubeMesh.VertexBufferLayout)
{
cubes = new List<CubeMesh>(5);
transform = Matrix4.CreateTranslation(Vector3.Zero) * Matrix4.CreateScale(1f, -1f, -1f);
}
internal CubeMeshCollection(string name, Vector3 translation, Vector3 pivot)
@@ -87,7 +87,6 @@ namespace PckStudio.Rendering
{
Translation = translation;
Pivot = pivot;
transform = Matrix4.CreateTranslation(Translation) * Matrix4.CreateScale(1f, -1f, -1f);
}
internal override IEnumerable<TextureVertex> GetVertices()

View File

@@ -17,10 +17,8 @@
**/
using System;
using System.Collections.Generic;
using System.Diagnostics;
using OpenTK;
using OpenTK.Graphics.OpenGL;
using PckStudio.Rendering.Shader;
namespace PckStudio.Rendering
{
@@ -30,8 +28,7 @@ namespace PckStudio.Rendering
internal PrimitiveType DrawType { get; }
internal VertexBufferLayout VertexLayout { get; }
protected Matrix4 transform { get; set; }
public Matrix4 Transform => transform;
public abstract Matrix4 Transform { get; }
protected GenericMesh(string name, PrimitiveType type, VertexBufferLayout vertexLayout)
{