mirror of
https://github.com/GayPizzaSpecifications/voxelotl-engine.git
synced 2025-08-03 13:11:33 +00:00
switch permutation type to ubyte
This commit is contained in:
@ -1,16 +1,16 @@
|
||||
import Foundation
|
||||
|
||||
public struct SimplexNoise<Scalar: BinaryFloatingPoint & SIMDScalar>: CoherentNoise2D, CoherentNoise3D, CoherentNoise4D, CoherentNoiseRandomInit, CoherentNoiseTableInit {
|
||||
private let p: [Int16], pMod12: [Int16]
|
||||
private let p: [UInt8], pMod12: [UInt8]
|
||||
|
||||
public init(permutation: [Int16]) {
|
||||
public init(permutation: [UInt8]) {
|
||||
assert(permutation.count == 0x100)
|
||||
self.p = permutation
|
||||
self.pMod12 = self.p.map { $0 % 12 }
|
||||
}
|
||||
|
||||
public init<Random: RandomProvider>(random: inout Random) {
|
||||
self.p = (0..<0x100).map { Int16($0) }.shuffled(using: &random)
|
||||
self.p = (0..<0x100).map { UInt8($0) }.shuffled(using: &random)
|
||||
self.pMod12 = self.p.map { $0 % 12 }
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user