Context de reinicio de JavaFX

Estoy trabajando en un videojuego que networkingibuja cada 1/60 de segundo usando Kotlin y TornadoFX / JavaFX. Actualmente, mi progtwig se vuelve a dibujar al establecer el background en blanco y dibujar sobre él. Sin embargo, preferiría algo que sea un poco más limpio. Así es como lo estoy dibujando actualmente:

private fun drawShapes(gc: GraphicsContext) { gc.fill = c(255, 255, 255) gc.fillRect(0.0, 0.0, 700.0, 700.0) //Game is 700x700 gc.fill = c(94, 132, 233) walls.forEach { gc.fillRect(it.x.toDouble(), it.y.toDouble(), it.w.toDouble(), it.h.toDouble()) } gc.fill = c(255, 239, 20) coins.filter { !it.collected }.forEach { gc.fillRect(it.x.toDouble(), it.y.toDouble(), it.w.toDouble(), it.h.toDouble()) } //Cut off here because following is more of same } fixedRateTimer(period = 16, initialDelay = 500) { drawShapes(graphicsContext2D) } 

¿Hay alguna manera de simplemente limpiarlo en lugar de superponer muchas capas una encima de la otra? Intenté search en Internet, pero no pude encontrar nada.