This repository has been archived on 2026-05-22. You can view files and clone it, but cannot push or open issues or pull requests.
Files
Diamond/hexworld/VertexData.cs

53 lines
1.3 KiB
C#

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Diamond;
using Diamond.Buffers;
using Newtonsoft.Json;
using OpenTK;
namespace hexworld
{
public partial class HexRender
{
public struct Tile
{
[JsonProperty("pos")]
[VertexPointer("glbpos", 3, Divisor = 1)]
public Vector3 Position;
public Tile(Vector3 position)
{
Position = position;
}
}
public struct Vertex
{
[JsonProperty("pos")]
[VertexPointer("locpos", 3)]
public Vector3 Position;
[JsonProperty("uv")]
[VertexPointer("coord", 2)]
public Vector2 UV;
[JsonProperty("norm")]
[VertexPointer("norm", 3)]
public Vector3 Normal;
public Vertex(Vector3 position, Vector2 uv, Vector3 normal)
{
Position = position;
UV = uv;
Normal = normal;
}
}
private readonly Vertex[] cubeVerts = JsonConvert.DeserializeObject<Vertex[]>(File.ReadAllText("cube.json"));
private Tile[] tiles = JsonConvert.DeserializeObject<Tile[]>(File.ReadAllText("tiles.json"));
}
}