StereoEyeCopy.kt
src/jvmMain/kotlin/afield/graphics/vulkan/targets/StereoEyeCopy.kt · 12 lines
package afield.graphics.vulkan.targets
internal data class StereoEyeCopy(val layer: Int, val x: Int)
Source subresource for the copy into one runtime-owned, single-layer eye swapchain.
companion object
fun source(eye: Int, eyeWidth: Int, layered: Boolean): StereoEyeCopy
fun source(eye: Int, eyeWidth: Int, layered: Boolean): StereoEyeCopy {
require(eye in 0..1 && eyeWidth > 0)
return if (layered) StereoEyeCopy(eye, 0) else StereoEyeCopy(0, eye * eyeWidth)
}
}
}