pixie/tests/benchmark_shadows.nim

82 lines
2.2 KiB
Nim
Raw Normal View History

2020-11-29 06:28:38 +00:00
import pixie, chroma, vmath, fidget/opengl/perf
timeIt "spread":
var tmp = 0
var spread: Image
for i in 0 ..< 100:
var a = newImageFill(100, 100, rgba(0, 0, 0, 0))
var b = newImageFill(50, 50, rgba(0, 0, 0, 255))
a.draw(b, vec2(25, 25))
spread = a.spread(spread = 10)
b = newImageFill(50, 50, rgba(255, 255, 255, 255))
spread.draw(b, vec2(25, 25))
tmp += spread.width * spread.height
spread.writeFile("tests/images/spread1.png")
echo tmp
timeIt "blur":
var tmp = 0
var blur: Image
for i in 0 ..< 100:
var a = newImageFill(100, 100, rgba(0, 0, 0, 0))
var b = newImageFill(50, 50, rgba(255, 255, 255, 255))
a.draw(b, vec2(25, 25))
blur = a.blur(radius = 10)
b = newImageFill(50, 50, rgba(255, 255, 255, 255))
blur.draw(b, vec2(25, 25))
tmp += blur.width * blur.height
blur.writeFile("tests/images/blur1.png")
echo tmp
timeIt "shadow":
var tmp = 0
var shadow: Image
for i in 0 ..< 100:
var a = newImageFill(100, 100, rgba(0, 0, 0, 0))
var b = newImageFill(50, 50, rgba(0, 0, 0, 255))
a.draw(b, vec2(25, 25))
shadow = a.shadow(
offset = vec2(0, 0), spread = 10, blur = 10, color = rgba(0, 0, 0, 255))
b = newImageFill(50, 50, rgba(255, 255, 255, 255))
shadow.draw(b, vec2(25, 25))
tmp += shadow.width * shadow.height
shadow.writeFile("tests/images/shadow1.png")
echo tmp
# import print
# timeIt "Shadow Stops":
# var tmp = 0
# var shadow: Image
# for i in 0 ..< 1:
# var a = newImageFill(10, 200, rgba(0, 0, 0, 0))
# var b = newImageFill(50, 50, rgba(0, 0, 0, 255))
# a.draw(b, vec2(-25, -25))
# for spread in 0 .. 0:
# let spread = spread.float
# for blur in 0 .. 10:
# let blur = blur.float
# print spread, blur
# shadow = a.shadow(
# offset = vec2(0, 0), spread = spread, blur = blur, color = rgba(0, 0, 0, 255))
# for y in 25 ..< (25 + spread + blur).int:
# echo y - 25, ":", shadow[5, y].a
# b = newImageFill(50, 50, rgba(255, 255, 255, 255))
# shadow.draw(b, vec2(-25, -25))
# tmp += shadow.width * shadow.height
# shadow.writeFile("tests/images/shadowStops.png")
# echo tmp