diff options
author | Mike Krus <mike.krus@kdab.com> | 2020-07-16 13:35:15 +0100 |
---|---|---|
committer | Mike Krus <mike.krus@kdab.com> | 2020-07-30 12:02:39 +0100 |
commit | eb728b5501f0ffb61ca4916ff5975c496ab98970 (patch) | |
tree | 3c2652354b99e057460455ba94e478410c19b4df /tests/manual | |
parent | 3411f202fdfd6e3c69421ae143013920a65704ee (diff) |
Add support for synchronous picking
World space and screen space raycasters gain method to do a pick
query synchronously, returning the list of hits.
Change-Id: I41cc3940b8d97c3619456d76127841907a9170cb
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Diffstat (limited to 'tests/manual')
-rw-r--r-- | tests/manual/raycasting-qml/CMakeLists.txt | 18 | ||||
-rw-r--r-- | tests/manual/raycasting-qml/LineEntity.qml | 1 | ||||
-rw-r--r-- | tests/manual/raycasting-qml/main.qml | 4 |
3 files changed, 21 insertions, 2 deletions
diff --git a/tests/manual/raycasting-qml/CMakeLists.txt b/tests/manual/raycasting-qml/CMakeLists.txt index 7b1549f3f..24be78aae 100644 --- a/tests/manual/raycasting-qml/CMakeLists.txt +++ b/tests/manual/raycasting-qml/CMakeLists.txt @@ -21,7 +21,16 @@ qt_add_manual_test(raycasting-qml # Resources: set(raycasting-qml_resource_files - "main.qml" + main.qml + CylinderEntity.qml + LineEntity.qml + LineMaterial.qml +) +set(raycasting-shader_resource_files + shaders/es2/simpleColor.frag + shaders/es2/simpleColor.vert + shaders/gl3/simpleColor.frag + shaders/gl3/simpleColor.vert ) qt_add_resource(raycasting-qml "raycasting-qml" @@ -31,6 +40,13 @@ qt_add_resource(raycasting-qml "raycasting-qml" ${raycasting-qml_resource_files} ) +qt_add_resource(raycasting-qml "shaders" + PREFIX + "/" + FILES + ${raycasting-shader_resource_files} +) +target_sources(raycasting-qml PRIVATE ${raycasting-qml_resource_files} ${raycasting-shader_resource_files}) #### Keys ignored in scope 1:.:.:raycasting-qml.pro:<TRUE>: # OTHER_FILES = "main.qml" diff --git a/tests/manual/raycasting-qml/LineEntity.qml b/tests/manual/raycasting-qml/LineEntity.qml index 6071881f3..62cf911d1 100644 --- a/tests/manual/raycasting-qml/LineEntity.qml +++ b/tests/manual/raycasting-qml/LineEntity.qml @@ -83,7 +83,6 @@ Entity { Buffer { id: vertexBuffer - type: Buffer.VertexBuffer data: buildVertexBufferData(root.origin, root.direction, root.length) } diff --git a/tests/manual/raycasting-qml/main.qml b/tests/manual/raycasting-qml/main.qml index c6cc8445f..33aa96752 100644 --- a/tests/manual/raycasting-qml/main.qml +++ b/tests/manual/raycasting-qml/main.qml @@ -121,6 +121,10 @@ Entity { if (event.text.toLowerCase() == "s") { raycaster.origin.y += .1; raycaster.trigger() } if (event.text.toLowerCase() == "d") { raycaster.origin.y -= .1; raycaster.trigger() } } + onSpacePressed: { + var syncHits = raycaster.pick(raycaster.origin, raycaster.direction, raycaster.length) + printHits("Synchronous hits", syncHits) + } } components: [ external_forward_renderer, inputSettings, headLight, raycaster, screenRayCaster, mouseHandler, kbHandler ] |