From 888dd07d310710833120ab1c62b9a4d64385df50 Mon Sep 17 00:00:00 2001 From: Lachlan Deakin Date: Tue, 12 Nov 2019 17:18:27 +1100 Subject: [PATCH] Initial commit --- .clang-format | 107 +++++ .gitignore | 8 + .gitmodules | 6 + CMakeLists.txt | 45 ++ CMakeSettings.json | 34 ++ LICENSE | 201 +++++++++ README.md | 89 ++++ docs/image.jpg | Bin 0 -> 223154 bytes docs/image2.jpg | Bin 0 -> 292648 bytes shaders/base.frag | 72 ++++ shaders/base.vert | 45 ++ shaders/distance_map.comp | 129 ++++++ shaders/imgui.frag | 32 ++ shaders/imgui.vert | 43 ++ shaders/occupancy_map.comp | 101 +++++ shaders/volume_render.frag | 291 +++++++++++++ shaders/volume_render_clipped.vert | 62 +++ shaders/volume_render_plane_intersection.vert | 127 ++++++ src/CMakeLists.txt | 42 ++ src/compute_distance_map.cpp | 144 +++++++ src/compute_distance_map.h | 53 +++ src/load_volume.cpp | 172 ++++++++ src/load_volume.h | 47 +++ src/main.cpp | 63 +++ src/orbit_camera.cpp | 89 ++++ src/orbit_camera.h | 38 ++ src/volume_component.cpp | 192 +++++++++ src/volume_component.h | 79 ++++ src/volume_render.cpp | 399 ++++++++++++++++++ src/volume_render.h | 60 +++ src/volume_render_subpass.cpp | 260 ++++++++++++ src/volume_render_subpass.h | 99 +++++ third_party/Vulkan-samples | 1 + vulkan_samples.patch | 38 ++ 34 files changed, 3168 insertions(+) create mode 100644 .clang-format create mode 100644 .gitignore create mode 100644 .gitmodules create mode 100644 CMakeLists.txt create mode 100644 CMakeSettings.json create mode 100644 LICENSE create mode 100644 README.md create mode 100644 docs/image.jpg create mode 100644 docs/image2.jpg create mode 100644 shaders/base.frag create mode 100644 shaders/base.vert create mode 100644 shaders/distance_map.comp create mode 100644 shaders/imgui.frag create mode 100644 shaders/imgui.vert create mode 100644 shaders/occupancy_map.comp create mode 100644 shaders/volume_render.frag create mode 100644 shaders/volume_render_clipped.vert create mode 100644 shaders/volume_render_plane_intersection.vert create mode 100644 src/CMakeLists.txt create mode 100644 src/compute_distance_map.cpp create mode 100644 src/compute_distance_map.h create mode 100644 src/load_volume.cpp create mode 100644 src/load_volume.h create mode 100644 src/main.cpp create mode 100644 src/orbit_camera.cpp create mode 100644 src/orbit_camera.h create mode 100644 src/volume_component.cpp create mode 100644 src/volume_component.h create mode 100644 src/volume_render.cpp create mode 100644 src/volume_render.h create mode 100644 src/volume_render_subpass.cpp create mode 100644 src/volume_render_subpass.h create mode 160000 third_party/Vulkan-samples create mode 100644 vulkan_samples.patch diff --git a/.clang-format b/.clang-format new file mode 100644 index 0000000..cadacfb --- /dev/null +++ b/.clang-format @@ -0,0 +1,107 @@ +--- +Language: Cpp +# BasedOnStyle: LLVM +AccessModifierOffset: -2 +AlignAfterOpenBracket: Align +AlignConsecutiveAssignments: true +AlignConsecutiveDeclarations: true +AlignEscapedNewlines: Left +AlignOperands: true +AlignTrailingComments: true +AllowAllParametersOfDeclarationOnNextLine: true +AllowShortBlocksOnASingleLine: false +AllowShortCaseLabelsOnASingleLine: false +AllowShortFunctionsOnASingleLine: None +AllowShortIfStatementsOnASingleLine: false +AllowShortLoopsOnASingleLine: false +AlwaysBreakAfterDefinitionReturnType: None +AlwaysBreakAfterReturnType: None +AlwaysBreakBeforeMultilineStrings: false +AlwaysBreakTemplateDeclarations: true +BinPackArguments: true +BinPackParameters: true +BraceWrapping: + AfterClass: true + AfterControlStatement: true + AfterEnum: true + AfterFunction: true + AfterNamespace: true + AfterObjCDeclaration: true + AfterStruct: true + AfterUnion: true + AfterExternBlock: true + BeforeCatch: true + BeforeElse: true + IndentBraces: false + SplitEmptyFunction: false + SplitEmptyRecord: false + SplitEmptyNamespace: false +BreakBeforeBinaryOperators: None +BreakBeforeBraces: Custom +BreakBeforeInheritanceComma: false +BreakBeforeTernaryOperators: false +BreakConstructorInitializersBeforeComma: false +BreakConstructorInitializers: AfterColon +BreakAfterJavaFieldAnnotations: false +BreakStringLiterals: true +ColumnLimit: 0 +CommentPragmas: '^ IWYU pragma:' +CompactNamespaces: false +ConstructorInitializerAllOnOneLineOrOnePerLine: true +ConstructorInitializerIndentWidth: 4 +ContinuationIndentWidth: 4 +Cpp11BracedListStyle: true +DerivePointerAlignment: false +DisableFormat: false +ExperimentalAutoDetectBinPacking: false +FixNamespaceComments: true +ForEachMacros: + - foreach + - Q_FOREACH + - BOOST_FOREACH +IncludeBlocks: Preserve +IncludeIsMainRegex: '(Test)?$' +IndentCaseLabels: true +IndentPPDirectives: AfterHash +IndentWidth: 4 +IndentWrappedFunctionNames: true +JavaScriptQuotes: Leave +JavaScriptWrapImports: true +KeepEmptyLinesAtTheStartOfBlocks: false +MacroBlockBegin: '' +MacroBlockEnd: '' +MaxEmptyLinesToKeep: 1 +NamespaceIndentation: None +ObjCBinPackProtocolList: Auto +ObjCBlockIndentWidth: 2 +ObjCSpaceAfterProperty: false +ObjCSpaceBeforeProtocolList: true +PenaltyBreakAssignment: 2 +PenaltyBreakBeforeFirstCallParameter: 19 +PenaltyBreakComment: 300 +PenaltyBreakFirstLessLess: 120 +PenaltyBreakString: 1000 +PenaltyExcessCharacter: 1000000 +PenaltyReturnTypeOnItsOwnLine: 60 +PointerAlignment: Right +ReflowComments: true +SortIncludes: true +SortUsingDeclarations: true +SpaceAfterCStyleCast: true +SpaceAfterTemplateKeyword: true +SpaceBeforeAssignmentOperators: true +SpaceBeforeCtorInitializerColon: true +SpaceBeforeInheritanceColon: true +SpaceBeforeParens: ControlStatements +SpaceBeforeRangeBasedForLoopColon: true +SpaceInEmptyParentheses: false +SpacesBeforeTrailingComments: 8 +SpacesInAngles: false +SpacesInContainerLiterals: false +SpacesInCStyleCastParentheses: false +SpacesInParentheses: false +SpacesInSquareBrackets: false +Standard: Cpp11 +TabWidth: 4 +UseTab: ForIndentation +... diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..145c75d --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ +.vs +assets +imgui.ini +out +release* +debug* +build +CMakeSettings.json \ No newline at end of file diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..8077f04 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,6 @@ +[submodule "third_party/Vulkan-samples"] + path = third_party/Vulkan-samples + url = https://github.com/khronosGroup/Vulkan-samples +[submodule "third_party/boost_endian"] + path = third_party/boost_endian + url = https://github.com/boostorg/endian.git diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..d2d8008 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,45 @@ +# Copyright (c) 2019, Lachlan Deakin +# +# SPDX-License-Identifier: Apache-2.0 +# +# Licensed under the Apache License, Version 2.0 the "License"; +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +cmake_minimum_required(VERSION 3.10) + +project(vulkan_samples_volume_renderer) + +set(VULKAN_SAMPLES ${CMAKE_CURRENT_SOURCE_DIR}/third_party/Vulkan-samples) + +# Add vulkan framework +set(VKB_VALIDATION_LAYERS OFF CACHE BOOL "Enable validation layers.") +macro(vulkan_samples_pch SRCS PCHCPP) + if(MSVC AND CMAKE_GENERATOR MATCHES "^Visual Studio") + set(PCH_NAME "$(IntDir)\\pch.pch") + # make source files use/depend on PCH_NAME + set_source_files_properties(${${SRCS}} PROPERTIES COMPILE_FLAGS "/Yupch.h /FIpch.h /Fp${PCH_NAME} /Zm300" OBJECT_DEPENDS "${PCH_NAME}") + # make PCHCPP file compile and generate PCH_NAME + set_source_files_properties(${PCHCPP} PROPERTIES COMPILE_FLAGS "/Ycpch.h /Fp${PCH_NAME} /Zm300" OBJECT_OUTPUTS "${PCH_NAME}") + list(APPEND ${SRCS} "${PCHCPP}") + endif() +endmacro(vulkan_samples_pch) +add_subdirectory(${VULKAN_SAMPLES}/third_party) +add_subdirectory(${VULKAN_SAMPLES}/framework) + + +# Add source +add_subdirectory(src) + +# Install +install(DIRECTORY "shaders" DESTINATION "./") +install(FILES "README.md" "LICENSE" DESTINATION "./") \ No newline at end of file diff --git a/CMakeSettings.json b/CMakeSettings.json new file mode 100644 index 0000000..5ec47ca --- /dev/null +++ b/CMakeSettings.json @@ -0,0 +1,34 @@ +{ + "configurations": [ + { + "name": "x64-Debug", + "generator": "Ninja", + "configurationType": "Debug", + "inheritEnvironments": [ "msvc_x64_x64" ], + "buildRoot": "${projectDir}\\out\\build\\${name}", + "installRoot": "${projectDir}\\out\\install\\${name}", + "cmakeCommandArgs": "", + "buildCommandArgs": "-v", + "ctestCommandArgs": "", + "variables": [ + { + "name": "VKB_VALIDATION_LAYERS", + "value": "True", + "type": "BOOL" + } + ] + }, + { + "name": "x64-Release", + "generator": "Ninja", + "configurationType": "RelWithDebInfo", + "buildRoot": "${projectDir}\\out\\build\\${name}", + "installRoot": "${projectDir}\\out\\install\\${name}", + "cmakeCommandArgs": "", + "buildCommandArgs": "-v", + "ctestCommandArgs": "", + "inheritEnvironments": [ "msvc_x64_x64" ], + "variables": [] + } + ] +} \ No newline at end of file diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..9118566 --- /dev/null +++ b/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2019 Lachlan Deakin + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/README.md b/README.md new file mode 100644 index 0000000..5fdaf28 --- /dev/null +++ b/README.md @@ -0,0 +1,89 @@ +# Accelerated Volume Renderer +This is an open-source implementation of [Accelerated Volume Rendering with Chebyshev Distance Maps]() to be presented at SIGGRAPH Asia 2019. +Please consider citing this work if you use it: +``` +@inproceedings{LachlanDeakinAcceleratedVolumeRendering, + address = {{Brisbane, QLD, Australia}}, + title = {Accelerated {{Volume Rendering}} with {{Chebyshev Distance Maps}}}, + booktitle = {{{SIGGRAPH Asia}} 2019 {{Technical Briefs}} ({{SA}} '19 {{Technical Briefs}})}, + publisher = {{ACM}}, + doi = {https://doi.org/10.1145/3355088.3365164}, + author = {{Lachlan Deakin} and {Mark Knackstedt}} +} +``` + +![image_snake](docs/image.jpg) ![image_beetle](docs/image2.jpg) + +## Features +* Ray casting volume renderer with efficient empty space skipping + * An occupancy map is generated (via compute shader) indicating which regions of the volume are occupied (have non transparent voxels) + * The occupancy map is converted into a distance map (via compute shader) indicating the Chebyshev distance to the nearest occupied region + * The distance map is sampled in the ray casting fragment shader and used to "leap" rays past empty regions + * The occupancy/distance map are updated whenever the transfer function changes +* The viewpoint may enter the volume + * The volume is clipped at some distance from the camera and the vertices of the box-plane intersection are computed in a vertex shader +* Volumes are clipped by the depth buffer +* Runs in a single subpass with two draw calls per volume +* ~~2D intensity/gradient transfer functions~~ (partial support, UI not implemented for texture-based) + +## Dependencies +* [Vulkan-Samples](https://github.com/KhronosGroup/Vulkan-Samples) +* Some assets from [Vulkan-Samples-Assets](https://github.com/KhronosGroup/Vulkan-Samples-Assets) +* Boost + +## Building +1. `git clone --recurse-submodules ` +1. You need boost to assist with IO (for now). I recommend grabbing it through [vcpkg](https://github.com/microsoft/vcpkg) or just use the system package on linux +1. Apply `vulkan_samples.patch` to the the Vulkan-samples submodule to apply some minor changes to it +1. The first release includes "assets.zip" which includes the minimum required assets and some volumetric images. +1. Put any other volumetric images in the newly copied assets folder. +1. Do a regular cmake build (perhaps using the toolchain file from vcpkg) + +## Running +```usage + vrender.exe ... +``` +Make sure the `assets` and `shaders` folders are in the working directory. +Volumetric images need to be in the `assets` folder. +Multiple volumetric images can be loaded by supplying multiple arguments. +The stag beetle image will be loaded if no arguments are supplied. + +### Volumetric image format +Volumetric images must be densely packed binary files with no header and any extension. +For a volume file `volume.xyz` there should be an accompanying header file `file.xyz.header` structured like so +``` +1024 1024 795 # extents +0.0003 0.0003 0.0007 # voxel size +0.0 255.0 # normalisation range +uint8_t big # data type and endianness (big or little) +1 0 0 90 # rotation axis and angle (degrees) +``` + > This is not a standard format and is just a placeholder + +Volumetric images are always converted to uint8_t and normalised from 0-255 based on the normalisation range specified in the header. + +### Parameters +This example has a number of parameters which can be modified at runtime +* **ESS**: choose between the two empty space skipping (ESS) methods described in the paper (or none), useful to compare performance +* **ERT**: early ray termination, rays terminate when an opacity limit is reached +* **Sampling**: controls the density of voxel samples along rays +* **Clip distance**: controls the distance from the camera where volumes are clipped by a plane +* **Alpha**: all voxel opacities are multiplied by this number +* **Intensity**: Intensity range which maps alpha to [0-1] +* **Gradient**: Gradient range which maps alpha to [0-1] (multiplied with intensity alpha) +* **Test**: output the entry/exit coordinates for the rays or the number of the combined number of texture samples of the volume and distance map + ** try changing the empty space skipping method or early ray termination and see how this changes + +## License +See [LICENSE](LICENSE). +This example uses [Vulkan-samples](https://github.com/KhronosGroup/Vulkan-Samples) which has many third-party dependencies, each of which may have independent licensing. + +## TODO +* The IO is incredibly barebones now. needs error checking/file picking/loading and support some common formats for volumetric images +* UI for proper texture-based 2D transfer functions +* Modifications to vulkan-samples required to use a depth image as both an input attachment and depth stencil attachment simultaneously. Current behaviour: + * If sponza scene hidden, volumes write to depth image + * If sponza scene visible, volumes read from depth image and are clipped accordingly +* ~~Sparse partially resident textures to support massive sparse images~~. + * Requires too much modification to [Vulkan-samples](https://github.com/KhronosGroup/Vulkan-Samples) +* Pull requests are welcomed \ No newline at end of file diff --git a/docs/image.jpg b/docs/image.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3e7ba8c46aa13e0250184baa7d6959e3774ed69a GIT binary patch literal 223154 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%0A+iWv8USlts~}R(ux9j=7ex`x@m`XTfUI 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 literal 0 HcmV?d00001 diff --git a/docs/image2.jpg b/docs/image2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e241dced8b11bb34eb54a0128c2ba346915fc1e3 GIT binary patch literal 292648 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
R-UxB%l)H1b@=7r$Zr4?ZZ7Ao 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

b+=&X9@m#3i&%D$z$ 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

=W^p4vN)9 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

pSm($y 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%0A-Pc<&Nx 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 0; --x) { + ivec3 p = ivec3(x, pos.y, pos.z); + uint gijk = imageLoad(dist, p).x; + uint gijk_new = min(gi1jk + 1, gijk); + imageStore(dist, p, ivec4(gijk_new)); + gi1jk = gijk_new; + } + } else if (stage == 1) { // "Transformation 2" + for (int y = 0; y < dim.y; ++y) { + ivec3 p = ivec3(pos.x, y, pos.z); + uint gijk = imageLoad(dist, p).x; + uint m_min = gijk; + // zigzag out from the voxel of interest, stop as soon as any future voxels + // are guaranteed to return a higher distance + for (int n = 1; n < m_min && n < 255; ++n) { + if (y >= n) { + const uint gijnk = imageLoad(dist, ivec3(pos.x, y - n, pos.z)).x; + const uint m = max(n, gijnk); + if (m < m_min) + m_min = m; + } + if ((y + n) < dim.y && n < m_min) { // note early exit possible + const uint gijnk = imageLoad(dist, ivec3(pos.x, y + n, pos.z)).x; + const uint m = max(n, gijnk); + if (m < m_min) + m_min = m; + } + } + imageStore(dist_swap, p, ivec4(m_min)); + } + } else if (stage == 2) { // "Transformation 3" + // same as transformation 2 but on the z axis + for (int z = 0; z < dim.z; ++z) { + ivec3 p = ivec3(pos.x, pos.y, z); + uint gijk = imageLoad(dist_swap, p).x; + uint m_min = gijk; + for (int n = 1; n < m_min && n < 255; ++n) { + if (z >= n) { + const uint gijnk = imageLoad(dist_swap, ivec3(pos.x, pos.y, z - n)).x; + const uint m = max(n, gijnk); + if (m < m_min) + m_min = m; + } + if ((z + n) < dim.z && n < m_min) { // note early exit possible + const uint gijnk = imageLoad(dist_swap, ivec3(pos.x, pos.y, z + n)).x; + const uint m = max(n, gijnk); + if (m < m_min) + m_min = m; + } + } + imageStore(dist, p, ivec4(m_min)); + } + } +} diff --git a/shaders/imgui.frag b/shaders/imgui.frag new file mode 100644 index 0000000..0a40393 --- /dev/null +++ b/shaders/imgui.frag @@ -0,0 +1,32 @@ +#version 320 es +/* Copyright (c) 2016, Sascha Willems + * Copyright (c) 2019, Arm Limited and Contributors + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 the "License"; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +precision mediump float; + +layout (binding = 0) uniform sampler2D fontSampler; + +layout (location = 0) in vec2 inUV; +layout (location = 1) in vec4 inColor; + +layout (location = 0) out vec4 outColor; + +void main() +{ + outColor = inColor * texture(fontSampler, inUV); +} diff --git a/shaders/imgui.vert b/shaders/imgui.vert new file mode 100644 index 0000000..d6e0a5a --- /dev/null +++ b/shaders/imgui.vert @@ -0,0 +1,43 @@ +#version 320 es +/* Copyright (c) 2016, Sascha Willems + * Copyright (c) 2019, Arm Limited and Contributors + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 the "License"; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +precision mediump float; + +layout (location = 0) in vec2 inPos; +layout (location = 1) in vec2 inUV; +layout (location = 2) in vec4 inColor; + +layout (push_constant) uniform PushConstants { + mat4 transform; +} pushConstants; + +layout (location = 0) out vec2 outUV; +layout (location = 1) out vec4 outColor; + +out gl_PerVertex +{ + vec4 gl_Position; +}; + +void main() +{ + outUV = inUV; + outColor = inColor; + gl_Position = pushConstants.transform * vec4(inPos.xy, 0.0, 1.0); +} diff --git a/shaders/occupancy_map.comp b/shaders/occupancy_map.comp new file mode 100644 index 0000000..f7d1eba --- /dev/null +++ b/shaders/occupancy_map.comp @@ -0,0 +1,101 @@ +#version 460 +/* Copyright (c) 2019, Lachlan Deakin + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 the "License"; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +layout (local_size_x = 8, local_size_y = 8, local_size_z = 8) in; + +layout (set = 0, binding = 0, r8) uniform image3D volume; // r8 = float unorm +#ifdef PRECOMPUTED_GRADIENT +layout (set = 0, binding = 1, r8) uniform image3D gradient; +#endif +#ifdef TRANSFER_FUNCTION_TEXTURE +layout (set = 0, binding = 2) uniform sampler2D transfer_function; // transfer function (rgba) +#endif +layout (set = 0, binding = 3, r8ui) uniform uimage3D occupancy_map; + +layout(push_constant) uniform PushConsts { + vec4 block_size; + float grad_magnitude_modifier; +#ifndef TRANSFER_FUNCTION_TEXTURE + float intensity_min; + float intensity_max; + float gradient_min; + float gradient_max; +#endif +}; + +const uint OCCUPIED = 0; +const uint EMPTY = 1; + +void main() { + const ivec3 dimDst = imageSize(occupancy_map); + if(any(greaterThanEqual(gl_GlobalInvocationID, dimDst))) return; + + const ivec3 dimSrc = imageSize(volume); + + const ivec3 start = ivec3(gl_GlobalInvocationID * block_size.xyz); + ivec3 end = ivec3(min(dimSrc, start + block_size.xyz)); + end.x = (dimSrc.x - end.x) < block_size.x ? dimSrc.x : end.x; + end.y = (dimSrc.y - end.y) < block_size.y ? dimSrc.y : end.y; + end.z = (dimSrc.z - end.z) < block_size.z ? dimSrc.z : end.z; + +#ifndef TRANSFER_FUNCTION_TEXTURE + float intensity_range_inv = 1.0f / (intensity_max - intensity_min); + float gradient_range_inv = 1.0f / (gradient_max - gradient_min); +#endif + + ivec3 pos; + for (pos.z = start.z; pos.z < end.z; ++pos.z) + for (pos.y = start.y; pos.y < end.y; ++pos.y) + for (pos.x = start.x; pos.x < end.x; ++pos.x) { + // Intensity + float intensity = imageLoad(volume, pos).x; + +#ifdef PRECOMPUTED_GRADIENT + // Gradient from precomputed texture + float gradient = imageLoad(gradient, pos).x; +#else + // Gradient on-the-fly using tetrahedron technique http://iquilezles.org/www/articles/normalsSDF/normalsSDF.htm + ivec2 k = ivec2(1,-1); + vec3 gradientDir = (k.xyy * imageLoad(volume, clamp(pos + k.xyy, ivec3(0), ivec3(dimSrc)-1)).x + + k.yyx * imageLoad(volume, clamp(pos + k.yyx, ivec3(0), ivec3(dimSrc)-1)).x + + k.yxy * imageLoad(volume, clamp(pos + k.yxy, ivec3(0), ivec3(dimSrc)-1)).x + + k.xxx * imageLoad(volume, clamp(pos + k.xxx, ivec3(0), ivec3(dimSrc)-1)).x) * 0.25f; + float gradient = clamp(length(gradientDir) * grad_magnitude_modifier, 0, 1); +#endif + +#ifdef TRANSFER_FUNCTION_TEXTURE + // Get alpha from transfer function texture + float alpha = textureLod(transfer_function, vec2(intensity, gradient), 0.0f).a; + +#else + // Get alpha from simple grayscale transfer function + float alphaIntensity = clamp((intensity - intensity_min) * intensity_range_inv, 0, 1); + float alphaGradient= clamp((gradient - gradient_min) * gradient_range_inv, 0, 1); + float alpha = alphaIntensity * alphaGradient; +#endif + + if (alpha > 0.0f) { + // Set region as occupied + imageStore(occupancy_map, ivec3(gl_GlobalInvocationID), ivec4(OCCUPIED)); + return; + } + } + + // Set region as empty + imageStore(occupancy_map, ivec3(gl_GlobalInvocationID), ivec4(EMPTY)); +} diff --git a/shaders/volume_render.frag b/shaders/volume_render.frag new file mode 100644 index 0000000..22d3bf0 --- /dev/null +++ b/shaders/volume_render.frag @@ -0,0 +1,291 @@ +#version 460 +/* Copyright (c) 2019, Lachlan Deakin + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 the "License"; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +precision highp float; + +#ifdef DEPTH_ATTACHMENT +layout (input_attachment_index = 0, binding = 0) uniform subpassInput i_depth; +#endif + +layout(location = 0) in vec4 pos_view_space; +layout(location = 1) in vec3 ray_entry; + +layout(set = 0, binding = 1) uniform VolumeRenderUniform { + mat4 model; + mat4 model_inv; + mat4 view; + mat4 proj; + mat4 view_proj_inv; + vec4 plane; + vec4 plane_tex; + vec4 cam_pos_tex; + int front_index; + float sampling_factor; + float voxel_alpha_factor; + float grad_magnitude_modifier; +#ifndef TRANSFER_FUNCTION_TEXTURE + float intensity_min; + float intensity_max; + float gradient_min; + float gradient_max; +#endif +} volume_uniform; + +layout (set = 0, binding = 2) uniform mediump sampler3D volume; +#ifdef PRECOMPUTED_GRADIENT +layout (set = 0, binding = 3) uniform mediump sampler3D gradient; +#endif +#ifdef TRANSFER_FUNCTION_TEXTURE +layout (set = 0, binding = 4) uniform mediump sampler2D transfer_function; +#endif +layout (set = 0, binding = 5) uniform mediump usampler3D distance_map; + +layout(location = 0) out vec4 out_color; +layout(depth_greater) out float gl_FragDepth; + +vec3 ray_caster_get_back(const in vec3 front, const in vec3 dir) { + // Use AABB ray-box intersection (simplified due to unit cube [0-1]) to get intersection with back + vec3 dir_inv = 1.0f / dir; + vec3 tMin = -front * dir_inv; + vec3 tMax = (1.0f - front) * dir_inv; + vec3 t1 = min(tMin, tMax); + vec3 t2 = max(tMin, tMax); + float tNear = max(max(t1.x, t1.y), t1.z); + float tFar = min(min(t2.x, t2.y), t2.z); + + // Return the back intersection + return tFar * dir + front; +} + +float ray_penetration_to_frag_depth(float depth_distance, vec3 ray_entry, float ray_distance) { + float dist_front = distance(ray_entry, volume_uniform.cam_pos_tex.xyz); + float relative_depth = (dist_front + ray_distance * depth_distance) / dist_front; + vec4 pos_view_space_at_depth = vec4(pos_view_space.xyz * relative_depth, 1.0f); + vec4 p_clip = volume_uniform.proj * pos_view_space_at_depth; + return p_clip.z / p_clip.w; +} + +void main() +{ + // Initialise + out_color = vec4(0); + +#ifdef DEPTH_ATTACHMENT + // Read depth + float frag_depth = subpassLoad(i_depth).x; + + // Manual z-test of front face + vec4 clip_front = volume_uniform.proj * pos_view_space; + float frag_depth_front = clip_front.z / clip_front.w; + if (frag_depth < frag_depth_front) { + discard; + } else { + gl_FragDepth = frag_depth; + } + + // Find where ray intersects with depth buffer in texture coordinates + vec4 clip_at_depth = vec4(clip_front.xyz * frag_depth / frag_depth_front, clip_front.w); + vec4 pos_at_depth = volume_uniform.view_proj_inv * clip_at_depth; + pos_at_depth /= pos_at_depth.w; + vec3 ray_intersect_depth_buffer = (volume_uniform.model_inv * pos_at_depth).xyz + 0.5f; + float ray_distance_depth_buffer = distance(ray_entry, ray_intersect_depth_buffer); +#else + gl_FragDepth = 1.0f; +#endif + + // Get ray exit + vec3 ray_dir = normalize(ray_entry - volume_uniform.cam_pos_tex.xyz); + vec3 ray_exit = ray_caster_get_back(ray_entry, ray_dir); + float ray_distance = distance(ray_entry, ray_exit); +#ifdef DEPTH_ATTACHMENT + if (ray_distance_depth_buffer < ray_distance) { + // If the depth buffer exit is in front of the normal back intersection, use it instead + ray_exit = ray_intersect_depth_buffer; + ray_distance = ray_distance_depth_buffer; + } +#endif + + // Tests +#ifdef SHOW_RAY_ENTRY + out_color = vec4(ray_entry, 1.0f); return; +#endif +#ifdef SHOW_RAY_EXIT + out_color = vec4(ray_exit, 1.0f); return; +#endif + + // Determine number of samples + ivec3 dim = textureSize(volume, 0); + int dim_max = max(max(dim.x, dim.y), dim.z); + int n_steps = int(ceil(float(dim_max) * ray_distance * volume_uniform.sampling_factor)); + vec3 step_volume = ray_dir * ray_distance / (float(n_steps) - 1.0f); + float sampling_factor_inv = 1.0f / volume_uniform.sampling_factor; + + // This test fixes a performance regression if view is oriented with edge/s of the volume + // perhaps due to precision issues with the bounding box intersection + vec3 early_exit_test = ray_entry + step_volume; + if (any(lessThanEqual(early_exit_test, vec3(0))) || any(greaterThanEqual(early_exit_test, vec3(1)))) { + return; + } + +#ifndef DISABLE_SKIP + // Empty space skipping + ivec3 dim_distance_map = textureSize(distance_map, 0); + ivec3 block_size = dim / dim_distance_map; // NOTE: scalar in paper, but can be a vector + vec3 volume_to_distance_map = vec3(dim) / (vec3(block_size) * vec3(dim_distance_map)); + vec3 step_dist_texel = step_volume * vec3(dim) / vec3(block_size); + vec3 step_dist_texel_inv = 1.0f / step_dist_texel; + bool skipping = true; + int i_last_alpha = 0; // current furthest "occupied" step + int i_resume = int(ceil(1.5f * volume_uniform.sampling_factor * max(max(block_size.x, block_size.y), block_size.z))); +#endif + +#ifdef SHOW_NUM_SAMPLES + int num_volume_samples = 0; + int num_distance_samples = 0; +#endif + + // Precompute some constants + vec3 dim_inv = 1.0f / vec3(dim); +#ifndef TRANSFER_FUNCTION_TEXTURE + float intensity_range_inv = 1.0f / (volume_uniform.intensity_max - volume_uniform.intensity_min); + float gradient_range_inv = 1.0f / (volume_uniform.gradient_max - volume_uniform.gradient_min); +#endif + + // Step through volume + float ray_penetration = 1.0f; // assume ray goes through + for (int i = 0; i < n_steps;) { + vec3 pos = ray_entry + float(i) * step_volume; + +#ifndef DISABLE_SKIP + if (skipping) { + vec3 pos_distance_map = volume_to_distance_map * pos; + vec3 u = pos_distance_map * vec3(dim_distance_map); + ivec3 u_i = ivec3(clamp(floor(u), ivec3(0), dim_distance_map - 1)); + uint dist = texelFetch(distance_map, u_i, 0).x; + vec3 r = -fract(u); + // uint dist = texture(distance_map, pos_distance_map).x; +#ifdef SHOW_NUM_SAMPLES + ++num_distance_samples; +#endif + if (dist > 0u) { +#ifdef BLOCK_SKIP + // Skip with "block empty space skipping" + vec3 n_iter = (step(0.0f, step_dist_texel_inv) + r) * step_dist_texel_inv; +#else + // Skip with "chebyshev empty space skipping" + vec3 n_iter = (step(0.0f, -step_dist_texel_inv) + sign(step_dist_texel_inv) * float(dist) + r) * step_dist_texel_inv; +#endif + int skips = max(1, int(ceil(min(min(n_iter.x, n_iter.y), n_iter.z)))); + i += skips; + } else { +#ifdef SHOW_OCCUPANCY + out_color = vec4(vec3(ray_distance * float(i) / float(n_steps)), 1.0f); return; +#endif + // Stop skipping and step back + skipping = false; + int i_backwards = max(i - int(ceil(volume_uniform.sampling_factor)), i_last_alpha); + i_last_alpha = i + 1; + i = i_backwards; + // NOTE: The ray is stepped backwards as sample positions just outside of occupied blocks may have some opacity (due to linear sampling of the volume) + // The artefacts are quite subtle, so this could be optional. For correctness, this is enabled, but obviously causes a slight performance drop. + // The ray won't ever step back further than the last sampled voxel or make the same back step twice, say if i_resume is abnormally tiny relative to the region size + } + } + else +#endif + { +#ifdef SHOW_NUM_SAMPLES + ++num_volume_samples; +#endif + + // Map to colour and opacity with a transfer function + float intensity = texture(volume, pos).x; + +#ifdef PRECOMPUTED_GRADIENT + // Sample gradient + float gradient = texture(gradient, pos).x; +#else + // Gradient on-the-fly using tetrahedron technique http://iquilezles.org/www/articles/normalsSDF/normalsSDF.htm + ivec2 k = ivec2(1,-1); + vec3 gradientDir = (k.xyy * texture(volume, pos + dim_inv * k.xyy).x + + k.yyx * texture(volume, pos + dim_inv * k.yyx).x + + k.yxy * texture(volume, pos + dim_inv * k.yxy).x + + k.xxx * texture(volume, pos + dim_inv * k.xxx).x) * 0.25f; + float gradient = clamp(length(gradientDir) * volume_uniform.grad_magnitude_modifier, 0, 1); +#endif + +#ifdef TRANSFER_FUNCTION_TEXTURE + // Map intensity and gradient to colour with transfer function + vec4 color = texture(transfer_function, vec2(intensity, gradient)); +#else + // Map intensity and gradient to colour with simple 2D grayscale equation + float alphaIntensity = clamp((intensity - volume_uniform.intensity_min) * intensity_range_inv, 0, 1); + float alphaGradient = clamp((gradient - volume_uniform.gradient_min) * gradient_range_inv, 0, 1); + vec4 color = vec4(alphaIntensity * alphaGradient); +#endif + + if (color.a > 0.0f) { + // Correct opacity given sampling factor and multiply colour by alpha + color.a = clamp(volume_uniform.voxel_alpha_factor * (1.0f - pow(1.0f - color.a, sampling_factor_inv)), 0.0f, 1.0f); // opacity correction formula + color.xyz *= color.a; + + // Blend + out_color = out_color + (1.0f - out_color.a) * color; +#ifndef DISABLE_SKIP + i_last_alpha = i; +#endif + + if (out_color.a > 0.99f) { + // Set ray penetration + ray_penetration = float(i) / (float(n_steps) - 1.0f); + +#ifndef DISABLE_EARLY_RAY_TERMINATION + // Early ray termination + out_color.a = 1.0f; + break; +#endif + } + + } +#ifndef DISABLE_SKIP + else if (i >= (i_last_alpha + i_resume)) { + // Resume empty space skipping + #ifdef SHOW_RESUME + out_color = vec4(1.0f, 0.0f, 0.0f, 1.0f); return; + #endif + skipping = true; + i_last_alpha = i + 1; // skipping won't jump back further than this if next block is occupied + } +#endif + + // Move the ray forward + ++i; + } + + } + + // Write the depth + if (out_color.a > 0.0f && ray_penetration < 1.0f) { + gl_FragDepth = ray_penetration_to_frag_depth(ray_penetration, ray_entry, ray_distance); + } + +#ifdef SHOW_NUM_SAMPLES + uint n_steps_max = uint(ceil(vec3(dim_max) * sqrt(3.0f)) * volume_uniform.sampling_factor); + out_color = vec4(vec3(float(num_volume_samples + num_distance_samples) / float(n_steps_max)), 1.0f); return; +#endif +} diff --git a/shaders/volume_render_clipped.vert b/shaders/volume_render_clipped.vert new file mode 100644 index 0000000..8469e9b --- /dev/null +++ b/shaders/volume_render_clipped.vert @@ -0,0 +1,62 @@ +#version 450 +/* Copyright (c) 2019, Lachlan Deakin + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 the "License"; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#extension GL_EXT_clip_cull_distance: enable + +precision highp float; + +layout(location = 0) in vec3 position; + +layout(set = 0, binding = 1, std140) uniform VolumeRenderUniform { + mat4 model; + mat4 model_inv; + mat4 view; + mat4 proj; + mat4 view_proj_inv; + vec4 plane; + vec4 plane_tex; + vec4 cam_pos_tex; + int front_index; + float sampling_factor; + float voxel_alpha_factor; + float value_min; + float value_max; +} volume_uniform; + +layout(location = 0) out vec4 pos_view_space; +layout(location = 1) out vec3 ray_entry; + +out gl_PerVertex +{ + vec4 gl_Position; + float gl_ClipDistance[1]; +}; + +void main() +{ + // Convert to world space + vec4 position_world = volume_uniform.model * vec4(position, 1.0f); + + // Distance to clip plane + gl_ClipDistance[0] = dot(volume_uniform.plane, position_world); + + pos_view_space = volume_uniform.view * position_world; + ray_entry = position + 0.5f; + gl_Position = volume_uniform.proj * pos_view_space; + +} diff --git a/shaders/volume_render_plane_intersection.vert b/shaders/volume_render_plane_intersection.vert new file mode 100644 index 0000000..b5943c0 --- /dev/null +++ b/shaders/volume_render_plane_intersection.vert @@ -0,0 +1,127 @@ +#version 320 es +/* Copyright (c) 2019, Lachlan Deakin + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 the "License"; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +precision highp float; + +layout(set = 0, binding = 1, std140) uniform VolumeRenderUniform { + mat4 model; + mat4 model_inv; + mat4 view; + mat4 proj; + mat4 view_proj_inv; + vec4 plane; + vec4 plane_tex; + vec4 cam_pos_tex; + int front_index; + float sampling_factor; + float voxel_alpha_factor; + float value_min; + float value_max; +} volume_uniform; + +layout(location = 0) out vec4 pos_view_space; +layout(location = 1) out vec3 ray_entry; + +// A Vertex Program for Efficient Box-Plane Intersection +// Christof Rezk Salama and Andreas Kolb, 2005 + +// Coordinate system +// x +// / +// z -- O +// | +// y + +// Standard cube -> Authors layout (Salama&Kolb) +// 5 ------- 1 4 ------- 1 +// / /| / /| +// / / | / / | +// / / | / / | +// 4 ------- 0 | 3 ------- 0 | <-- closest = 0 +// | 7 ----|-- 3 -> | 7 ----|-- 5 +// | / | / | / | / +// | / | / | / | / +// |/ |/ |/ |/ +// 6 ------- 2 6 ------- 2 + +// Vertices of the authors cube layout on a unit cube, comments show standard cube layout +vec4 cube_vertices[8] = vec4[]( + vec4(0.0f, 0.0f, 0.0f, 1), // 0 + vec4(1.0f, 0.0f, 0.0f, 1), // 1 + vec4(0.0f, 1.0f, 0.0f, 1), // 2 + vec4(0.0f, 0.0f, 1.0f, 1), // 4 + vec4(1.0f, 0.0f, 1.0f, 1), // 5 + vec4(1.0f, 1.0f, 0.0f, 1), // 3 + vec4(0.0f, 1.0f, 1.0f, 1), // 6 + vec4(1.0f, 1.0f, 1.0f, 1) // 7 +); + +// The mapping from standard cube to authors layout +const int index_map_standard_to_author[] = int[](0, 1, 2, 5, 3, 4, 6, 7); + +// This holds the "vertex sequence" which varies depending on which vertex is furthest behind the clipping plane. +// It was written by swapping the 0th and nth vertices, and looking at where all vertices are moved. +// The ambigous swap for vertex 7 has vertex 4 at +x. This is all done with the authors cube layout. +int vertex_sequence[8*8] = int[]( + 0, 1, 2, 3, 4, 5, 6, 7, + 1, 0, 4, 5, 2, 3, 7, 6, + 2, 6, 0, 5, 7, 3, 1, 4, + 3, 6, 4, 0, 2, 7, 1, 5, + 4, 3, 7, 1, 0, 6, 5, 2, + 5, 2, 1, 7, 6, 0, 4, 3, + 6, 7, 3, 2, 5, 4, 0, 1, + 7, 4, 6, 5, 1, 3, 2, 0 +); + +// This defines the intersection tests P0 -> P6 outlined in section 4 of (Salama & Kolb, 2005) +int _V[6 * 4 * 2] = int[]( + 0, 1, 1, 4, 4, 7, 4, 7, // P0 + 1, 5, 0, 1, 1, 4, 4, 7, // P1 + 0, 2, 2, 5, 5, 7, 5, 7, // P2 + 2, 6, 0, 2, 2, 5, 5, 7, // P3 + 0, 3, 3, 6, 6, 7, 6, 7, // P4 + 3, 4, 0, 3, 3, 6, 6, 7 // P5 +); + +void main() +{ + int sequence_index = index_map_standard_to_author[volume_uniform.front_index] * 8; + vec3 pos_tex = vec3(1.0 / 0.0f); // set to nan by default + for (int e = 0; e < 4; ++e) + { + int vidx1 = vertex_sequence[sequence_index + _V[(int(gl_VertexIndex) * 4 + e) * 2]]; + int vidx2 = vertex_sequence[sequence_index + _V[(int(gl_VertexIndex) * 4 + e) * 2 + 1]]; + + vec3 vecV1 = vec3(cube_vertices[vidx1]); + vec3 vecV2 = vec3(cube_vertices[vidx2]); + vec3 vecDir = vecV2 - vecV1; + + float denom = dot(vecDir, volume_uniform.plane_tex.xyz); + float lambda = denom != 0.0f ? (-volume_uniform.plane_tex.w - dot(vecV1, volume_uniform.plane_tex.xyz)) / denom : -1.0; + + if (lambda >= 0.0f && lambda <= 1.0f) + { + pos_tex = vecV1 + lambda * vecDir; + break; + } + } + + pos_view_space = volume_uniform.view * volume_uniform.model * vec4(pos_tex - 0.5f, 1.0f); + ray_entry = pos_tex; + gl_Position = volume_uniform.proj * pos_view_space; +} diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt new file mode 100644 index 0000000..5bffa6f --- /dev/null +++ b/src/CMakeLists.txt @@ -0,0 +1,42 @@ +# Copyright (c) 2019, Lachlan Deakin +# +# SPDX-License-Identifier: Apache-2.0 +# +# Licensed under the Apache License, Version 2.0 the "License"; +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +find_package(Boost REQUIRED) + +set(SOURCES + compute_distance_map.cpp + load_volume.cpp + orbit_camera.cpp + volume_component.cpp + volume_render_subpass.cpp + volume_render.cpp + main.cpp +) + +if(MSVC) + add_executable(vrender WIN32 ${SOURCES}) +else() + add_executable(vrender ${SOURCES}) +endif() + +target_link_libraries(vrender framework Boost::boost) + +if (MSVC) + set_property(TARGET vrender PROPERTY VS_DEBUGGER_WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}") +endif() + +install(TARGETS vrender DESTINATION "./") \ No newline at end of file diff --git a/src/compute_distance_map.cpp b/src/compute_distance_map.cpp new file mode 100644 index 0000000..d93bcbd --- /dev/null +++ b/src/compute_distance_map.cpp @@ -0,0 +1,144 @@ +/* Copyright (c) 2019, Lachlan Deakin +* +* SPDX-License-Identifier: Apache-2.0 +* +* Licensed under the Apache License, Version 2.0 the "License"; +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +#include "compute_distance_map.h" + +#include "common/vk_common.h" +#include "platform/filesystem.h" +#include "rendering/render_context.h" + +auto rndUp = [](int x, int y) { return (x + y - 1) / y; }; + +ComputeDistanceMap::ComputeDistanceMap(vkb::RenderContext &render_context) : + render_context(render_context), + compute_shader_occupancy(vkb::fs::read_shader("occupancy_map.comp")), + compute_shader_distance(vkb::fs::read_shader("distance_map.comp")) +{ + // Build all shaders upfront + auto &resource_cache = render_context.get_device().get_resource_cache(); + resource_cache.request_shader_module(VK_SHADER_STAGE_COMPUTE_BIT, compute_shader_occupancy); + resource_cache.request_shader_module(VK_SHADER_STAGE_COMPUTE_BIT, compute_shader_distance); + + // Memory barriers + memory_barrier_fragment_to_compute.old_layout = VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL; + memory_barrier_fragment_to_compute.new_layout = VK_IMAGE_LAYOUT_GENERAL; + memory_barrier_fragment_to_compute.src_access_mask = 0; + memory_barrier_fragment_to_compute.dst_access_mask = VK_ACCESS_SHADER_READ_BIT; + memory_barrier_fragment_to_compute.src_stage_mask = VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT | VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT; + memory_barrier_fragment_to_compute.dst_stage_mask = VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT; + + memory_barrier_write_to_read.old_layout = VK_IMAGE_LAYOUT_GENERAL; + memory_barrier_write_to_read.new_layout = VK_IMAGE_LAYOUT_GENERAL; + memory_barrier_write_to_read.src_access_mask = VK_ACCESS_SHADER_WRITE_BIT; + memory_barrier_write_to_read.dst_access_mask = VK_ACCESS_SHADER_READ_BIT; + memory_barrier_write_to_read.src_stage_mask = VK_PIPELINE_STAGE_ALL_COMMANDS_BIT; + memory_barrier_write_to_read.dst_stage_mask = VK_PIPELINE_STAGE_ALL_COMMANDS_BIT; + + memory_barrier_compute_to_fragment.old_layout = VK_IMAGE_LAYOUT_GENERAL; + memory_barrier_compute_to_fragment.new_layout = VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL; + memory_barrier_compute_to_fragment.src_access_mask = VK_ACCESS_SHADER_WRITE_BIT; + memory_barrier_compute_to_fragment.dst_access_mask = VK_ACCESS_SHADER_READ_BIT; + memory_barrier_compute_to_fragment.src_stage_mask = VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT; + memory_barrier_compute_to_fragment.dst_stage_mask = VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT | VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT; +} + +void ComputeDistanceMap::compute(vkb::CommandBuffer &command_buffer, const Volume::Image &volume, const Volume::Image &distance_map, + const Volume::Image &distance_map_swap, float intensity_min, float intensity_max, float gradient_min, float gradient_max) +{ + // Get shaders from cache + auto &resource_cache = command_buffer.get_device().get_resource_cache(); + auto &shader_module_occupancy = resource_cache.request_shader_module(VK_SHADER_STAGE_COMPUTE_BIT, compute_shader_occupancy); + auto &pipeline_layout_occupancy = resource_cache.request_pipeline_layout({&shader_module_occupancy}); + + // Prepare inputs for compute shader + command_buffer.image_memory_barrier(*volume.image_view, memory_barrier_fragment_to_compute); + command_buffer.image_memory_barrier(*distance_map.image_view, memory_barrier_fragment_to_compute); + + // Run compute shaders + computeOccupancy(command_buffer, volume, distance_map, intensity_min, intensity_max, gradient_min, gradient_max); + computeDistance(command_buffer, distance_map, distance_map_swap); + + // Reset layouts + command_buffer.image_memory_barrier(*volume.image_view, memory_barrier_compute_to_fragment); + command_buffer.image_memory_barrier(*distance_map.image_view, memory_barrier_compute_to_fragment); +} + +void ComputeDistanceMap::computeOccupancy(vkb::CommandBuffer &command_buffer, const Volume::Image &volume, const Volume::Image &occupancy_map, + float intensity_min, float intensity_max, float gradient_min, float gradient_max) +{ + auto &resource_cache = command_buffer.get_device().get_resource_cache(); + auto &shader_module = resource_cache.request_shader_module(VK_SHADER_STAGE_COMPUTE_BIT, compute_shader_occupancy); + auto &pipeline_layout = resource_cache.request_pipeline_layout({&shader_module}); + + // Compute block size + glm::ivec3 block_size( + volume.image->get_extent().width / occupancy_map.image->get_extent().width, + volume.image->get_extent().height / occupancy_map.image->get_extent().height, + volume.image->get_extent().depth / occupancy_map.image->get_extent().depth); + + struct PushConstants + { + glm::vec4 block_size; + float grad_magnitude_modifier; + float intensity_min; + float intensity_max; + float gradient_min; + float gradient_max; + }; + PushConstants pushConstants = {glm::vec4(block_size, 0.0f), 1.0f, intensity_min, intensity_max, gradient_min, gradient_max}; + + // Bind pipeline layout and images + command_buffer.bind_pipeline_layout(pipeline_layout); + command_buffer.bind_input(*volume.image_view, 0, 0, 0); + //command_buffer.bind_input(*gradient.image_view, 0, 1, 0); // Precomputed gradient if, need variant PRECOMPUTED_GRADIENT + //command_buffer.bind_input(*transfer_function.image_view, 0, 2, 0); // Transfer function texture, need variant TRANSFER_FUNCTION_TEXTURE + command_buffer.bind_input(*occupancy_map.image_view, 0, 3, 0); + command_buffer.push_constants(0, pushConstants); + + auto extent = occupancy_map.image->get_extent(); + command_buffer.dispatch(rndUp(extent.width, 8), rndUp(extent.height, 8), rndUp(extent.depth, 8)); + command_buffer.image_memory_barrier(*occupancy_map.image_view, memory_barrier_write_to_read); +} + +void ComputeDistanceMap::computeDistance(vkb::CommandBuffer &command_buffer, const Volume::Image &occupancy_and_distance_map, const Volume::Image &distance_map_swap) +{ + auto &resource_cache = command_buffer.get_device().get_resource_cache(); + auto &shader_module = resource_cache.request_shader_module(VK_SHADER_STAGE_COMPUTE_BIT, compute_shader_distance); + auto &pipeline_layout = resource_cache.request_pipeline_layout({&shader_module}); + + // Bind pipeline layout and images + auto extent = occupancy_and_distance_map.image->get_extent(); + command_buffer.bind_pipeline_layout(pipeline_layout); + command_buffer.bind_input(*occupancy_and_distance_map.image_view, 0, 0, 0); + command_buffer.bind_input(*occupancy_and_distance_map.image_view, 0, 1, 0); + + // Dispatch 1st stage + command_buffer.push_constants(0, 0); + command_buffer.dispatch(rndUp(extent.height, 8), rndUp(extent.depth, 8), 1); + command_buffer.image_memory_barrier(*occupancy_and_distance_map.image_view, memory_barrier_write_to_read); + + // Dispatch 2nd stage + command_buffer.bind_input(*distance_map_swap.image_view, 0, 1, 0); + command_buffer.push_constants(0, 1); + command_buffer.dispatch(rndUp(extent.width, 8), rndUp(extent.depth, 8), 1); + command_buffer.image_memory_barrier(*distance_map_swap.image_view, memory_barrier_write_to_read); + + // Dispatch 3rd stage + command_buffer.push_constants(0, 2); + command_buffer.dispatch(rndUp(extent.width, 8), rndUp(extent.height, 8), 1); + command_buffer.image_memory_barrier(*occupancy_and_distance_map.image_view, memory_barrier_write_to_read); +} diff --git a/src/compute_distance_map.h b/src/compute_distance_map.h new file mode 100644 index 0000000..5b84c12 --- /dev/null +++ b/src/compute_distance_map.h @@ -0,0 +1,53 @@ +/* Copyright (c) 2019, Lachlan Deakin +* +* SPDX-License-Identifier: Apache-2.0 +* +* Licensed under the Apache License, Version 2.0 the "License"; +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +#pragma once + +#include "core/shader_module.h" + +#include "volume_component.h" + +namespace vkb +{ +class RenderContext; +class CommandBuffer; +} // namespace vkb + +class ComputeDistanceMap +{ + public: + ComputeDistanceMap(vkb::RenderContext &render_context); + + virtual ~ComputeDistanceMap() = default; + + void compute(vkb::CommandBuffer &command_buffer, const Volume::Image &volume, const Volume::Image &distance_map, const Volume::Image &distance_map_swap, + float intensity_min, float intensity_max, float gradient_min, float gradient_max); + + private: + void computeOccupancy(vkb::CommandBuffer &command_buffer, const Volume::Image &volume, const Volume::Image &occupancy_map, + float intensity_min, float intensity_max, float gradient_min, float gradient_max); + void computeDistance(vkb::CommandBuffer &command_buffer, const Volume::Image &occupancy_and_distance_map, const Volume::Image &distance_map_swap); + + vkb::RenderContext &render_context; + + vkb::ShaderSource compute_shader_occupancy; + vkb::ShaderSource compute_shader_distance; + + vkb::ImageMemoryBarrier memory_barrier_fragment_to_compute{}; + vkb::ImageMemoryBarrier memory_barrier_write_to_read{}; + vkb::ImageMemoryBarrier memory_barrier_compute_to_fragment{}; +}; \ No newline at end of file diff --git a/src/load_volume.cpp b/src/load_volume.cpp new file mode 100644 index 0000000..8231a78 --- /dev/null +++ b/src/load_volume.cpp @@ -0,0 +1,172 @@ +/* Copyright (c) 2019, Lachlan Deakin +* +* SPDX-License-Identifier: Apache-2.0 +* +* Licensed under the Apache License, Version 2.0 the "License"; +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +#include "load_volume.h" + +#include +#include +#include +#include +#include + +#include + +#include + +#undef min +#undef max + +LoadVolume::Header LoadVolume::load_header(std::string filename_header) +{ + std::ifstream file(filename_header); + if (!file.is_open()) + { + throw std::runtime_error("Failed to open header file"); + } + + Header header; + std::string line; + + // Example header file + /* +832 832 494 # extents +0.001 0.001 0.001 # voxel size +400.0 2538.0 # normalisation range +uint16_t little # data type and endianness (big or little) +1 0 0 90 # rotation axis and angle (degrees) + */ + + // FIXME: Error/sanity checking + + // Extent + std::getline(file, line); + std::istringstream ss(line); + ss >> header.extent.width >> header.extent.height >> header.extent.depth; + + // Voxel size + std::getline(file, line); + ss = std::istringstream(line); + ss >> header.voxel_size.x >> header.voxel_size.y >> header.voxel_size.z; + + // Normalisation range + std::getline(file, line); + ss = std::istringstream(line); + ss >> header.normalisation_range.x >> header.normalisation_range.y; + + // Data type and endianness + std::getline(file, line); + ss = std::istringstream(line); + ss >> header.type >> header.endianness; + + // Angle axis image rotation, angle in degrees + std::getline(file, line); + ss = std::istringstream(line); + glm::vec4 angle_axis; + ss >> angle_axis.x >> angle_axis.y >> angle_axis.z >> angle_axis.w; + + // Compute image transformation + glm::vec3 physical_size = header.voxel_size * glm::vec3(header.extent.width, header.extent.height, header.extent.depth); + header.image_transform = glm::rotate(glm::radians(angle_axis.w), glm::vec3(angle_axis.xyz)) * glm::scale(physical_size); + + return header; +} + +std::vector LoadVolume::load_data(std::string filename_data, const Header &header) +{ + if (header.type == "uint8_t") + { + return load_data_impl(filename_data, header); + } + else if (header.type == "int8_t") + { + return load_data_impl(filename_data, header); + } + else if (header.type == "uint16_t") + { + return load_data_impl(filename_data, header); + } + else if (header.type == "int16_t") + { + return load_data_impl(filename_data, header); + } + else + { + throw std::runtime_error("unsupported image data type"); + } +} + +template +std::vector LoadVolume::load_data_impl(std::string filename_data, const Header &header) +{ + size_t n_voxels = static_cast(header.extent.width) * static_cast(header.extent.height) * static_cast(header.extent.depth); + std::vector image_data(n_voxels); + size_t file_size = image_data.size() * sizeof(T); + + // Load volume into memory + std::ifstream file(filename_data, std::ios::binary); + if (!file.is_open()) + { + throw std::runtime_error("Failed to open data file"); + } + // Get file size + file.seekg(0, std::ios::end); + size_t file_size_actual = file.tellg(); + if (file_size_actual != file_size) + { + throw std::runtime_error("File size does not match expected size for the given image format/dimensions"); + } + file.seekg(0, std::ios::beg); + + // Read into memory + size_t byte_pos = 0; + size_t bytes_left = file_size; + while (bytes_left > 0) + { + size_t bytes_read = std::min(bytes_left, size_t(1e8)); // 1e8 = 100MB + file.read(reinterpret_cast(image_data.data()) + byte_pos, bytes_read); + if (!file) + { + throw std::runtime_error("File error"); + } + byte_pos += bytes_read; + bytes_left -= bytes_read; + } + file.clear(); + + // Change to machine endianness + bool big_endian = header.endianness == "big"; + for (T &i : image_data) + { + if (big_endian) + { + boost::endian::big_to_native_inplace(i); + } + else + { + boost::endian::little_to_native_inplace(i); + } + } + + // Convert to uint8_t + auto min = header.normalisation_range.x; + auto max = header.normalisation_range.y; + std::vector volume_data(n_voxels); + std::transform(image_data.begin(), image_data.end(), volume_data.begin(), + [min, max](T v) -> uint8_t { return static_cast(std::numeric_limits::max() * std::max(0.0f, std::min(1.0f, (static_cast(v) - min) / (max - min)))); }); + + return volume_data; +} diff --git a/src/load_volume.h b/src/load_volume.h new file mode 100644 index 0000000..719070a --- /dev/null +++ b/src/load_volume.h @@ -0,0 +1,47 @@ +/* Copyright (c) 2019, Lachlan Deakin +* +* SPDX-License-Identifier: Apache-2.0 +* +* Licensed under the Apache License, Version 2.0 the "License"; +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +#pragma once + +#include +#include + +#include +#include + +class LoadVolume +{ + public: + struct Header + { + VkExtent3D extent; + glm::vec3 voxel_size; + glm::vec2 normalisation_range; + std::string type; + std::string endianness; + glm::mat4 image_transform; + glm::vec2 tf_range; + float alpha_factor; + }; + + static Header load_header(std::string filename_header); + static std::vector load_data(std::string filename_data, const Header &header); + + private: + template + static std::vector load_data_impl(std::string filename_data, const Header &header); +}; diff --git a/src/main.cpp b/src/main.cpp new file mode 100644 index 0000000..ac6ffef --- /dev/null +++ b/src/main.cpp @@ -0,0 +1,63 @@ +/* Copyright (c) 2019, Arm Limited and Contributors +* +* SPDX-License-Identifier: Apache-2.0 +* +* Licensed under the Apache License, Version 2.0 the "License"; +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +#include "common/logging.h" +#include "platform/platform.h" + +#include "volume_render.h" +#if defined(VK_USE_PLATFORM_WIN32_KHR) +# include "platform/windows/windows_platform.h" +int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, + PSTR lpCmdLine, INT nCmdShow) +{ + vkb::WindowsPlatform platform{hInstance, hPrevInstance, + lpCmdLine, nCmdShow}; +#elif defined(VK_USE_PLATFORM_DISPLAY_KHR) +# include "platform/linux/linux_d2d_platform.h" +int main(int argc, char *argv[]) +{ + vkb::LinuxD2DPlatform platform{argc, argv}; +#else +# include "platform/linux/linux_platform.h" +int main(int argc, char *argv[]) +{ + vkb::LinuxPlatform platform{argc, argv}; +#endif + + try + { + auto sample = create_volume_render(); + sample->set_name("volume_render"); + sample->parse_options(platform.get_arguments()); + + if (platform.initialize(std::move(sample))) + { + platform.main_loop(); + platform.terminate(vkb::ExitCode::Success); + } + else + { + platform.terminate(vkb::ExitCode::UnableToRun); + } + platform.terminate(vkb::ExitCode::Success); + } + catch (const std::exception &e) + { + LOGE(e.what()); + platform.terminate(vkb::ExitCode::FatalError); + } +} diff --git a/src/orbit_camera.cpp b/src/orbit_camera.cpp new file mode 100644 index 0000000..5b1170b --- /dev/null +++ b/src/orbit_camera.cpp @@ -0,0 +1,89 @@ +/* Copyright (c) 2019, Lachlan Deakin +* +* SPDX-License-Identifier: Apache-2.0 +* +* Licensed under the Apache License, Version 2.0 the "License"; +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +#include "orbit_camera.h" + +#include "scene_graph/components/transform.h" +#include "scene_graph/node.h" + +#include +#include + +using namespace vkb; + +OrbitCamera::OrbitCamera(sg::Node &node) : + FreeCamera(node) +{ + recalculate_view(); +} + +void OrbitCamera::recalculate_view() +{ + const glm::mat4 view = glm::translate(glm::vec3(0, 0, zoom_)) * + glm::inverse(glm::translate(position_) * glm::toMat4(rotation_)); + + auto &transform = get_node().get_component(); + transform.set_matrix(glm::inverse(view)); +} + +void OrbitCamera::update(float delta_time) +{ + const float zoomSpeedWheel = 0.02f; + const float zoomSpeedDrag = 0.2f; + const float panSpeed = 0.2f; + constexpr float rotationSpeed = glm::radians(1.0f); // 1 pixel = 1 degree + + bool changed = false; + + //// Zoom + //if (mouseWheelDelta != 0.0f) + //{ + // zoom_ += mouseWheelDelta * zoomSpeedWheel; + // changed = true; + //} + + // Zoom2 + if (mouse_button_pressed[MouseButton::Right] && mouse_move_delta.y != 0.0f) + { + zoom_ += -mouse_move_delta.y * zoomSpeedDrag; + changed = true; + } + + // Rotate + if (mouse_button_pressed[MouseButton::Left] && (mouse_move_delta.x != 0.0f || mouse_move_delta.y != 0.f)) + { + rotation_ = glm::angleAxis(-mouse_move_delta.x * rotationSpeed, glm::vec3(glm::rotate(rotation_, glm::vec4(0, 1, 0, 0)))) * rotation_; + rotation_ = glm::angleAxis(-mouse_move_delta.y * rotationSpeed, glm::vec3(glm::rotate(rotation_, glm::vec4(1, 0, 0, 0)))) * rotation_; + rotation_ = glm::normalize(rotation_); + changed = true; + } + + // Pan + if (mouse_button_pressed[MouseButton::Middle] && (mouse_move_delta.x != 0.0f || mouse_move_delta.y != 0.f)) + { + changed = true; + position_ += glm::vec3(glm::rotate(rotation_, glm::vec4(-mouse_move_delta.x * panSpeed, mouse_move_delta.y * panSpeed, 0, 0))); + } + + if (changed) + { + recalculate_view(); + } + + mouse_move_delta = {}; + touch_move_delta = {}; +} diff --git a/src/orbit_camera.h b/src/orbit_camera.h new file mode 100644 index 0000000..401cfe8 --- /dev/null +++ b/src/orbit_camera.h @@ -0,0 +1,38 @@ +/* Copyright (c) 2019, Lachlan Deakin +* +* SPDX-License-Identifier: Apache-2.0 +* +* Licensed under the Apache License, Version 2.0 the "License"; +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +#pragma once + +#include +#include + +#include "scene_graph/scripts/free_camera.h" + +struct OrbitCamera : public vkb::sg::FreeCamera +{ + OrbitCamera(vkb::sg::Node &node); + virtual ~OrbitCamera() = default; + + virtual void update(float delta_time) override; + + void recalculate_view(); + + // Variables + glm::vec3 position_ = glm::vec3(0, 0, 0); + glm::quat rotation_ = glm::quat(1, 0, 0, 0); + float zoom_ = -100.0f; +}; diff --git a/src/volume_component.cpp b/src/volume_component.cpp new file mode 100644 index 0000000..b272917 --- /dev/null +++ b/src/volume_component.cpp @@ -0,0 +1,192 @@ +/* Copyright (c) 2019, Lachlan Deakin +* +* SPDX-License-Identifier: Apache-2.0 +* +* Licensed under the Apache License, Version 2.0 the "License"; +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +#include "volume_component.h" + +#include "load_volume.h" + +using namespace vkb; + +Volume::Volume(const std::string &name) : + Component{name}, + image_transform(glm::mat4(1.0f)) +{} + +core::Buffer Volume::upload_texture_with_staging(CommandBuffer &command_buffer, const uint8_t *data, VkDeviceSize data_size, const core::Image &image, const core::ImageView &image_view) +{ + // Upload data into the vulkan image memory + core::Buffer stage_buffer{command_buffer.get_device(), data_size, VK_BUFFER_USAGE_TRANSFER_SRC_BIT, VMA_MEMORY_USAGE_CPU_ONLY, 0}; + stage_buffer.update({data, data + data_size}); + + { + // Prepare for transfer + ImageMemoryBarrier memory_barrier{}; + memory_barrier.old_layout = VK_IMAGE_LAYOUT_UNDEFINED; + memory_barrier.new_layout = VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL; + memory_barrier.src_access_mask = 0; + memory_barrier.dst_access_mask = VK_ACCESS_TRANSFER_WRITE_BIT; + memory_barrier.src_stage_mask = VK_PIPELINE_STAGE_HOST_BIT; + memory_barrier.dst_stage_mask = VK_PIPELINE_STAGE_TRANSFER_BIT; + + command_buffer.image_memory_barrier(image_view, memory_barrier); + } + + // Copy + VkBufferImageCopy buffer_copy_region{}; + buffer_copy_region.imageSubresource.layerCount = image_view.get_subresource_range().layerCount; + buffer_copy_region.imageSubresource.aspectMask = image_view.get_subresource_range().aspectMask; + buffer_copy_region.imageExtent = image.get_extent(); + + command_buffer.copy_buffer_to_image(stage_buffer, image, {buffer_copy_region}); + + return stage_buffer; +} + +bool Volume::load_from_file(vkb::RenderContext &render_context, std::string filename, uint32_t distance_map_block_size /* = 4 */) +{ + using namespace vkb; + + auto header = LoadVolume::load_header(filename + ".header"); + std::vector volume_data = LoadVolume::load_data(filename, header); + size_t data_size = volume_data.size() * sizeof(uint8_t); + auto & extent = header.extent; + set_image_transform(header.image_transform); + + auto &device = render_context.get_device(); + + // Create volume image and upload + volume.image = std::make_unique(device, extent, VK_FORMAT_R8_UNORM, + VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_STORAGE_BIT | VK_IMAGE_USAGE_TRANSFER_DST_BIT, + VMA_MEMORY_USAGE_GPU_ONLY); + volume.image_view = std::make_unique(*volume.image, VK_IMAGE_VIEW_TYPE_3D); + + // Create occupancy map and distance map (populated later with compute shader) + VkExtent3D extent_occupancy = {extent.width / distance_map_block_size, extent.height / distance_map_block_size, extent.depth / distance_map_block_size}; + distance_map.image = std::make_unique(device, extent_occupancy, VK_FORMAT_R8_UINT, + VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_STORAGE_BIT, + VMA_MEMORY_USAGE_GPU_ONLY); + distance_map.image_view = std::make_unique(*distance_map.image, VK_IMAGE_VIEW_TYPE_3D); + distance_map_swap.image = std::make_unique(device, extent_occupancy, VK_FORMAT_R8_UINT, + VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_STORAGE_BIT, + VMA_MEMORY_USAGE_GPU_ONLY); + distance_map_swap.image_view = std::make_unique(*distance_map_swap.image, VK_IMAGE_VIEW_TYPE_3D); + + // Begin recording + { + auto & command_buffer = device.request_command_buffer(); + FencePool fence_pool{device}; + command_buffer.begin(VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT); + + auto staging = upload_texture_with_staging(command_buffer, volume_data.data(), data_size, *volume.image, *volume.image_view); + + { + // Prepare volume for fragment shader + ImageMemoryBarrier memory_barrier{}; + memory_barrier.old_layout = VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL; + memory_barrier.new_layout = VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL; + memory_barrier.src_access_mask = 0; + memory_barrier.dst_access_mask = VK_ACCESS_SHADER_READ_BIT; + memory_barrier.src_stage_mask = VK_PIPELINE_STAGE_TRANSFER_BIT; + memory_barrier.dst_stage_mask = VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT; + + command_buffer.image_memory_barrier(*volume.image_view, memory_barrier); + } + + { + // Prepare occupancy and distance map for compute + vkb::ImageMemoryBarrier memory_barrier{}; + memory_barrier.old_layout = VK_IMAGE_LAYOUT_UNDEFINED; + memory_barrier.new_layout = VK_IMAGE_LAYOUT_GENERAL; + memory_barrier.src_access_mask = 0; + memory_barrier.dst_access_mask = VK_ACCESS_SHADER_READ_BIT; + memory_barrier.src_stage_mask = VK_PIPELINE_STAGE_ALL_COMMANDS_BIT; + memory_barrier.dst_stage_mask = VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT | VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT; + command_buffer.image_memory_barrier(*distance_map_swap.image_view, memory_barrier); + memory_barrier.new_layout = VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL; + command_buffer.image_memory_barrier(*distance_map.image_view, memory_barrier); + } + + // End recording + command_buffer.end(); + auto &queue = device.get_queue_by_flags(VK_QUEUE_GRAPHICS_BIT, 0); + queue.submit(command_buffer, device.request_fence()); + + // Wait for the command buffer to finish its work before destroying the staging buffer + device.get_fence_pool().wait(); + device.get_fence_pool().reset(); + device.get_command_pool().reset_pool(); + } + + // Create volume sampler + VkSamplerCreateInfo sampler_info{VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO}; + sampler_info.maxAnisotropy = 1.0f; + sampler_info.magFilter = VK_FILTER_LINEAR; + sampler_info.minFilter = VK_FILTER_LINEAR; + sampler_info.mipmapMode = VK_SAMPLER_MIPMAP_MODE_NEAREST; + sampler_info.addressModeU = VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE; + sampler_info.addressModeV = VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE; + sampler_info.addressModeW = VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE; + sampler_info.borderColor = VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE; + volume.sampler = std::make_unique(device, sampler_info); + + // Create distance map sampler + sampler_info.magFilter = VK_FILTER_NEAREST; + sampler_info.minFilter = VK_FILTER_NEAREST; + distance_map.sampler = std::make_unique(device, sampler_info); + + return true; +} + +void Volume::set_image_transform(const glm::mat4 &mat) +{ + image_transform = mat; +} + +std::type_index Volume::get_type() +{ + return typeid(Volume); +} + +const Volume::Image &Volume::get_volume() +{ + return volume; +} + +const Volume::Image &Volume::get_distance_map() +{ + return distance_map; +} + +const Volume::Image &Volume::get_distance_map_swap() +{ + return distance_map_swap; +} + +glm::mat4 &Volume::get_image_transform() +{ + return image_transform; +} + +void Volume::set_node(vkb::sg::Node &node) +{ + this->node = &node; +} + +vkb::sg::Node *Volume::get_node() const +{ + return node; +} diff --git a/src/volume_component.h b/src/volume_component.h new file mode 100644 index 0000000..e2b52fd --- /dev/null +++ b/src/volume_component.h @@ -0,0 +1,79 @@ +/* Copyright (c) 2019, Lachlan Deakin +* +* SPDX-License-Identifier: Apache-2.0 +* +* Licensed under the Apache License, Version 2.0 the "License"; +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +#pragma once + +#include + +#include "core/image.h" +#include "core/image_view.h" +#include "core/sampler.h" +#include "rendering/render_context.h" +#include "scene_graph/component.h" +#include "scene_graph/node.h" + +class Volume : public vkb::sg::Component +{ + public: + Volume(const std::string &name); + virtual ~Volume() = default; + + bool load_from_file(vkb::RenderContext &render_context, std::string filename, uint32_t distance_map_block_size = 4); + + void set_image_transform(const glm::mat4 &mat); + + virtual std::type_index get_type() override; + + struct Options + { + float sampling_factor = 1.0f; + float voxel_alpha_factor = 1.0f; + + // NOTE: Temporary parameters for a simple grayscale 2D transfer function (in place of texture-based lookup) + float intensity_min = 0.0f; + float intensity_max = 1.0f; + float gradient_min = 0.0f; + float gradient_max = 1.0f; + } options; + + struct Image + { + std::unique_ptr image; + std::unique_ptr image_view; + std::unique_ptr sampler; + }; + + const Image &get_volume(); + //const Image &get_gradient(); + //const Image &get_transfer_function(); + const Image &get_distance_map(); + const Image &get_distance_map_swap(); + + glm::mat4 &get_image_transform(); + + void set_node(vkb::sg::Node &node); + vkb::sg::Node *get_node() const; + + private: + vkb::sg::Node *node; + + Image volume, distance_map, distance_map_swap; + + glm::mat4 image_transform; + + vkb::core::Buffer upload_texture_with_staging(vkb::CommandBuffer &command_buffer, const uint8_t *data, VkDeviceSize data_size, const vkb::core::Image &image, const vkb::core::ImageView &image_view); +}; diff --git a/src/volume_render.cpp b/src/volume_render.cpp new file mode 100644 index 0000000..6643ab7 --- /dev/null +++ b/src/volume_render.cpp @@ -0,0 +1,399 @@ +/* Copyright (c) 2019, Lachlan Deakin +* +* SPDX-License-Identifier: Apache-2.0 +* +* Licensed under the Apache License, Version 2.0 the "License"; +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +#include "volume_render.h" + +#include "gltf_loader.h" +#include "gui.h" +#include "platform/filesystem.h" +#include "platform/platform.h" +#include "rendering/render_context.h" +#include "rendering/render_pipeline.h" +#include "rendering/subpasses/scene_subpass.h" +#include "scene_graph/components/perspective_camera.h" +#include "stats.h" + +#if defined(VK_USE_PLATFORM_ANDROID_KHR) +# include "platform/android/android_platform.h" +#endif + +#include "orbit_camera.h" +#include "volume_render_subpass.h" + +using namespace vkb; + +VolumeRender::VolumeRender() : + camera(nullptr), + block_size(4), + render_sponza_scene(false), + spin_volumes(true) +{ + set_usage( + R"(Volume renderer. + Usage: + vulkan_samples -h | --help + vulkan_samples [--width=] [--height=] ...)" + "\n"); +} + +sg::Node &VolumeRender::add_orbit_camera(const std::string &node_name) +{ + auto camera_node = scene->find_node(node_name); + + if (!camera_node) + { + LOGW("Camera node `{}` not found. Looking for `default_camera` node.", node_name.c_str()); + + camera_node = scene->find_node("default_camera"); + } + + if (!camera_node) + { + throw std::runtime_error("Camera node with name `" + node_name + "` not found."); + } + + if (!camera_node->has_component()) + { + throw std::runtime_error("No camera component found for `" + node_name + "` node."); + } + + auto orbit_camera_script = std::make_unique(*camera_node); + orbit_camera_script->resize(render_context->get_surface_extent().width, render_context->get_surface_extent().height); + + scene->add_component(std::move(orbit_camera_script), *camera_node); + + return *camera_node; +} + +bool VolumeRender::prepare(vkb::Platform &platform) +{ + if (!Application::prepare(platform)) + { + return false; + } + + get_debug_info().insert("fps", fps); + get_debug_info().insert("frame_time", frame_time); + + LOGI("Initializing context"); + + std::vector requested_instance_extensions = get_instance_extensions(); + requested_instance_extensions.push_back(VK_KHR_SURFACE_EXTENSION_NAME); + instance = create_instance(requested_instance_extensions, get_validation_layers()); + + surface = platform.create_surface(instance); + + uint32_t physical_device_count{0}; + VK_CHECK(vkEnumeratePhysicalDevices(instance, &physical_device_count, nullptr)); + + if (physical_device_count < 1) + { + LOGE("Failed to enumerate Vulkan physical device."); + return false; + } + + gpus.resize(physical_device_count); + + VK_CHECK(vkEnumeratePhysicalDevices(instance, &physical_device_count, gpus.data())); + + auto physical_device = get_gpu(); + + // Get supported features from the physical device, and requested features from the sample + vkGetPhysicalDeviceFeatures(physical_device, &supported_device_features); + get_device_features(); + + // Creating vulkan device, specifying the swapchain extension always + std::vector requested_device_extensions = get_device_extensions(); + requested_device_extensions.push_back(VK_KHR_SWAPCHAIN_EXTENSION_NAME); + device = std::make_unique(physical_device, surface, requested_device_extensions, requested_device_features); + + // Preparing render context for rendering + render_context = std::make_unique(*device, surface); + render_context->set_present_mode_priority({VK_PRESENT_MODE_MAILBOX_KHR, VK_PRESENT_MODE_IMMEDIATE_KHR, + VK_PRESENT_MODE_FIFO_KHR}); + + render_context->set_surface_format_priority({{VK_FORMAT_R8G8B8A8_SRGB, VK_COLOR_SPACE_SRGB_NONLINEAR_KHR}, + {VK_FORMAT_B8G8R8A8_SRGB, VK_COLOR_SPACE_SRGB_NONLINEAR_KHR}, + {VK_FORMAT_R8G8B8A8_UNORM, VK_COLOR_SPACE_SRGB_NONLINEAR_KHR}, + {VK_FORMAT_B8G8R8A8_UNORM, VK_COLOR_SPACE_SRGB_NONLINEAR_KHR}}); + + render_context->request_present_mode(VK_PRESENT_MODE_MAILBOX_KHR); // disables vsync + + // render_context->request_image_format(VK_FORMAT_B8G8R8A8_UNORM); + + prepare_render_context(); + + // Prepare compute + compute_distance_map = std::make_unique(*render_context); + + // Load scene and camera + load_scene("scenes/sponza/Sponza01.gltf"); // default scene + //auto &camera_node = add_free_camera("main_camera"); + auto &camera_node = add_orbit_camera("main_camera"); + camera = &camera_node.get_component(); + + // Get input volumetric image filenames + std::vector volume_fns = {"stag_beetle_832x832x494.uint16"}; + if (options.contains("")) + { + volume_fns = options.get_list(""); + } + + // Load all of the volumes + for (auto volume_fn : volume_fns) + { + auto volume = std::make_unique(volume_fn); + volume->load_from_file(*render_context, vkb::fs::path::get(vkb::fs::path::Assets, volume_fn), block_size); + + // Generate distance map (with some default options) + volume->options.gradient_max = 0.2f; + volume->options.intensity_min = 0.1f; + update_distance_map(*volume); + + // Add volume component to scene + auto node = std::make_unique(123, volume_fn); + node->set_component(*volume); + float scale = 1.0f; + node->get_transform().set_scale(glm::vec3(100.0f * scale)); + volume->set_node(*node); + scene->add_node(std::move(node)); + scene->add_component(std::move(volume)); + } + + // Init render pipeline + init_render_pipeline(); + + // Add a GUI with the stats you want to monitor + stats = std::make_unique(std::set{vkb::StatIndex::frame_times}); + gui = std::make_unique(*render_context, platform.get_dpi_factor()); + + return true; +} + +void VolumeRender::update(float delta_time) +{ + if (spin_volumes) + { + auto volumes = scene->get_components(); + for (auto volume : volumes) + { + // Spin volumes + auto &transform = volume->get_node()->get_transform(); + auto rotation = transform.get_rotation(); + transform.set_rotation(glm::rotate(rotation, glm::radians(90.0f) * delta_time, glm::vec3(0, 1, 0))); + } + } + + VulkanSample::update(delta_time); +} + +/** +* @return Load store info to clear all and store only the swapchain +*/ +std::vector get_clear_all_store_swapchain() +{ + // Clear every attachment and store only swapchain + std::vector load_store{2}; + + // Swapchain + load_store[0].load_op = VK_ATTACHMENT_LOAD_OP_CLEAR; + load_store[0].store_op = VK_ATTACHMENT_STORE_OP_STORE; + + // Depth + load_store[1].load_op = VK_ATTACHMENT_LOAD_OP_CLEAR; + load_store[1].store_op = VK_ATTACHMENT_STORE_OP_STORE; + + return load_store; +} + +void VolumeRender::update_distance_map(Volume &volume) +{ + const auto start_tf = std::chrono::system_clock::now(); + auto & device = render_context->get_device(); + auto & command_buffer = device.request_command_buffer(); + command_buffer.begin(VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT); + + // Generate a distance map for empty space skipping acceleration + compute_distance_map->compute(command_buffer, volume.get_volume(), volume.get_distance_map(), volume.get_distance_map_swap(), + volume.options.intensity_min, volume.options.intensity_max, volume.options.gradient_min, volume.options.gradient_max); + + command_buffer.end(); + auto &queue = device.get_queue_by_flags(VK_QUEUE_GRAPHICS_BIT | VK_QUEUE_COMPUTE_BIT, 0); + queue.submit(command_buffer, device.request_fence()); + device.get_fence_pool().wait(); + device.get_fence_pool().reset(); + device.get_command_pool().reset_pool(); + const std::chrono::duration dur_tf = std::chrono::system_clock::now() - start_tf; + LOGI("Updated occupancy/distance map in {}ms", dur_tf.count()); +} + +void VolumeRender::init_render_pipeline() +{ + // Render pipeline + auto render_pipeline = vkb::RenderPipeline(); + + if (render_sponza_scene) + { + // Standard scene subpass + vkb::ShaderSource vert_shader("base.vert"); + vkb::ShaderSource frag_shader("base.frag"); + auto scene_subpass = std::make_unique(*render_context, std::move(vert_shader), std::move(frag_shader), *scene, *camera); + render_pipeline.add_subpass(std::move(scene_subpass)); + } + + // Add volume renderer subpass + volume_render_options.depth_attachment = render_sponza_scene; + auto volume_subpass = std::make_unique(*render_context, *scene, *camera, volume_render_options); + if (volume_render_options.depth_attachment) + { + volume_subpass->set_input_attachments({1}); + // FIXME: Ideally depth would be an input and an output here, but Vulkan-Samples would need a few modifications for depth to be VK_IMAGE_LAYOUT_GENERAL and for correct memory barriers + } + render_pipeline.add_subpass(std::move(volume_subpass)); + + render_pipeline.set_load_store(get_clear_all_store_swapchain()); + + set_render_pipeline(std::move(render_pipeline)); +} + +void VolumeRender::get_device_features() +{ + requested_device_features.shaderClipDistance = supported_device_features.shaderClipDistance; +} + +void VolumeRender::prepare_render_context() +{ + get_render_context().prepare(1, std::bind(&VolumeRender::create_render_target, this, std::placeholders::_1)); +} + +vkb::RenderTarget VolumeRender::create_render_target(vkb::core::Image &&swapchain_image) +{ + auto &device = swapchain_image.get_device(); + auto &extent = swapchain_image.get_extent(); + + vkb::core::Image depth_image{device, + extent, + VK_FORMAT_D32_SFLOAT, + VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT | VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT, + VMA_MEMORY_USAGE_GPU_ONLY}; + + std::vector images; + + // Attachment 0 + images.push_back(std::move(swapchain_image)); + + // Attachment 1 + images.push_back(std::move(depth_image)); + + return vkb::RenderTarget{std::move(images)}; +} + +void VolumeRender::draw_gui() +{ + auto volumes = scene->get_components(); + gui->show_options_window( + /* body = */ [this, &volumes]() { + auto gap = []() { + ImGui::SameLine(); + ImGui::Dummy(ImVec2(20.0f, 0.0f)); + ImGui::SameLine(); + }; + + for (auto volume : volumes) + { + ImGui::PushID(volume->get_name().c_str()); + ImGui::Text("%s", volume->get_name().c_str()); + gap(); + auto &transform = volume->get_node()->get_transform(); + auto translation = transform.get_translation(); + ImGui::PushItemWidth(ImGui::GetWindowSize().x * 0.15f); + if (ImGui::DragFloat3("XYZ", &translation.x, 0.1f)) + { + transform.set_translation(translation); + } + ImGui::PopItemWidth(); + gap(); + ImGui::PushItemWidth(ImGui::GetWindowSize().x * 0.1f); + ImGui::SliderFloat("Sampling", &volume->options.sampling_factor, 0.5f, 3.0f, "%.3f", 2.0f); + gap(); + ImGui::SliderFloat("Alpha", &volume->options.voxel_alpha_factor, 0.0f, 2.0f, "%.3f", 2.0f); + ImGui::PopItemWidth(); + + // Transfer function + ImGui::Text(" Transfer function:"); + gap(); + bool tf_changed = false; + ImGui::PushItemWidth(ImGui::GetWindowSize().x * 0.1f); + tf_changed |= ImGui::SliderFloat("##Intensity min", &volume->options.intensity_min, 0.0f, volume->options.intensity_max); + ImGui::SameLine(); + tf_changed |= ImGui::SliderFloat("Intensity", &volume->options.intensity_max, volume->options.intensity_min, 1.0f); + gap(); + tf_changed |= ImGui::SliderFloat("##Gradient min", &volume->options.gradient_min, 0.0f, volume->options.gradient_max); + ImGui::SameLine(); + tf_changed |= ImGui::SliderFloat("Gradient", &volume->options.gradient_max, volume->options.gradient_min, 1.0f); + ImGui::PopItemWidth(); + + if (tf_changed) + { + update_distance_map(*volume); + } + ImGui::PopID(); + } + + // Shared volume rendering options + bool changed = false; + ImGui::Text("ESS method:"); + ImGui::SameLine(); + changed |= ImGui::RadioButton("Distance", reinterpret_cast(&volume_render_options.skipping_type), static_cast(VolumeRenderSubpass::SkippingType::Distance)); + ImGui::SameLine(); + changed |= ImGui::RadioButton("Block", reinterpret_cast(&volume_render_options.skipping_type), static_cast(VolumeRenderSubpass::SkippingType::Block)); + ImGui::SameLine(); + changed |= ImGui::RadioButton("None##skipping", reinterpret_cast(&volume_render_options.skipping_type), static_cast(VolumeRenderSubpass::SkippingType::None)); + gap(); + changed |= ImGui::Checkbox("ERT", &volume_render_options.early_ray_termination); + gap(); + ImGui::PushItemWidth(ImGui::GetWindowSize().x * 0.1f); + changed |= ImGui::SliderFloat("Clip dist", &volume_render_options.clip_distance, 5.0f, 500.0f, "%.3f", 2.0f); + ImGui::PopItemWidth(); + + // Tests + changed |= ImGui::Checkbox("Render sponza scene", &render_sponza_scene); + gap(); + ImGui::Checkbox("Spin volumes", &spin_volumes); + gap(); + ImGui::Text("Test:"); + ImGui::SameLine(); + changed |= ImGui::RadioButton("None##test", reinterpret_cast(&volume_render_options.test), static_cast(VolumeRenderSubpass::Test::None)); + ImGui::SameLine(); + changed |= ImGui::RadioButton("Entry", reinterpret_cast(&volume_render_options.test), static_cast(VolumeRenderSubpass::Test::RayEntry)); + ImGui::SameLine(); + changed |= ImGui::RadioButton("Exit", reinterpret_cast(&volume_render_options.test), static_cast(VolumeRenderSubpass::Test::RayExit)); + ImGui::SameLine(); + changed |= ImGui::RadioButton("NumSamples", reinterpret_cast(&volume_render_options.test), static_cast(VolumeRenderSubpass::Test::NumTextureSamples)); + + if (changed) + { + init_render_pipeline(); + } + }, + /* lines = */ static_cast(2 + 2 * volumes.size())); +} + +std::unique_ptr create_volume_render() +{ + return std::make_unique(); +} diff --git a/src/volume_render.h b/src/volume_render.h new file mode 100644 index 0000000..68f9523 --- /dev/null +++ b/src/volume_render.h @@ -0,0 +1,60 @@ +/* Copyright (c) 2019, Lachlan Deakin +* +* SPDX-License-Identifier: Apache-2.0 +* +* Licensed under the Apache License, Version 2.0 the "License"; +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +#pragma once + +#include "vulkan_sample.h" + +#include "scene_graph/components/camera.h" + +#include "compute_distance_map.h" +#include "volume_render_subpass.h" + +class VolumeRender : public vkb::VulkanSample +{ + public: + VolumeRender(); + virtual ~VolumeRender() = default; + + virtual bool prepare(vkb::Platform &platform) override; + + virtual void update(float delta_time) override; + + virtual void get_device_features() override; + + private: + virtual void prepare_render_context() override; + vkb::RenderTarget create_render_target(vkb::core::Image &&swapchain_image); + + vkb::sg::Node &add_orbit_camera(const std::string &node_name); + void update_distance_map(Volume &volume); + void init_render_pipeline(); + + virtual void draw_gui() override; + + vkb::sg::Camera *camera; + + std::unique_ptr compute_distance_map; + + // Options + int block_size; + VolumeRenderSubpass::Options volume_render_options; + bool render_sponza_scene; + bool spin_volumes; +}; + +std::unique_ptr create_volume_render(); diff --git a/src/volume_render_subpass.cpp b/src/volume_render_subpass.cpp new file mode 100644 index 0000000..1326061 --- /dev/null +++ b/src/volume_render_subpass.cpp @@ -0,0 +1,260 @@ +/* Copyright (c) 2019, Lachlan Deakin +* +* SPDX-License-Identifier: Apache-2.0 +* +* Licensed under the Apache License, Version 2.0 the "License"; +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +#include "volume_render_subpass.h" + +#include + +#include "platform/filesystem.h" +#include "scene_graph/node.h" + +using namespace vkb; + +template +core::Buffer stage_buffer(vkb::CommandBuffer &command_buffer, const std::vector &data, vkb::core::Buffer &buffer_dst) +{ + core::Buffer stage_buffer{command_buffer.get_device(), + data.size() * sizeof(T), + VK_BUFFER_USAGE_TRANSFER_SRC_BIT, + VMA_MEMORY_USAGE_CPU_ONLY}; + + stage_buffer.update(reinterpret_cast(data.data()), stage_buffer.get_size()); + command_buffer.copy_buffer(stage_buffer, buffer_dst, stage_buffer.get_size()); + + return stage_buffer; +} + +VolumeRenderSubpass::VolumeRenderSubpass(RenderContext &render_context, sg::Scene &scene, sg::Camera &cam, Options options) : + Subpass{render_context, + vkb::fs::read_shader("volume_render_clipped.vert"), + vkb::fs::read_shader("volume_render.frag")}, + vertex_source_plane_intersection(vkb::fs::read_shader("volume_render_plane_intersection.vert")), + camera{cam}, + volumes{scene.get_components()}, + options(options) +{ + if (options.skipping_type == SkippingType::Block) + { + shader_variant.add_define("BLOCK_SKIP"); + } + else if (options.skipping_type == SkippingType::None) + { + shader_variant.add_define("DISABLE_SKIP"); + } + if (!options.early_ray_termination) + { + shader_variant.add_define("DISABLE_EARLY_RAY_TERMINATION"); + } + if (options.depth_attachment) + { + shader_variant.add_define("DEPTH_ATTACHMENT"); + } + if (options.test == Test::RayEntry) + { + shader_variant.add_define("SHOW_RAY_ENTRY"); + } + if (options.test == Test::RayExit) + { + shader_variant.add_define("SHOW_RAY_EXIT"); + } + if (options.test == Test::NumTextureSamples) + { + shader_variant.add_define("SHOW_NUM_SAMPLES"); + } + + // Build all shaders upfront + auto &resource_cache = render_context.get_device().get_resource_cache(); + resource_cache.request_shader_module(VK_SHADER_STAGE_VERTEX_BIT, get_vertex_shader(), shader_variant); + resource_cache.request_shader_module(VK_SHADER_STAGE_VERTEX_BIT, vertex_source_plane_intersection, shader_variant); + resource_cache.request_shader_module(VK_SHADER_STAGE_FRAGMENT_BIT, get_fragment_shader(), shader_variant); + + // FIXME: split the uniform into global parameters, per volume parameters and per-frame parameters (which should be dynamic) + //vert_module.set_resource_dynamic("VolumeRenderUniform"); + + auto &device = render_context.get_device(); + + // Create vertex and index buffers + auto &command_buffer = device.request_command_buffer(); + command_buffer.begin(VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT); + std::vector transient_buffers; + + { + auto vertices = std::vector({{-0.5f, -0.5f, -0.5f}, + {-0.5f, -0.5f, 0.5f}, + {-0.5f, 0.5f, -0.5f}, + {-0.5f, 0.5f, 0.5f}, + {0.5f, -0.5f, -0.5f}, + {0.5f, -0.5f, 0.5f}, + {0.5f, 0.5f, -0.5f}, + {0.5f, 0.5f, 0.5f}}); + vertex_buffer = std::make_unique(device, + vertices.size() * sizeof(glm::vec3), + VK_BUFFER_USAGE_TRANSFER_DST_BIT | VK_BUFFER_USAGE_VERTEX_BUFFER_BIT, + VMA_MEMORY_USAGE_GPU_ONLY); + transient_buffers.push_back(stage_buffer(command_buffer, vertices, *vertex_buffer)); + } + + { + std::vector indices = {3, 0, 1, 7, 2, 3, 5, 6, 7, 1, 4, 5, 2, 4, 0, 7, 1, 5, + 3, 2, 0, 7, 6, 2, 5, 4, 6, 1, 0, 4, 2, 6, 4, 7, 3, 1}; + index_count = static_cast(indices.size()); + index_buffer = std::make_unique(device, + indices.size() * sizeof(uint32_t), + VK_BUFFER_USAGE_TRANSFER_DST_BIT | VK_BUFFER_USAGE_INDEX_BUFFER_BIT, + VMA_MEMORY_USAGE_GPU_ONLY); + transient_buffers.push_back(stage_buffer(command_buffer, indices, *index_buffer)); + } + + { + std::vector indices = {0, 2, 1, 0, 5, 2, 4, 2, 5, 2, 4, 3}; + index_count_plane_intersection = static_cast(indices.size()); + index_buffer_plane_intersection = std::make_unique(device, + indices.size() * sizeof(uint32_t), + VK_BUFFER_USAGE_TRANSFER_DST_BIT | VK_BUFFER_USAGE_INDEX_BUFFER_BIT, + VMA_MEMORY_USAGE_GPU_ONLY); + transient_buffers.push_back(stage_buffer(command_buffer, indices, *index_buffer_plane_intersection)); + } + + command_buffer.end(); + + auto &queue = device.get_queue_by_flags(VK_QUEUE_GRAPHICS_BIT, 0); + queue.submit(command_buffer, device.request_fence()); + + device.get_fence_pool().wait(); + device.get_fence_pool().reset(); + device.get_command_pool().reset_pool(); + + transient_buffers.clear(); +} + +void VolumeRenderSubpass::draw(CommandBuffer &command_buffer) +{ + camera.get_node()->get_transform().get_world_matrix(); // calls update_world_transform + + // Get shaders from cache + auto &resource_cache = command_buffer.get_device().get_resource_cache(); + auto &vert_shader_module = resource_cache.request_shader_module(VK_SHADER_STAGE_VERTEX_BIT, get_vertex_shader(), shader_variant); + auto &vert_shader_module_plane_intersection = resource_cache.request_shader_module(VK_SHADER_STAGE_VERTEX_BIT, vertex_source_plane_intersection, shader_variant); + auto &frag_shader_module = resource_cache.request_shader_module(VK_SHADER_STAGE_FRAGMENT_BIT, get_fragment_shader(), shader_variant); + + std::vector shader_modules{&vert_shader_module, &frag_shader_module}; + std::vector shader_modules_plane_intersection{&vert_shader_module_plane_intersection, &frag_shader_module}; + + // Create pipeline layout and bind it + auto &pipeline_layout = resource_cache.request_pipeline_layout(shader_modules); + auto &pipeline_layout_plane_intersection = resource_cache.request_pipeline_layout(shader_modules_plane_intersection); + + // Enable alpha blending + ColorBlendAttachmentState color_blend_attachment{}; + color_blend_attachment.blend_enable = VK_TRUE; + //color_blend_attachment.src_color_blend_factor = VK_BLEND_FACTOR_SRC_ALPHA; + color_blend_attachment.dst_color_blend_factor = VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA; + color_blend_attachment.src_alpha_blend_factor = VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA; + + ColorBlendState color_blend_state{}; + color_blend_state.attachments.resize(get_output_attachments().size()); + color_blend_state.attachments[0] = color_blend_attachment; + command_buffer.set_color_blend_state(color_blend_state); + + command_buffer.set_depth_stencil_state(get_depth_stencil_state()); + + // Get image views of the attachments + auto &render_target = get_render_context().get_active_frame().get_render_target(); + auto &target_views = render_target.get_views(); + + // Bind depth as input attachment + auto &depth_view = target_views.at(1); + command_buffer.bind_input(depth_view, 0, 0, 0); + + // Set cull mode to back + RasterizationState rasterization_state; + rasterization_state.cull_mode = VK_CULL_MODE_BACK_BIT; + command_buffer.set_rasterization_state(rasterization_state); + + // Vertex input state + VkVertexInputBindingDescription vertex_input_binding{}; + vertex_input_binding.stride = to_u32(sizeof(glm::vec3)); + + // Location 0: Position + VkVertexInputAttributeDescription pos_attr{}; + pos_attr.format = VK_FORMAT_R32G32B32_SFLOAT; + pos_attr.offset = 0; + + VertexInputState vertex_input_state{}; + vertex_input_state.bindings = {vertex_input_binding}; + vertex_input_state.attributes = {pos_attr}; + command_buffer.set_vertex_input_state(vertex_input_state); + + for (auto volume : volumes) + { + // Populate uniform values + VolumeRenderUniform volume_render_uniform; + volume_render_uniform.sampling_factor = volume->options.sampling_factor; + volume_render_uniform.voxel_alpha_factor = volume->options.voxel_alpha_factor; + volume_render_uniform.grad_magnitude_modifier = 1.0f; + volume_render_uniform.intensity_min = volume->options.intensity_min; + volume_render_uniform.intensity_max = volume->options.intensity_max; + volume_render_uniform.gradient_min = volume->options.gradient_min; + volume_render_uniform.gradient_max = volume->options.gradient_max; + volume_render_uniform.camera_view = camera.get_view(); + volume_render_uniform.camera_proj = vkb::vulkan_style_projection(camera.get_projection()); + volume_render_uniform.camera_view_proj_inv = glm::inverse(volume_render_uniform.camera_proj * volume_render_uniform.camera_view); + volume_render_uniform.model = volume->get_node()->get_transform().get_matrix() * volume->get_image_transform(); + volume_render_uniform.model_inv = glm::inverse(volume_render_uniform.model); + + // Coordinate transformations between global, model (local) and texture coordinates + glm::mat4 model_to_tex = glm::translate(glm::vec3(0.5f)); // we just use a unit cube from [-0.5 to 0.5] so putting it at [0-1] is just a translation + glm::mat4 global_to_tex = model_to_tex * volume_render_uniform.model_inv; + + // Camera position in texture coordinates + const glm::mat4 viewInv = glm::inverse(camera.get_view()); + const glm::vec3 cam_pos_global = viewInv[3]; + const glm::vec3 cam_pos_model = volume_render_uniform.model_inv * glm::vec4(cam_pos_global, 1.0f); + volume_render_uniform.camera_pos_tex = model_to_tex * glm::vec4(cam_pos_model, 1.0f); + + // Clip plane in global coordinates and texture coordinates + const glm::vec3 cam_dir_global = glm::vec3(viewInv * glm::vec4(0, 0, -1, 0)); + volume_render_uniform.plane = glm::vec4(cam_dir_global, -options.clip_distance - glm::dot(cam_pos_global, cam_dir_global)); + volume_render_uniform.plane_tex = glm::inverseTranspose(global_to_tex) * volume_render_uniform.plane; // plane transform is inverse transpose of equivalent vector transform + + // Get the "front" index of the cube (i.e. vertex furthest behind the clipping plane) + volume_render_uniform.front_index = (volume_render_uniform.plane_tex.x < 0 ? 1 : 0) + + (volume_render_uniform.plane_tex.y < 0 ? 2 : 0) + + (volume_render_uniform.plane_tex.z < 0 ? 4 : 0); + + // Allocate a buffer using the buffer pool from the active frame to store uniform values and bind it + auto &render_frame = get_render_context().get_active_frame(); + auto allocation = render_frame.allocate_buffer(VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT, sizeof(VolumeRenderUniform)); + allocation.update(volume_render_uniform); + + // Draw clipped cuboid + command_buffer.bind_pipeline_layout(pipeline_layout); + command_buffer.bind_buffer(allocation.get_buffer(), allocation.get_offset(), allocation.get_size(), 0, 1, 0); + command_buffer.bind_image(*volume->get_volume().image_view, *volume->get_volume().sampler, 0, 2, 0); + //command_buffer.bind_image(*volume->get_gradient().image_view, *volume->get_gradient().sampler, 0, 3, 0); + //command_buffer.bind_image(*volume->get_transfer_function().image_view, *volume->get_transfer_function().sampler, 0, 4, 0); + command_buffer.bind_image(*volume->get_distance_map().image_view, *volume->get_distance_map().sampler, 0, 5, 0); + command_buffer.bind_vertex_buffers(0, {*vertex_buffer}, {0}); + command_buffer.bind_index_buffer(*index_buffer, 0, VkIndexType::VK_INDEX_TYPE_UINT32); + command_buffer.draw_indexed(index_count, 1, 0, 0, 0); + + // Draw box plane intersection + command_buffer.bind_pipeline_layout(pipeline_layout_plane_intersection); + command_buffer.bind_index_buffer(*index_buffer_plane_intersection, 0, VkIndexType::VK_INDEX_TYPE_UINT32); + command_buffer.draw_indexed(index_count_plane_intersection, 1, 0, 0, 0); + } +} \ No newline at end of file diff --git a/src/volume_render_subpass.h b/src/volume_render_subpass.h new file mode 100644 index 0000000..ed18210 --- /dev/null +++ b/src/volume_render_subpass.h @@ -0,0 +1,99 @@ +/* Copyright (c) 2019, Lachlan Deakin +* +* SPDX-License-Identifier: Apache-2.0 +* +* Licensed under the Apache License, Version 2.0 the "License"; +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +#pragma once + +#include "core/buffer.h" +#include "core/command_buffer.h" +#include "rendering/render_context.h" +#include "rendering/subpass.h" +#include "scene_graph/components/camera.h" +#include "scene_graph/scene.h" + +#include "volume_component.h" + +///** +//* @brief Uniform stucture for volume rendering +//* Camera position in texture coordinates is used to find the ray intersection with the back of the cube. +//* model_inv and plane used for box/plane intersection. +//*/ +struct VolumeRenderUniform +{ + glm::mat4 model; // model matrix + glm::mat4 model_inv; // model matrix (inverse) + glm::mat4 camera_view; // camera view matrix + glm::mat4 camera_proj; // camera projection matrix + glm::mat4 camera_view_proj_inv; // camera view projection matrix (inverse) + glm::vec4 plane; // plane in global coordinates + glm::vec4 plane_tex; // plane in texture coordinates + glm::vec4 camera_pos_tex; // camera position in texture coordinates + int front_index; // index of the front vertex on the cube (see volume_render_plane_intersection.vert) + float sampling_factor; // controls the voxel sampling density + float voxel_alpha_factor; // all voxel alpha values are multiplied by this factor + float grad_magnitude_modifier; // all gradient magnitudes are multiplied by this factor (to compensate for low image gradients) + + // NOTE: Temporary parameters for 2D transfer function (in place of texture) + float intensity_min; + float intensity_max; + float gradient_min; + float gradient_max; +}; + +class VolumeRenderSubpass : public vkb::Subpass +{ + public: + enum class SkippingType : int + { + Distance = 0, + Block = 1, + None = 2, + }; + + enum class Test : int + { + None = 0, + RayEntry = 1, + RayExit = 2, + NumTextureSamples = 3, + }; + + struct Options + { + SkippingType skipping_type = SkippingType::Distance; + float clip_distance = 50.0f; + bool early_ray_termination = true; + bool depth_attachment = false; + Test test = Test::None; + }; + + VolumeRenderSubpass(vkb::RenderContext &render_context, vkb::sg::Scene &scene, vkb::sg::Camera &camera, Options options); + virtual ~VolumeRenderSubpass() = default; + + void draw(vkb::CommandBuffer &command_buffer) override; + + private: + vkb::ShaderSource vertex_source_plane_intersection; + vkb::sg::Camera & camera; + std::vector volumes; + + std::unique_ptr vertex_buffer, index_buffer, index_buffer_plane_intersection; + uint32_t index_count, index_count_plane_intersection; + + // Options + Options options; + vkb::ShaderVariant shader_variant{}; +}; diff --git a/third_party/Vulkan-samples b/third_party/Vulkan-samples new file mode 160000 index 0000000..dddd54d --- /dev/null +++ b/third_party/Vulkan-samples @@ -0,0 +1 @@ +Subproject commit dddd54d4fb0ef675757e5270d44e2fe84bf73bb9 diff --git a/vulkan_samples.patch b/vulkan_samples.patch new file mode 100644 index 0000000..0fbfa06 --- /dev/null +++ b/vulkan_samples.patch @@ -0,0 +1,38 @@ +diff --git a/framework/heightmap.cpp b/framework/heightmap.cpp +index 3a1e9ec..7a3c803 100644 +--- a/framework/heightmap.cpp ++++ b/framework/heightmap.cpp +@@ -17,6 +17,7 @@ + + #include "heightmap.h" + ++#include + #include + #include + #include +diff --git a/framework/scene_graph/scripts/free_camera.h b/framework/scene_graph/scripts/free_camera.h +index 5e9ecf6..7317f39 100644 +--- a/framework/scene_graph/scripts/free_camera.h ++++ b/framework/scene_graph/scripts/free_camera.h +@@ -60,7 +60,7 @@ class FreeCamera : public Script + + virtual void resize(uint32_t width, uint32_t height) override; + +- private: ++ protected: + float speed_multiplier{3.0f}; + + glm::vec2 mouse_move_delta{0.0f}; +diff --git a/framework/vulkan_sample.cpp b/framework/vulkan_sample.cpp +index bb8b9da..cbf95ac 100644 +--- a/framework/vulkan_sample.cpp ++++ b/framework/vulkan_sample.cpp +@@ -121,6 +121,8 @@ VulkanSample::~VulkanSample() + device->wait_idle(); + } + ++ render_pipeline.reset(); ++ + scene.reset(); + + stats.reset();