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'
|
apply plugin: 'org.jetbrains.dokka'
|
||||||
|
|
||||||
project.ext {
|
project.ext {
|
||||||
openrndrVersion = "0.3.44-rc.2"
|
openrndrVersion = "0.3.44-rc.3"
|
||||||
kotlinVersion = "1.3.72"
|
kotlinVersion = "1.3.72"
|
||||||
spekVersion = "2.0.11"
|
spekVersion = "2.0.11"
|
||||||
libfreenectVersion = "0.5.7-1.5.3"
|
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