Bump to OPENRNDR 0.3.44-rc.3, add SSBO demo
This commit is contained in:
@@ -14,7 +14,7 @@ buildscript {
|
||||
apply plugin: 'org.jetbrains.dokka'
|
||||
|
||||
project.ext {
|
||||
openrndrVersion = "0.3.44-rc.2"
|
||||
openrndrVersion = "0.3.44-rc.3"
|
||||
kotlinVersion = "1.3.72"
|
||||
spekVersion = "2.0.11"
|
||||
libfreenectVersion = "0.5.7-1.5.3"
|
||||
|
||||
39
openrndr-demos/src/demo/kotlin/DemoShaderStorageBuffer01.kt
Normal file
39
openrndr-demos/src/demo/kotlin/DemoShaderStorageBuffer01.kt
Normal file
@@ -0,0 +1,39 @@
|
||||
import org.openrndr.application
|
||||
import org.openrndr.draw.VertexElementType
|
||||
import org.openrndr.draw.shadeStyle
|
||||
import org.openrndr.draw.shaderStorageBuffer
|
||||
import org.openrndr.draw.shaderStorageFormat
|
||||
import java.nio.ByteBuffer
|
||||
import java.nio.ByteOrder
|
||||
|
||||
fun main() = application {
|
||||
program {
|
||||
|
||||
val ssb = shaderStorageBuffer(shaderStorageFormat {
|
||||
attribute("foo", VertexElementType.FLOAT32, 1000)
|
||||
|
||||
})
|
||||
val ss = shadeStyle {
|
||||
buffer("someBuffer", ssb)
|
||||
fragmentTransform = "float a = b_someBuffer.foo[0]; b_someBuffer.foo[1] += 2.0;"
|
||||
}
|
||||
|
||||
val bb = ByteBuffer.allocateDirect(ssb.format.size)
|
||||
bb.order(ByteOrder.nativeOrder())
|
||||
|
||||
extend {
|
||||
ssb.clear()
|
||||
|
||||
drawer.shadeStyle = ss
|
||||
drawer.circle(100.0, 100.0, 200.0)
|
||||
bb.rewind()
|
||||
ssb.read(bb)
|
||||
bb.rewind()
|
||||
val f0 = bb.float
|
||||
val f1 = bb.float
|
||||
println(f1)
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user