Initial commit for first version of project

This commit is contained in:
Dennis Nemec
2026-09-02 20:54:36 +02:00
parent 3d9f1ab6bc
commit 992bb32025
56 changed files with 5139 additions and 31 deletions

View File

@ -0,0 +1,26 @@
//
// Matrix+Array.swift
// GasTankAR
//
// Created by Dennis Nemec on 26.08.26.
//
import simd
extension simd_float4x4 {
/// Spaltenweise Darstellung als 16 Floats (für die Persistenz).
var floatArray: [Float] {
[columns.0, columns.1, columns.2, columns.3].flatMap { [$0.x, $0.y, $0.z, $0.w] }
}
/// Rekonstruiert eine Matrix aus 16 spaltenweisen Floats.
init?(floatArray array: [Float]) {
guard array.count == 16 else { return nil }
self.init(
SIMD4(array[0], array[1], array[2], array[3]),
SIMD4(array[4], array[5], array[6], array[7]),
SIMD4(array[8], array[9], array[10], array[11]),
SIMD4(array[12], array[13], array[14], array[15])
)
}
}