Changed the Flip Flag array to be private and readonly and added a public property that returns the backing field as a ReadOnlySpan.

This commit is contained in:
jimmy b
2024-05-18 13:14:32 -05:00
parent a166f34078
commit a7b0a12383
2 changed files with 6 additions and 4 deletions
@@ -1,4 +1,5 @@
using Microsoft.Xna.Framework.Graphics;
using System;
namespace MonoGame.Extended.Tiled.Renderers
{
@@ -9,12 +10,14 @@ namespace MonoGame.Extended.Tiled.Renderers
{
Vertices = vertices;
AnimatedTilesetTiles = animatedTilesetTiles;
AnimatedTilesetFlipFlags = animatedTilesetTileFlipFlags;
_animatedTilesetFlipFlags = animatedTilesetTileFlipFlags;
}
public VertexPositionTexture[] Vertices { get; }
public TiledMapTilesetAnimatedTile[] AnimatedTilesetTiles { get; }
public TiledMapTileFlipFlags[] AnimatedTilesetFlipFlags { get; }
private readonly TiledMapTileFlipFlags[] _animatedTilesetFlipFlags;
public ReadOnlySpan<TiledMapTileFlipFlags> AnimatedTilesetFlipFlags => _animatedTilesetFlipFlags;
protected override VertexBuffer CreateVertexBuffer(GraphicsDevice graphicsDevice, int vertexCount)
{
@@ -61,9 +61,8 @@ namespace MonoGame.Extended.Tiled.Renderers
fixed (VertexPositionTexture* fixedVerticesPointer = animatedModel.Vertices)
{
var verticesPointer = fixedVerticesPointer;
for (int i = 0; i < animatedModel.AnimatedTilesetTiles.Length; i++)
{
{
var currentFrameTextureCoordinates = animatedModel.AnimatedTilesetTiles[i].CurrentAnimationFrame.GetTextureCoordinates(animatedModel.AnimatedTilesetFlipFlags[i]);
// ReSharper disable ArrangeRedundantParentheses