automated snapshot

This commit is contained in:
sumi
2025-12-24 11:38:45 -06:00
parent 87c8a97e2a
commit 3baa135b47
3 changed files with 171 additions and 35 deletions

View File

@@ -32,6 +32,7 @@ type LayerTools struct {
name string
layer Layer
texture rl.RenderTexture2D
capture *rl.Image
config *LayerConfig
}
@@ -241,21 +242,24 @@ func (s *Sketch) ResetCamera() {
}
type SketchCapture struct {
width, height uint32
compositeImage *rl.Image
layerImages []*rl.Image
layerTools map[string]*LayerTools
layerToolsOrdered []*LayerTools
}
func (s *Sketch) Capture() *SketchCapture {
composite := rl.LoadImageFromTexture(s.composite.Texture)
rl.ImageFlipVertical(composite)
layerImages := make([]*rl.Image, len(s.layerToolsOrdered))
for i, layerTool := range s.layerToolsOrdered {
layerImages[i] = rl.LoadImageFromTexture(layerTool.texture.Texture)
rl.ImageFlipVertical(layerImages[i])
for _, layerTool := range s.layerToolsOrdered {
layerTool.capture = rl.LoadImageFromTexture(layerTool.texture.Texture)
rl.ImageFlipVertical(layerTool.capture)
}
return &SketchCapture {
width: uint32(s.sourceWidth), height: uint32(s.sourceHeight),
compositeImage: composite,
layerImages: layerImages,
layerTools: s.layerTools,
layerToolsOrdered: s.layerToolsOrdered,
}
}