scenerygraphics / scenery

Flexible VR Visualisation for Volumetric and Geometric Data on the Java VM, powered by Kotlin and Vulkan.
https://scenery.graphics
GNU Lesser General Public License v3.0
129 stars 32 forks source link

Integration of Volumetric Depth Images (VDIs) / Remote volume visualization 3.0 #622

Closed skalarproduktraum closed 4 months ago

skalarproduktraum commented 9 months ago

This is an updated version of #533, which removes the large files that have been committed in that branch.

moreApi commented 5 months ago

I am unsbubscribing news from this PR. I always get "mention" notifications from github here and they lead to nowhere. If you Need my input ping me on another platform

aryaman-gupta commented 5 months ago

Thanks @skalarproduktraum for the detailed review! I have fixed most things you recommended and left comments as replies to a few of your suggestions where I would like your input. Please have a look. I would be happy to look at them together!

aryaman-gupta commented 4 months ago

@skalarproduktraum It looks like d05e95a4859d8718ff0bd57566417675a2205f29 is breaking things. I am getting a logical or physical device lost error when running rendering code. Can you have a look?

For example, when running TexturedCubeExample:

[VulkanTextureWorker-1] ERROR VulkanRenderer - Call to VkCommandBuffer.submit failed: The logical or physical device has been lost.
Exception in thread "VulkanTextureWorker-1" graphics.scenery.backends.vulkan.VU$VulkanCommandException: Call to VkCommandBuffer.submit failed: The logical or physical device has been lost.
    at graphics.scenery.backends.vulkan.VUKt.submit(VU.kt:599)
    at graphics.scenery.backends.vulkan.VUKt.endCommandBuffer(VU.kt:74)
    at graphics.scenery.backends.vulkan.VUKt.endCommandBuffer$default(VU.kt:58)
    at graphics.scenery.backends.vulkan.VulkanTexture$copyFrom$t$1.invokeSuspend(VulkanTexture.kt:603)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
    at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
    at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
    at java.base/java.lang.Thread.run(Thread.java:1583)
    Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@6ed43d15, java.util.concurrent.ScheduledThreadPoolExecutor@263bbfeb[Running, pool size = 1, active threads = 1, queued tasks = 0, completed tasks = 0]]
skalarproduktraum commented 4 months ago

This has been quite a ride, big thanks for an amazing contribution, @aryaman-gupta 🥳

kephale commented 3 months ago

Nice!!!