import benchy, vmath # TODO: I don't trust these simple benchmarks, make a better test. # echo "new vmath" # var v = vec3(1, 2, 3) # timeIt "+": # for i in 0 ..< 1_000_000: # v += vec3(4, 5, 6) # timeIt "-": # for i in 0 ..< 1_000_000: # v -= vec3(4, 5, 6) # timeIt "*": # for i in 0 ..< 1_000_000: # v *= PI # timeIt "/": # for i in 0 ..< 1_000_000: # v /= PI # timeIt "int +": # var v = ivec3(1, 2, 3) # for i in 0 ..< 1_000_000: # keep v + ivec3(4, 5, 6) # timeIt "int -": # var v = ivec3(1, 2, 3) # for i in 0 ..< 1_000_000: # keep v - ivec3(4, 5, 6) timeIt "matrix mat4": var m = mat4() for i in 0 ..< 10_000: m = m * rotate(0.2.float32, vec3(1, 0, 0)) * scale(vec3(0.3)) * translate(vec3(1)) keep m timeIt "matrix mat3": var m = mat3() for i in 0 ..< 10_000: m = m * rotate(0.2.float32) * scale(vec2(0.3)) * translate(vec2(1)) keep m timeIt "matrix quat": var m = rotate(0.2.float32, vec3(1, 0, 0)) * scale(vec3(0.3)) * translate(vec3(1)) for i in 0 ..< 100_000: keep m.quat().mat4()