mirror of
https://bitbucket.org/s_l_teichmann/mtsatellite
synced 2025-07-13 13:30:31 +02:00
Re-worked memory management of blocks loaded from redis client to avoid
unnecessary copying them around.
This commit is contained in:
@ -105,14 +105,21 @@ func main() {
|
||||
|
||||
renderer := common.NewRenderer(width, height, transparent)
|
||||
renderer.SetPos(q1x, q1z)
|
||||
yOrder := common.NewYOrder(renderer, 512)
|
||||
|
||||
renderFn := func(block *common.Block) error {
|
||||
return renderer.RenderBlock(block, colors)
|
||||
}
|
||||
|
||||
yOrder := common.NewYOrder(renderFn, 512)
|
||||
|
||||
numBlocks := 0
|
||||
drawBlock := func(block *common.Block) {
|
||||
if err := yOrder.RenderBlock(block, colors); err != nil {
|
||||
drawBlock := func(block *common.Block) *common.Block {
|
||||
block, err := yOrder.RenderBlock(block)
|
||||
if err != nil {
|
||||
log.Printf("WARN: rendering block failed: %s\n", err)
|
||||
}
|
||||
numBlocks++
|
||||
return block
|
||||
}
|
||||
|
||||
c1 := common.Coord{X: q1x, Z: q1z}
|
||||
@ -126,7 +133,7 @@ func main() {
|
||||
if _, err = client.QueryCuboid(cuboid, drawBlock); err != nil {
|
||||
log.Fatalf("query failed: %s", err)
|
||||
}
|
||||
if err = yOrder.Drain(colors); err != nil {
|
||||
if err = yOrder.Drain(); err != nil {
|
||||
log.Printf("WARN: rendering block failed: %s\n", err)
|
||||
}
|
||||
if renderer.IsFilled() {
|
||||
|
Reference in New Issue
Block a user