├── .clang_complete
├── .doxyfile
├── .gitignore
├── .vimrc
├── CMakeLists.txt
├── Config.cmake.in
├── LICENSE
├── README.md
├── cmake
└── FindVulkan.cmake
├── doc
└── html
│ ├── annotated.html
│ ├── arrowdown.png
│ ├── arrowright.png
│ ├── bc_s.png
│ ├── bdwn.png
│ ├── classes.html
│ ├── classvku_1_1_color_attachment_image-members.html
│ ├── classvku_1_1_color_attachment_image.html
│ ├── classvku_1_1_color_attachment_image.png
│ ├── classvku_1_1_compute_pipeline_maker-members.html
│ ├── classvku_1_1_compute_pipeline_maker.html
│ ├── classvku_1_1_depth_stencil_image-members.html
│ ├── classvku_1_1_depth_stencil_image.html
│ ├── classvku_1_1_depth_stencil_image.png
│ ├── classvku_1_1_descriptor_set_layout_maker-members.html
│ ├── classvku_1_1_descriptor_set_layout_maker.html
│ ├── classvku_1_1_descriptor_set_maker-members.html
│ ├── classvku_1_1_descriptor_set_maker.html
│ ├── classvku_1_1_descriptor_set_updater-members.html
│ ├── classvku_1_1_descriptor_set_updater.html
│ ├── classvku_1_1_framework-members.html
│ ├── classvku_1_1_framework.html
│ ├── classvku_1_1_generic_buffer-members.html
│ ├── classvku_1_1_generic_buffer.html
│ ├── classvku_1_1_generic_buffer.png
│ ├── classvku_1_1_generic_image-members.html
│ ├── classvku_1_1_generic_image.html
│ ├── classvku_1_1_generic_image.png
│ ├── classvku_1_1_host_index_buffer-members.html
│ ├── classvku_1_1_host_index_buffer.html
│ ├── classvku_1_1_host_index_buffer.png
│ ├── classvku_1_1_host_vertex_buffer-members.html
│ ├── classvku_1_1_host_vertex_buffer.html
│ ├── classvku_1_1_host_vertex_buffer.png
│ ├── classvku_1_1_index_buffer-members.html
│ ├── classvku_1_1_index_buffer.html
│ ├── classvku_1_1_index_buffer.png
│ ├── classvku_1_1_k_t_x_file_layout-members.html
│ ├── classvku_1_1_k_t_x_file_layout.html
│ ├── classvku_1_1_pipeline_layout_maker-members.html
│ ├── classvku_1_1_pipeline_layout_maker.html
│ ├── classvku_1_1_pipeline_maker-members.html
│ ├── classvku_1_1_pipeline_maker.html
│ ├── classvku_1_1_renderpass_maker-members.html
│ ├── classvku_1_1_renderpass_maker.html
│ ├── classvku_1_1_sampler_maker-members.html
│ ├── classvku_1_1_sampler_maker.html
│ ├── classvku_1_1_shader_module-members.html
│ ├── classvku_1_1_shader_module.html
│ ├── classvku_1_1_texture_image2_d-members.html
│ ├── classvku_1_1_texture_image2_d.html
│ ├── classvku_1_1_texture_image2_d.png
│ ├── classvku_1_1_texture_image_cube-members.html
│ ├── classvku_1_1_texture_image_cube.html
│ ├── classvku_1_1_texture_image_cube.png
│ ├── classvku_1_1_uniform_buffer-members.html
│ ├── classvku_1_1_uniform_buffer.html
│ ├── classvku_1_1_uniform_buffer.png
│ ├── classvku_1_1_vertex_buffer-members.html
│ ├── classvku_1_1_vertex_buffer.html
│ ├── classvku_1_1_vertex_buffer.png
│ ├── classvku_1_1_window-members.html
│ ├── classvku_1_1_window.html
│ ├── closed.png
│ ├── dir_995fe1d227c607390ad9698aa181d942.html
│ ├── dir_d44c64559bbebec7f509842c48db8b23.html
│ ├── doc.png
│ ├── doxygen.css
│ ├── doxygen.png
│ ├── dynsections.js
│ ├── files.html
│ ├── folderclosed.png
│ ├── folderopen.png
│ ├── functions.html
│ ├── functions_func.html
│ ├── hierarchy.html
│ ├── index.html
│ ├── jquery.js
│ ├── menu.js
│ ├── menudata.js
│ ├── namespacemembers.html
│ ├── namespacemembers_func.html
│ ├── namespaces.html
│ ├── namespacevku.html
│ ├── nav_f.png
│ ├── nav_g.png
│ ├── nav_h.png
│ ├── open.png
│ ├── search
│ ├── all_0.html
│ ├── all_0.js
│ ├── all_1.html
│ ├── all_1.js
│ ├── all_10.html
│ ├── all_10.js
│ ├── all_11.html
│ ├── all_11.js
│ ├── all_12.html
│ ├── all_12.js
│ ├── all_13.html
│ ├── all_13.js
│ ├── all_14.html
│ ├── all_14.js
│ ├── all_15.html
│ ├── all_15.js
│ ├── all_2.html
│ ├── all_2.js
│ ├── all_3.html
│ ├── all_3.js
│ ├── all_4.html
│ ├── all_4.js
│ ├── all_5.html
│ ├── all_5.js
│ ├── all_6.html
│ ├── all_6.js
│ ├── all_7.html
│ ├── all_7.js
│ ├── all_8.html
│ ├── all_8.js
│ ├── all_9.html
│ ├── all_9.js
│ ├── all_a.html
│ ├── all_a.js
│ ├── all_b.html
│ ├── all_b.js
│ ├── all_c.html
│ ├── all_c.js
│ ├── all_d.html
│ ├── all_d.js
│ ├── all_e.html
│ ├── all_e.js
│ ├── all_f.html
│ ├── all_f.js
│ ├── classes_0.html
│ ├── classes_0.js
│ ├── classes_1.html
│ ├── classes_1.js
│ ├── classes_2.html
│ ├── classes_2.js
│ ├── classes_3.html
│ ├── classes_3.js
│ ├── classes_4.html
│ ├── classes_4.js
│ ├── classes_5.html
│ ├── classes_5.js
│ ├── classes_6.html
│ ├── classes_6.js
│ ├── classes_7.html
│ ├── classes_7.js
│ ├── classes_8.html
│ ├── classes_8.js
│ ├── classes_9.html
│ ├── classes_9.js
│ ├── classes_a.html
│ ├── classes_a.js
│ ├── classes_b.html
│ ├── classes_b.js
│ ├── classes_c.html
│ ├── classes_c.js
│ ├── classes_d.html
│ ├── classes_d.js
│ ├── classes_e.html
│ ├── classes_e.js
│ ├── close.png
│ ├── functions_0.html
│ ├── functions_0.js
│ ├── functions_1.html
│ ├── functions_1.js
│ ├── functions_10.html
│ ├── functions_10.js
│ ├── functions_11.html
│ ├── functions_11.js
│ ├── functions_12.html
│ ├── functions_12.js
│ ├── functions_13.html
│ ├── functions_13.js
│ ├── functions_14.html
│ ├── functions_14.js
│ ├── functions_2.html
│ ├── functions_2.js
│ ├── functions_3.html
│ ├── functions_3.js
│ ├── functions_4.html
│ ├── functions_4.js
│ ├── functions_5.html
│ ├── functions_5.js
│ ├── functions_6.html
│ ├── functions_6.js
│ ├── functions_7.html
│ ├── functions_7.js
│ ├── functions_8.html
│ ├── functions_8.js
│ ├── functions_9.html
│ ├── functions_9.js
│ ├── functions_a.html
│ ├── functions_a.js
│ ├── functions_b.html
│ ├── functions_b.js
│ ├── functions_c.html
│ ├── functions_c.js
│ ├── functions_d.html
│ ├── functions_d.js
│ ├── functions_e.html
│ ├── functions_e.js
│ ├── functions_f.html
│ ├── functions_f.js
│ ├── mag_sel.png
│ ├── namespaces_0.html
│ ├── namespaces_0.js
│ ├── nomatches.html
│ ├── search.css
│ ├── search.js
│ ├── search_l.png
│ ├── search_m.png
│ ├── search_r.png
│ └── searchdata.js
│ ├── splitbar.png
│ ├── structvku_1_1_block_params-members.html
│ ├── structvku_1_1_block_params.html
│ ├── structvku_1_1_generic_image_1_1_state-members.html
│ ├── structvku_1_1_generic_image_1_1_state.html
│ ├── structvku_1_1_shader_module_1_1_variable-members.html
│ ├── structvku_1_1_shader_module_1_1_variable.html
│ ├── sync_off.png
│ ├── sync_on.png
│ ├── tab_a.png
│ ├── tab_b.png
│ ├── tab_h.png
│ ├── tab_s.png
│ ├── tabs.css
│ ├── vku_8hpp_source.html
│ └── vku__framework_8hpp_source.html
├── examples
├── CMakeLists.txt
├── README.md
├── crystalLogo
│ ├── Inspiration.README
│ ├── content.frag
│ ├── content.vert
│ ├── crystalLogo.cpp
│ ├── cube.frag
│ ├── cube.vert
│ ├── imag_logo.c
│ ├── imag_text1.c
│ ├── imag_text2.c
│ ├── reflectionPlane.frag
│ ├── reflectionPlane.vert
│ ├── reflectionReflector.frag
│ └── reflectionReflector.vert
├── cybertruck
│ ├── cybertruck.cpp
│ ├── cybertruck.frag
│ └── cybertruck.vert
├── dynamicUniformBuffer
│ ├── dynamicUniformBuffer.cpp
│ ├── dynamicUniformBuffer.frag
│ └── dynamicUniformBuffer.vert
├── fdtd2d
│ ├── fdtd2d.cpp
│ ├── fdtd2d.vert
│ ├── fdtd2dpass0.frag
│ ├── fdtd2dpass1.frag
│ ├── fdtd2dpass2.frag
│ └── references.txt
├── fdtd2dUpml
│ ├── fdtd2dUpml.cpp
│ ├── fdtd2dUpml.vert
│ ├── fdtd2dUpmlpass0.frag
│ ├── fdtd2dUpmlpass1.frag
│ ├── fdtd2dUpmlpass2.frag
│ └── references.txt
├── flockaroo
│ ├── advection.frag
│ ├── flockaroo.cpp
│ ├── flockaroo.frag
│ └── flockaroo.vert
├── gumbo
│ ├── GumboTranslatedScaledTransposed97to108.h
│ ├── gumbo.cpp
│ ├── gumbo.frag
│ ├── gumbo.geom
│ ├── gumbo.tesc
│ ├── gumbo.tese
│ └── gumbo.vert
├── helloCompute
│ ├── helloCompute.comp
│ └── helloCompute.cpp
├── helloGeometryShader
│ ├── helloGeometryShader.cpp
│ ├── helloGeometryShader.frag
│ ├── helloGeometryShader.geom
│ └── helloGeometryShader.vert
├── helloInstancing
│ ├── helloInstancing.cpp
│ ├── helloInstancing.frag
│ └── helloInstancing.vert
├── helloTesselationShader
│ ├── helloTesselationShader.cpp
│ ├── helloTesselationShader.frag
│ ├── helloTesselationShader.geom
│ ├── helloTesselationShader.tesc
│ ├── helloTesselationShader.tese
│ └── helloTesselationShader.vert
├── helloTriangle
│ ├── helloTriangle.cpp
│ ├── helloTriangle.frag
│ └── helloTriangle.vert
├── okretnica.ktx
├── perlinNoise
│ ├── icosphereGenerator.hpp
│ ├── perlinNoise.cpp
│ ├── perlinNoise.frag
│ ├── perlinNoise.vert
│ └── readme.txt
├── pushConstants
│ ├── pushConstants.cpp
│ ├── pushConstants.frag
│ └── pushConstants.vert
├── renderToCubemapByMultiview
│ ├── renderToCubemapByMultiview.cpp
│ ├── renderToCubemapByMultiview.frag
│ ├── renderToCubemapByMultiview.vert
│ ├── renderToCubemapByMultiviewPass2.frag
│ └── renderToCubemapByMultiviewPass2.vert
├── teapot
│ ├── teapot.cpp
│ ├── teapot.frag
│ ├── teapot.shadow.frag
│ ├── teapot.shadow.vert
│ └── teapot.vert
├── texture
│ ├── texture.cpp
│ ├── texture.frag
│ └── texture.vert
├── threaded
│ ├── threaded.cpp
│ ├── threaded.frag
│ └── threaded.vert
└── uniforms
│ ├── uniforms.cpp
│ ├── uniforms.frag
│ └── uniforms.vert
├── external
├── andyzip
│ ├── algorithm.hpp
│ ├── autocorr.hpp
│ ├── brotli_data.hpp
│ ├── brotli_decoder.hpp
│ ├── deflate_decoder.hpp
│ ├── deflate_encoder.hpp
│ ├── huffman_table.hpp
│ └── zipfile_reader.hpp
├── gilgamesh
│ ├── decoders
│ │ ├── fbx_decoder.hpp
│ │ └── pdb_decoder.hpp
│ ├── distance_field.hpp
│ ├── encoders
│ │ ├── fbx_encoder.hpp
│ │ └── ply_encoder.hpp
│ ├── mesh.hpp
│ ├── scene.hpp
│ └── shapes
│ │ ├── box.hpp
│ │ ├── cylinder.hpp
│ │ ├── sphere.hpp
│ │ ├── spline.hpp
│ │ └── teapot.hpp
├── glfw
│ ├── .gitrepo
│ ├── .mailmap
│ ├── CMake
│ │ ├── GenerateMappings.cmake
│ │ ├── Info.plist.in
│ │ ├── cmake_uninstall.cmake.in
│ │ ├── glfw3.pc.in
│ │ ├── glfw3Config.cmake.in
│ │ ├── i686-w64-mingw32-clang.cmake
│ │ ├── i686-w64-mingw32.cmake
│ │ ├── modules
│ │ │ ├── FindEpollShim.cmake
│ │ │ ├── FindOSMesa.cmake
│ │ │ ├── FindWaylandProtocols.cmake
│ │ │ └── FindXKBCommon.cmake
│ │ ├── x86_64-w64-mingw32-clang.cmake
│ │ └── x86_64-w64-mingw32.cmake
│ ├── CMakeLists.txt
│ ├── LICENSE.md
│ ├── README.md
│ ├── deps
│ │ ├── getopt.c
│ │ ├── getopt.h
│ │ ├── glad
│ │ │ ├── gl.h
│ │ │ ├── khrplatform.h
│ │ │ ├── vk_platform.h
│ │ │ └── vulkan.h
│ │ ├── glad_gl.c
│ │ ├── glad_vulkan.c
│ │ ├── linmath.h
│ │ ├── mingw
│ │ │ ├── _mingw_dxhelper.h
│ │ │ ├── dinput.h
│ │ │ └── xinput.h
│ │ ├── nuklear.h
│ │ ├── nuklear_glfw_gl2.h
│ │ ├── stb_image_write.h
│ │ ├── tinycthread.c
│ │ ├── tinycthread.h
│ │ └── vs2008
│ │ │ └── stdint.h
│ ├── docs
│ │ ├── CMakeLists.txt
│ │ ├── CODEOWNERS
│ │ ├── CONTRIBUTING.md
│ │ ├── Doxyfile.in
│ │ ├── DoxygenLayout.xml
│ │ ├── SUPPORT.md
│ │ ├── build.dox
│ │ ├── compat.dox
│ │ ├── compile.dox
│ │ ├── context.dox
│ │ ├── extra.css
│ │ ├── extra.less
│ │ ├── footer.html
│ │ ├── header.html
│ │ ├── input.dox
│ │ ├── internal.dox
│ │ ├── intro.dox
│ │ ├── main.dox
│ │ ├── monitor.dox
│ │ ├── moving.dox
│ │ ├── news.dox
│ │ ├── quick.dox
│ │ ├── spaces.svg
│ │ ├── vulkan.dox
│ │ └── window.dox
│ ├── examples
│ │ ├── CMakeLists.txt
│ │ ├── boing.c
│ │ ├── gears.c
│ │ ├── glfw.icns
│ │ ├── glfw.ico
│ │ ├── glfw.rc
│ │ ├── heightmap.c
│ │ ├── offscreen.c
│ │ ├── particles.c
│ │ ├── sharing.c
│ │ ├── splitview.c
│ │ ├── triangle-opengl.c
│ │ └── wave.c
│ ├── include
│ │ └── GLFW
│ │ │ ├── glfw3.h
│ │ │ └── glfw3native.h
│ ├── src
│ │ ├── CMakeLists.txt
│ │ ├── cocoa_init.m
│ │ ├── cocoa_joystick.h
│ │ ├── cocoa_joystick.m
│ │ ├── cocoa_monitor.m
│ │ ├── cocoa_platform.h
│ │ ├── cocoa_time.c
│ │ ├── cocoa_window.m
│ │ ├── context.c
│ │ ├── egl_context.c
│ │ ├── egl_context.h
│ │ ├── glfw.rc.in
│ │ ├── glfw_config.h.in
│ │ ├── glx_context.c
│ │ ├── glx_context.h
│ │ ├── init.c
│ │ ├── input.c
│ │ ├── internal.h
│ │ ├── linux_joystick.c
│ │ ├── linux_joystick.h
│ │ ├── mappings.h
│ │ ├── mappings.h.in
│ │ ├── monitor.c
│ │ ├── nsgl_context.h
│ │ ├── nsgl_context.m
│ │ ├── null_init.c
│ │ ├── null_joystick.c
│ │ ├── null_joystick.h
│ │ ├── null_monitor.c
│ │ ├── null_platform.h
│ │ ├── null_window.c
│ │ ├── osmesa_context.c
│ │ ├── osmesa_context.h
│ │ ├── posix_thread.c
│ │ ├── posix_thread.h
│ │ ├── posix_time.c
│ │ ├── posix_time.h
│ │ ├── vulkan.c
│ │ ├── wgl_context.c
│ │ ├── wgl_context.h
│ │ ├── win32_init.c
│ │ ├── win32_joystick.c
│ │ ├── win32_joystick.h
│ │ ├── win32_monitor.c
│ │ ├── win32_platform.h
│ │ ├── win32_thread.c
│ │ ├── win32_time.c
│ │ ├── win32_window.c
│ │ ├── window.c
│ │ ├── wl_init.c
│ │ ├── wl_monitor.c
│ │ ├── wl_platform.h
│ │ ├── wl_window.c
│ │ ├── x11_init.c
│ │ ├── x11_monitor.c
│ │ ├── x11_platform.h
│ │ ├── x11_window.c
│ │ ├── xkb_unicode.c
│ │ └── xkb_unicode.h
│ └── tests
│ │ ├── CMakeLists.txt
│ │ ├── clipboard.c
│ │ ├── cursor.c
│ │ ├── empty.c
│ │ ├── events.c
│ │ ├── gamma.c
│ │ ├── glfwinfo.c
│ │ ├── icon.c
│ │ ├── iconify.c
│ │ ├── inputlag.c
│ │ ├── joysticks.c
│ │ ├── monitors.c
│ │ ├── msaa.c
│ │ ├── opacity.c
│ │ ├── reopen.c
│ │ ├── tearing.c
│ │ ├── threads.c
│ │ ├── timeout.c
│ │ ├── title.c
│ │ ├── triangle-vulkan.c
│ │ └── windows.c
├── glm
│ ├── CMakeLists.txt
│ ├── common.hpp
│ ├── detail
│ │ ├── _features.hpp
│ │ ├── _fixes.hpp
│ │ ├── _noise.hpp
│ │ ├── _swizzle.hpp
│ │ ├── _swizzle_func.hpp
│ │ ├── _vectorize.hpp
│ │ ├── compute_vector_relational.hpp
│ │ ├── dummy.cpp
│ │ ├── func_common.inl
│ │ ├── func_common_simd.inl
│ │ ├── func_exponential.inl
│ │ ├── func_exponential_simd.inl
│ │ ├── func_geometric.inl
│ │ ├── func_geometric_simd.inl
│ │ ├── func_integer.inl
│ │ ├── func_integer_simd.inl
│ │ ├── func_matrix.inl
│ │ ├── func_matrix_simd.inl
│ │ ├── func_packing.inl
│ │ ├── func_packing_simd.inl
│ │ ├── func_trigonometric.inl
│ │ ├── func_trigonometric_simd.inl
│ │ ├── func_vector_relational.inl
│ │ ├── func_vector_relational_simd.inl
│ │ ├── glm.cpp
│ │ ├── qualifier.hpp
│ │ ├── setup.hpp
│ │ ├── type_float.hpp
│ │ ├── type_gentype.hpp
│ │ ├── type_gentype.inl
│ │ ├── type_half.hpp
│ │ ├── type_half.inl
│ │ ├── type_int.hpp
│ │ ├── type_mat.hpp
│ │ ├── type_mat.inl
│ │ ├── type_mat2x2.hpp
│ │ ├── type_mat2x2.inl
│ │ ├── type_mat2x3.hpp
│ │ ├── type_mat2x3.inl
│ │ ├── type_mat2x4.hpp
│ │ ├── type_mat2x4.inl
│ │ ├── type_mat3x2.hpp
│ │ ├── type_mat3x2.inl
│ │ ├── type_mat3x3.hpp
│ │ ├── type_mat3x3.inl
│ │ ├── type_mat3x4.hpp
│ │ ├── type_mat3x4.inl
│ │ ├── type_mat4x2.hpp
│ │ ├── type_mat4x2.inl
│ │ ├── type_mat4x3.hpp
│ │ ├── type_mat4x3.inl
│ │ ├── type_mat4x4.hpp
│ │ ├── type_mat4x4.inl
│ │ ├── type_mat4x4_simd.inl
│ │ ├── type_vec.hpp
│ │ ├── type_vec.inl
│ │ ├── type_vec1.hpp
│ │ ├── type_vec1.inl
│ │ ├── type_vec2.hpp
│ │ ├── type_vec2.inl
│ │ ├── type_vec3.hpp
│ │ ├── type_vec3.inl
│ │ ├── type_vec4.hpp
│ │ ├── type_vec4.inl
│ │ └── type_vec4_simd.inl
│ ├── exponential.hpp
│ ├── ext.hpp
│ ├── ext
│ │ ├── vec1.hpp
│ │ ├── vec1.inl
│ │ ├── vector_relational.hpp
│ │ └── vector_relational.inl
│ ├── fwd.hpp
│ ├── geometric.hpp
│ ├── glm.hpp
│ ├── gtc
│ │ ├── bitfield.hpp
│ │ ├── bitfield.inl
│ │ ├── color_space.hpp
│ │ ├── color_space.inl
│ │ ├── constants.hpp
│ │ ├── constants.inl
│ │ ├── epsilon.hpp
│ │ ├── epsilon.inl
│ │ ├── integer.hpp
│ │ ├── integer.inl
│ │ ├── matrix_access.hpp
│ │ ├── matrix_access.inl
│ │ ├── matrix_integer.hpp
│ │ ├── matrix_inverse.hpp
│ │ ├── matrix_inverse.inl
│ │ ├── matrix_transform.hpp
│ │ ├── matrix_transform.inl
│ │ ├── noise.hpp
│ │ ├── noise.inl
│ │ ├── packing.hpp
│ │ ├── packing.inl
│ │ ├── quaternion.hpp
│ │ ├── quaternion.inl
│ │ ├── quaternion_simd.inl
│ │ ├── random.hpp
│ │ ├── random.inl
│ │ ├── reciprocal.hpp
│ │ ├── reciprocal.inl
│ │ ├── round.hpp
│ │ ├── round.inl
│ │ ├── type_aligned.hpp
│ │ ├── type_precision.hpp
│ │ ├── type_precision.inl
│ │ ├── type_ptr.hpp
│ │ ├── type_ptr.inl
│ │ ├── ulp.hpp
│ │ ├── ulp.inl
│ │ ├── vec1.hpp
│ │ └── vec1.inl
│ ├── gtx
│ │ ├── associated_min_max.hpp
│ │ ├── associated_min_max.inl
│ │ ├── bit.hpp
│ │ ├── bit.inl
│ │ ├── closest_point.hpp
│ │ ├── closest_point.inl
│ │ ├── color_encoding.hpp
│ │ ├── color_encoding.inl
│ │ ├── color_space.hpp
│ │ ├── color_space.inl
│ │ ├── color_space_YCoCg.hpp
│ │ ├── color_space_YCoCg.inl
│ │ ├── common.hpp
│ │ ├── common.inl
│ │ ├── compatibility.hpp
│ │ ├── compatibility.inl
│ │ ├── component_wise.hpp
│ │ ├── component_wise.inl
│ │ ├── dual_quaternion.hpp
│ │ ├── dual_quaternion.inl
│ │ ├── euler_angles.hpp
│ │ ├── euler_angles.inl
│ │ ├── extend.hpp
│ │ ├── extend.inl
│ │ ├── extended_min_max.hpp
│ │ ├── extended_min_max.inl
│ │ ├── exterior_product.hpp
│ │ ├── exterior_product.inl
│ │ ├── fast_exponential.hpp
│ │ ├── fast_exponential.inl
│ │ ├── fast_square_root.hpp
│ │ ├── fast_square_root.inl
│ │ ├── fast_trigonometry.hpp
│ │ ├── fast_trigonometry.inl
│ │ ├── float_notmalize.inl
│ │ ├── functions.hpp
│ │ ├── functions.inl
│ │ ├── gradient_paint.hpp
│ │ ├── gradient_paint.inl
│ │ ├── handed_coordinate_space.hpp
│ │ ├── handed_coordinate_space.inl
│ │ ├── hash.hpp
│ │ ├── hash.inl
│ │ ├── integer.hpp
│ │ ├── integer.inl
│ │ ├── intersect.hpp
│ │ ├── intersect.inl
│ │ ├── io.hpp
│ │ ├── io.inl
│ │ ├── log_base.hpp
│ │ ├── log_base.inl
│ │ ├── matrix_cross_product.hpp
│ │ ├── matrix_cross_product.inl
│ │ ├── matrix_decompose.hpp
│ │ ├── matrix_decompose.inl
│ │ ├── matrix_factorisation.hpp
│ │ ├── matrix_factorisation.inl
│ │ ├── matrix_interpolation.hpp
│ │ ├── matrix_interpolation.inl
│ │ ├── matrix_major_storage.hpp
│ │ ├── matrix_major_storage.inl
│ │ ├── matrix_operation.hpp
│ │ ├── matrix_operation.inl
│ │ ├── matrix_query.hpp
│ │ ├── matrix_query.inl
│ │ ├── matrix_transform_2d.hpp
│ │ ├── matrix_transform_2d.inl
│ │ ├── mixed_product.hpp
│ │ ├── mixed_product.inl
│ │ ├── norm.hpp
│ │ ├── norm.inl
│ │ ├── normal.hpp
│ │ ├── normal.inl
│ │ ├── normalize_dot.hpp
│ │ ├── normalize_dot.inl
│ │ ├── number_precision.hpp
│ │ ├── number_precision.inl
│ │ ├── optimum_pow.hpp
│ │ ├── optimum_pow.inl
│ │ ├── orthonormalize.hpp
│ │ ├── orthonormalize.inl
│ │ ├── perpendicular.hpp
│ │ ├── perpendicular.inl
│ │ ├── polar_coordinates.hpp
│ │ ├── polar_coordinates.inl
│ │ ├── projection.hpp
│ │ ├── projection.inl
│ │ ├── quaternion.hpp
│ │ ├── quaternion.inl
│ │ ├── range.hpp
│ │ ├── raw_data.hpp
│ │ ├── raw_data.inl
│ │ ├── rotate_normalized_axis.hpp
│ │ ├── rotate_normalized_axis.inl
│ │ ├── rotate_vector.hpp
│ │ ├── rotate_vector.inl
│ │ ├── scalar_multiplication.hpp
│ │ ├── scalar_relational.hpp
│ │ ├── scalar_relational.inl
│ │ ├── spline.hpp
│ │ ├── spline.inl
│ │ ├── std_based_type.hpp
│ │ ├── std_based_type.inl
│ │ ├── string_cast.hpp
│ │ ├── string_cast.inl
│ │ ├── texture.hpp
│ │ ├── texture.inl
│ │ ├── transform.hpp
│ │ ├── transform.inl
│ │ ├── transform2.hpp
│ │ ├── transform2.inl
│ │ ├── type_aligned.hpp
│ │ ├── type_aligned.inl
│ │ ├── type_trait.hpp
│ │ ├── type_trait.inl
│ │ ├── vec_swizzle.hpp
│ │ ├── vector_angle.hpp
│ │ ├── vector_angle.inl
│ │ ├── vector_query.hpp
│ │ ├── vector_query.inl
│ │ ├── wrap.hpp
│ │ └── wrap.inl
│ ├── integer.hpp
│ ├── mat2x2.hpp
│ ├── mat2x3.hpp
│ ├── mat2x4.hpp
│ ├── mat3x2.hpp
│ ├── mat3x3.hpp
│ ├── mat3x4.hpp
│ ├── mat4x2.hpp
│ ├── mat4x3.hpp
│ ├── mat4x4.hpp
│ ├── matrix.hpp
│ ├── packing.hpp
│ ├── simd
│ │ ├── common.h
│ │ ├── exponential.h
│ │ ├── geometric.h
│ │ ├── integer.h
│ │ ├── matrix.h
│ │ ├── packing.h
│ │ ├── platform.h
│ │ ├── trigonometric.h
│ │ └── vector_relational.h
│ ├── trigonometric.hpp
│ ├── vec2.hpp
│ ├── vec3.hpp
│ ├── vec4.hpp
│ └── vector_relational.hpp
├── shaderc
│ ├── shaderc.h
│ └── shaderc.hpp
└── stb
│ └── stb_truetype.h
└── include
└── vku
├── vku.hpp
└── vku_framework.hpp
/.clang_complete:
--------------------------------------------------------------------------------
1 | -Iexternal
2 |
3 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | build/
2 | *~
3 | *.swp
4 |
5 |
--------------------------------------------------------------------------------
/.vimrc:
--------------------------------------------------------------------------------
1 | :set path+=external/
2 | :set path+=external/vulkan
3 |
--------------------------------------------------------------------------------
/Config.cmake.in:
--------------------------------------------------------------------------------
1 | @PACKAGE_INIT@
2 | include( "${CMAKE_CURRENT_LIST_DIR}/VookooTargets.cmake" )
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2016 Vookoo contributors
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/doc/html/arrowdown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/arrowdown.png
--------------------------------------------------------------------------------
/doc/html/arrowright.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/arrowright.png
--------------------------------------------------------------------------------
/doc/html/bc_s.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/bc_s.png
--------------------------------------------------------------------------------
/doc/html/bdwn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/bdwn.png
--------------------------------------------------------------------------------
/doc/html/classvku_1_1_color_attachment_image.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/classvku_1_1_color_attachment_image.png
--------------------------------------------------------------------------------
/doc/html/classvku_1_1_depth_stencil_image.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/classvku_1_1_depth_stencil_image.png
--------------------------------------------------------------------------------
/doc/html/classvku_1_1_generic_buffer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/classvku_1_1_generic_buffer.png
--------------------------------------------------------------------------------
/doc/html/classvku_1_1_generic_image.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/classvku_1_1_generic_image.png
--------------------------------------------------------------------------------
/doc/html/classvku_1_1_host_index_buffer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/classvku_1_1_host_index_buffer.png
--------------------------------------------------------------------------------
/doc/html/classvku_1_1_host_vertex_buffer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/classvku_1_1_host_vertex_buffer.png
--------------------------------------------------------------------------------
/doc/html/classvku_1_1_index_buffer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/classvku_1_1_index_buffer.png
--------------------------------------------------------------------------------
/doc/html/classvku_1_1_texture_image2_d.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/classvku_1_1_texture_image2_d.png
--------------------------------------------------------------------------------
/doc/html/classvku_1_1_texture_image_cube.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/classvku_1_1_texture_image_cube.png
--------------------------------------------------------------------------------
/doc/html/classvku_1_1_uniform_buffer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/classvku_1_1_uniform_buffer.png
--------------------------------------------------------------------------------
/doc/html/classvku_1_1_vertex_buffer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/classvku_1_1_vertex_buffer.png
--------------------------------------------------------------------------------
/doc/html/closed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/closed.png
--------------------------------------------------------------------------------
/doc/html/doc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/doc.png
--------------------------------------------------------------------------------
/doc/html/doxygen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/doxygen.png
--------------------------------------------------------------------------------
/doc/html/folderclosed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/folderclosed.png
--------------------------------------------------------------------------------
/doc/html/folderopen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/folderopen.png
--------------------------------------------------------------------------------
/doc/html/nav_f.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/nav_f.png
--------------------------------------------------------------------------------
/doc/html/nav_g.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/nav_g.png
--------------------------------------------------------------------------------
/doc/html/nav_h.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/nav_h.png
--------------------------------------------------------------------------------
/doc/html/open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/open.png
--------------------------------------------------------------------------------
/doc/html/search/all_0.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_0.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['attachmentbegin',['attachmentBegin',['../classvku_1_1_renderpass_maker.html#a95f7a27a27e148a2e8c52c9f743bed27',1,'vku::RenderpassMaker']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/doc/html/search/all_1.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_10.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_11.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_11.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['textureimage2d',['TextureImage2D',['../classvku_1_1_texture_image2_d.html',1,'vku']]],
4 | ['textureimagecube',['TextureImageCube',['../classvku_1_1_texture_image_cube.html',1,'vku']]],
5 | ['topology',['topology',['../classvku_1_1_pipeline_maker.html#a343de9cb421ae768fc3fcbca61c032a4',1,'vku::PipelineMaker']]]
6 | ];
7 |
--------------------------------------------------------------------------------
/doc/html/search/all_12.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_12.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['uniformbuffer',['UniformBuffer',['../classvku_1_1_uniform_buffer.html',1,'vku']]],
4 | ['uniformbuffer',['UniformBuffer',['../classvku_1_1_uniform_buffer.html#a36bb1de28b41be840827a4fb5fdf167d',1,'vku::UniformBuffer']]],
5 | ['update',['update',['../classvku_1_1_descriptor_set_updater.html#a446aacfa42c09673fda44d4c6ab6ac2b',1,'vku::DescriptorSetUpdater::update()'],['../classvku_1_1_generic_image.html#acb8c6d17aab252d180951d4b2e240daf',1,'vku::GenericImage::update()']]],
6 | ['updatelocal',['updateLocal',['../classvku_1_1_generic_buffer.html#ac9a9f76789a98fd3b2804179528778c9',1,'vku::GenericBuffer']]],
7 | ['upload',['upload',['../classvku_1_1_generic_buffer.html#a770899713b2e2602abf6933512d08139',1,'vku::GenericBuffer']]]
8 | ];
9 |
--------------------------------------------------------------------------------
/doc/html/search/all_13.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_13.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['variable',['Variable',['../structvku_1_1_shader_module_1_1_variable.html',1,'vku::ShaderModule']]],
4 | ['vertexattribute',['vertexAttribute',['../classvku_1_1_pipeline_maker.html#ac7af7f5007cfbab4534fad71673abd5e',1,'vku::PipelineMaker::vertexAttribute(uint32_t location_, uint32_t binding_, vk::Format format_, uint32_t offset_)'],['../classvku_1_1_pipeline_maker.html#ad06328651baaf6ee92b83eac1df7e42c',1,'vku::PipelineMaker::vertexAttribute(const vk::VertexInputAttributeDescription &desc)']]],
5 | ['vertexbinding',['vertexBinding',['../classvku_1_1_pipeline_maker.html#a0b9d1e02a67658e407e55a12da085ef3',1,'vku::PipelineMaker::vertexBinding(uint32_t binding_, uint32_t stride_, vk::VertexInputRate inputRate_=vk::VertexInputRate::eVertex)'],['../classvku_1_1_pipeline_maker.html#a980b5587c3b543c9dd838276e1469589',1,'vku::PipelineMaker::vertexBinding(const vk::VertexInputBindingDescription &desc)']]],
6 | ['vertexbuffer',['VertexBuffer',['../classvku_1_1_vertex_buffer.html',1,'vku']]],
7 | ['viewport',['viewport',['../classvku_1_1_pipeline_maker.html#a6168c49367ececa1a43f912d97c79a90',1,'vku::PipelineMaker']]],
8 | ['vku',['vku',['../namespacevku.html',1,'']]]
9 | ];
10 |
--------------------------------------------------------------------------------
/doc/html/search/all_14.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_14.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['width',['width',['../classvku_1_1_window.html#a313d031caea0a2ebd0c7ba3d28fc0a72',1,'vku::Window']]],
4 | ['window',['Window',['../classvku_1_1_window.html',1,'vku']]],
5 | ['window',['Window',['../classvku_1_1_window.html#afa10614c5dee3dda4393a0e83a337330',1,'vku::Window']]],
6 | ['write',['write',['../classvku_1_1_shader_module.html#a6b4016f1ef72e8587cbdd5a2e7a3cf20',1,'vku::ShaderModule']]]
7 | ];
8 |
--------------------------------------------------------------------------------
/doc/html/search/all_15.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_15.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['_7eframework',['~Framework',['../classvku_1_1_framework.html#a4690bf772209a235299a896896f36a59',1,'vku::Framework']]],
4 | ['_7ewindow',['~Window',['../classvku_1_1_window.html#a7e577aa4b8d71daf4aecf3262ebb2248',1,'vku::Window']]]
5 | ];
6 |
--------------------------------------------------------------------------------
/doc/html/search/all_2.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_3.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_3.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['depthstencilimage',['DepthStencilImage',['../classvku_1_1_depth_stencil_image.html',1,'vku']]],
4 | ['depthstencilstate',['depthStencilState',['../classvku_1_1_pipeline_maker.html#a25539d7f6a8da453c574a4d7dc5dfc3d',1,'vku::PipelineMaker']]],
5 | ['descriptorpool',['descriptorPool',['../classvku_1_1_framework.html#adc1825bb6f9201a715e8d749feee3c39',1,'vku::Framework']]],
6 | ['descriptorsetlayout',['descriptorSetLayout',['../classvku_1_1_pipeline_layout_maker.html#ae30a82eae50f845a4c9d640072ec19ae',1,'vku::PipelineLayoutMaker']]],
7 | ['descriptorsetlayoutmaker',['DescriptorSetLayoutMaker',['../classvku_1_1_descriptor_set_layout_maker.html',1,'vku']]],
8 | ['descriptorsetmaker',['DescriptorSetMaker',['../classvku_1_1_descriptor_set_maker.html',1,'vku']]],
9 | ['descriptorsetupdater',['DescriptorSetUpdater',['../classvku_1_1_descriptor_set_updater.html',1,'vku']]],
10 | ['device',['device',['../classvku_1_1_framework.html#a39fa9cb694b8fe66d5f647635aaca77c',1,'vku::Framework']]],
11 | ['draw',['draw',['../classvku_1_1_window.html#a74ee0b88b51ee7b749a5f6efb597bc53',1,'vku::Window']]],
12 | ['dumpcaps',['dumpCaps',['../classvku_1_1_window.html#a62280edb5e49822c97ee4e841d5bd67c',1,'vku::Window']]]
13 | ];
14 |
--------------------------------------------------------------------------------
/doc/html/search/all_4.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_4.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['executeimmediately',['executeImmediately',['../namespacevku.html#aa54bca0655780089e9bf9e69faa5409c',1,'vku']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/doc/html/search/all_5.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_5.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['findmemorytypeindex',['findMemoryTypeIndex',['../namespacevku.html#aa07bc50f2524352a4a5ad0f7f7c5d1c4',1,'vku']]],
4 | ['format',['format',['../namespacevku.html#afa75447fe4ebe4d91cdfb542bc3b62fd',1,'vku']]],
5 | ['framebuffers',['framebuffers',['../classvku_1_1_window.html#ae5b21152f302ef2079f9dd600039a157',1,'vku::Window']]],
6 | ['framework',['Framework',['../classvku_1_1_framework.html',1,'vku']]]
7 | ];
8 |
--------------------------------------------------------------------------------
/doc/html/search/all_6.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_6.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['genericbuffer',['GenericBuffer',['../classvku_1_1_generic_buffer.html',1,'vku']]],
4 | ['genericimage',['GenericImage',['../classvku_1_1_generic_image.html',1,'vku']]],
5 | ['getblockparams',['getBlockParams',['../namespacevku.html#afdfc323041bdc5b104fe74dc0e3ebd51',1,'vku']]],
6 | ['getvariables',['getVariables',['../classvku_1_1_shader_module.html#abaa70001f3fde3da030e19ced6a83eec',1,'vku::ShaderModule']]],
7 | ['gltovkformat',['GLtoVKFormat',['../namespacevku.html#ad3ff66eaca06a157824fb6ef93dad176',1,'vku']]],
8 | ['graphicsqueue',['graphicsQueue',['../classvku_1_1_framework.html#a0dfef6c7f9b451393d6286d48ee4213e',1,'vku::Framework']]],
9 | ['graphicsqueuefamilyindex',['graphicsQueueFamilyIndex',['../classvku_1_1_framework.html#a9a09279a046254b71d9575de369b585c',1,'vku::Framework']]]
10 | ];
11 |
--------------------------------------------------------------------------------
/doc/html/search/all_7.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_7.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['height',['height',['../classvku_1_1_window.html#a863f047752ac4e0710f004b9c6d0b7b0',1,'vku::Window']]],
4 | ['hostindexbuffer',['HostIndexBuffer',['../classvku_1_1_host_index_buffer.html',1,'vku']]],
5 | ['hostvertexbuffer',['HostVertexBuffer',['../classvku_1_1_host_vertex_buffer.html',1,'vku']]]
6 | ];
7 |
--------------------------------------------------------------------------------
/doc/html/search/all_8.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_8.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['image',['image',['../classvku_1_1_descriptor_set_updater.html#abeacc301ab5a1f9e22abf6a15176e4fe',1,'vku::DescriptorSetUpdater']]],
4 | ['imageacquiresemaphore',['imageAcquireSemaphore',['../classvku_1_1_window.html#a776998d6551da1e1b4462dfcc7437b85',1,'vku::Window']]],
5 | ['images',['images',['../classvku_1_1_window.html#a65c379ad182e74d44db997e2be55f9fb',1,'vku::Window']]],
6 | ['imageviews',['imageViews',['../classvku_1_1_window.html#a50eeab1453c2c5e985f2df1f62de6565',1,'vku::Window']]],
7 | ['indexbuffer',['IndexBuffer',['../classvku_1_1_index_buffer.html',1,'vku']]],
8 | ['inputassemblystate',['inputAssemblyState',['../classvku_1_1_pipeline_maker.html#a1b29512daeb596e0d6219b7df879b835',1,'vku::PipelineMaker']]],
9 | ['instance',['instance',['../classvku_1_1_framework.html#ab61c9f55d26e4ee6b5d699d50deeb0ad',1,'vku::Framework']]]
10 | ];
11 |
--------------------------------------------------------------------------------
/doc/html/search/all_9.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_9.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['ktxfilelayout',['KTXFileLayout',['../classvku_1_1_k_t_x_file_layout.html',1,'vku']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/doc/html/search/all_a.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_a.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['layout',['layout',['../classvku_1_1_descriptor_set_maker.html#a62a8c7f32a40a8535ef371fa640aca55',1,'vku::DescriptorSetMaker']]],
4 | ['loadfile',['loadFile',['../namespacevku.html#a9fc0f6cd010c99146f9a4fd4e3c6f7a4',1,'vku']]]
5 | ];
6 |
--------------------------------------------------------------------------------
/doc/html/search/all_b.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_b.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['magfilter',['magFilter',['../classvku_1_1_sampler_maker.html#aa99e99c0653952636e1a9ac4292e7231',1,'vku::SamplerMaker']]],
4 | ['minfilter',['minFilter',['../classvku_1_1_sampler_maker.html#aa852a66015501cc21d3f4c6be1a43809',1,'vku::SamplerMaker']]],
5 | ['mipmapmode',['mipmapMode',['../classvku_1_1_sampler_maker.html#adfa6bcbe3c6155d541992e8433fb7382',1,'vku::SamplerMaker']]],
6 | ['mipscale',['mipScale',['../namespacevku.html#ae8475db9e7cdccfe8176781789e803f5',1,'vku']]],
7 | ['module',['module',['../classvku_1_1_compute_pipeline_maker.html#a89c203b12348fda39182df8993f38544',1,'vku::ComputePipelineMaker']]],
8 | ['multisamplestate',['multisampleState',['../classvku_1_1_pipeline_maker.html#a546c0208f58bf27489d59b1290b9cc5f',1,'vku::PipelineMaker']]]
9 | ];
10 |
--------------------------------------------------------------------------------
/doc/html/search/all_c.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_c.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['numimageindices',['numImageIndices',['../classvku_1_1_window.html#ae72647dc506298b8aa36388b6eddd918',1,'vku::Window']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/doc/html/search/all_d.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_d.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['ok',['ok',['../classvku_1_1_descriptor_set_updater.html#a8ac74db5920ea9bdf1dcc6533159566a',1,'vku::DescriptorSetUpdater::ok()'],['../classvku_1_1_framework.html#a40135064e21a5c6d38c209c3194a152d',1,'vku::Framework::ok()'],['../classvku_1_1_window.html#ab316980670759352a77bcfea54f2018f',1,'vku::Window::ok()']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/doc/html/search/all_e.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_e.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['physicaldevice',['physicalDevice',['../classvku_1_1_framework.html#a0490d0fe0d8276ede4de6e557c24718b',1,'vku::Framework']]],
4 | ['pipelinecache',['pipelineCache',['../classvku_1_1_framework.html#ad45b3d217f4ae39480b65d6558a962b7',1,'vku::Framework']]],
5 | ['pipelinelayoutmaker',['PipelineLayoutMaker',['../classvku_1_1_pipeline_layout_maker.html',1,'vku']]],
6 | ['pipelinemaker',['PipelineMaker',['../classvku_1_1_pipeline_maker.html',1,'vku']]],
7 | ['presentqueue',['presentQueue',['../classvku_1_1_window.html#af965a82c0d4db0cd2ec6d69b1aa6295a',1,'vku::Window']]],
8 | ['presentqueuefamily',['presentQueueFamily',['../classvku_1_1_window.html#a38e18f5134cee0a1aec52d4e05ba01cb',1,'vku::Window']]],
9 | ['primitiverestartenable',['primitiveRestartEnable',['../classvku_1_1_pipeline_maker.html#a4ac69ba51b670aea6542ad13d91ff5fe',1,'vku::PipelineMaker']]],
10 | ['pushconstantrange',['pushConstantRange',['../classvku_1_1_pipeline_layout_maker.html#a69c02b6a3d0606448746e0924ccb45b0',1,'vku::PipelineLayoutMaker']]]
11 | ];
12 |
--------------------------------------------------------------------------------
/doc/html/search/all_f.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/all_f.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['rasterizationstate',['rasterizationState',['../classvku_1_1_pipeline_maker.html#aad86de40ee5bcbfa1ffda0e2b0a93500',1,'vku::PipelineMaker']]],
4 | ['renderpass',['renderPass',['../classvku_1_1_window.html#a1de0612826ca9e7c95976b21ba97cfbc',1,'vku::Window']]],
5 | ['renderpassmaker',['RenderpassMaker',['../classvku_1_1_renderpass_maker.html',1,'vku']]]
6 | ];
7 |
--------------------------------------------------------------------------------
/doc/html/search/classes_0.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/classes_0.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['blockparams',['BlockParams',['../structvku_1_1_block_params.html',1,'vku']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/doc/html/search/classes_1.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/classes_1.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['colorattachmentimage',['ColorAttachmentImage',['../classvku_1_1_color_attachment_image.html',1,'vku']]],
4 | ['computepipelinemaker',['ComputePipelineMaker',['../classvku_1_1_compute_pipeline_maker.html',1,'vku']]]
5 | ];
6 |
--------------------------------------------------------------------------------
/doc/html/search/classes_2.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/classes_2.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['depthstencilimage',['DepthStencilImage',['../classvku_1_1_depth_stencil_image.html',1,'vku']]],
4 | ['descriptorsetlayoutmaker',['DescriptorSetLayoutMaker',['../classvku_1_1_descriptor_set_layout_maker.html',1,'vku']]],
5 | ['descriptorsetmaker',['DescriptorSetMaker',['../classvku_1_1_descriptor_set_maker.html',1,'vku']]],
6 | ['descriptorsetupdater',['DescriptorSetUpdater',['../classvku_1_1_descriptor_set_updater.html',1,'vku']]]
7 | ];
8 |
--------------------------------------------------------------------------------
/doc/html/search/classes_3.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/classes_3.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['framework',['Framework',['../classvku_1_1_framework.html',1,'vku']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/doc/html/search/classes_4.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/classes_4.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['genericbuffer',['GenericBuffer',['../classvku_1_1_generic_buffer.html',1,'vku']]],
4 | ['genericimage',['GenericImage',['../classvku_1_1_generic_image.html',1,'vku']]]
5 | ];
6 |
--------------------------------------------------------------------------------
/doc/html/search/classes_5.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/classes_5.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['hostindexbuffer',['HostIndexBuffer',['../classvku_1_1_host_index_buffer.html',1,'vku']]],
4 | ['hostvertexbuffer',['HostVertexBuffer',['../classvku_1_1_host_vertex_buffer.html',1,'vku']]]
5 | ];
6 |
--------------------------------------------------------------------------------
/doc/html/search/classes_6.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/classes_6.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['indexbuffer',['IndexBuffer',['../classvku_1_1_index_buffer.html',1,'vku']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/doc/html/search/classes_7.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/classes_7.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['ktxfilelayout',['KTXFileLayout',['../classvku_1_1_k_t_x_file_layout.html',1,'vku']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/doc/html/search/classes_8.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/classes_8.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['pipelinelayoutmaker',['PipelineLayoutMaker',['../classvku_1_1_pipeline_layout_maker.html',1,'vku']]],
4 | ['pipelinemaker',['PipelineMaker',['../classvku_1_1_pipeline_maker.html',1,'vku']]]
5 | ];
6 |
--------------------------------------------------------------------------------
/doc/html/search/classes_9.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/classes_9.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['renderpassmaker',['RenderpassMaker',['../classvku_1_1_renderpass_maker.html',1,'vku']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/doc/html/search/classes_a.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/classes_a.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['samplermaker',['SamplerMaker',['../classvku_1_1_sampler_maker.html',1,'vku']]],
4 | ['shadermodule',['ShaderModule',['../classvku_1_1_shader_module.html',1,'vku']]],
5 | ['state',['State',['../structvku_1_1_generic_image_1_1_state.html',1,'vku::GenericImage']]]
6 | ];
7 |
--------------------------------------------------------------------------------
/doc/html/search/classes_b.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/classes_b.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['textureimage2d',['TextureImage2D',['../classvku_1_1_texture_image2_d.html',1,'vku']]],
4 | ['textureimagecube',['TextureImageCube',['../classvku_1_1_texture_image_cube.html',1,'vku']]]
5 | ];
6 |
--------------------------------------------------------------------------------
/doc/html/search/classes_c.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/classes_c.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['uniformbuffer',['UniformBuffer',['../classvku_1_1_uniform_buffer.html',1,'vku']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/doc/html/search/classes_d.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/classes_d.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['variable',['Variable',['../structvku_1_1_shader_module_1_1_variable.html',1,'vku::ShaderModule']]],
4 | ['vertexbuffer',['VertexBuffer',['../classvku_1_1_vertex_buffer.html',1,'vku']]]
5 | ];
6 |
--------------------------------------------------------------------------------
/doc/html/search/classes_e.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/classes_e.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['window',['Window',['../classvku_1_1_window.html',1,'vku']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/doc/html/search/close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/search/close.png
--------------------------------------------------------------------------------
/doc/html/search/functions_0.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/functions_0.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['attachmentbegin',['attachmentBegin',['../classvku_1_1_renderpass_maker.html#a95f7a27a27e148a2e8c52c9f743bed27',1,'vku::RenderpassMaker']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/doc/html/search/functions_1.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/functions_10.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/functions_10.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['topology',['topology',['../classvku_1_1_pipeline_maker.html#a343de9cb421ae768fc3fcbca61c032a4',1,'vku::PipelineMaker']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/doc/html/search/functions_11.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/functions_11.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['uniformbuffer',['UniformBuffer',['../classvku_1_1_uniform_buffer.html#a36bb1de28b41be840827a4fb5fdf167d',1,'vku::UniformBuffer']]],
4 | ['update',['update',['../classvku_1_1_descriptor_set_updater.html#a446aacfa42c09673fda44d4c6ab6ac2b',1,'vku::DescriptorSetUpdater::update()'],['../classvku_1_1_generic_image.html#acb8c6d17aab252d180951d4b2e240daf',1,'vku::GenericImage::update()']]],
5 | ['updatelocal',['updateLocal',['../classvku_1_1_generic_buffer.html#ac9a9f76789a98fd3b2804179528778c9',1,'vku::GenericBuffer']]],
6 | ['upload',['upload',['../classvku_1_1_generic_buffer.html#a770899713b2e2602abf6933512d08139',1,'vku::GenericBuffer']]]
7 | ];
8 |
--------------------------------------------------------------------------------
/doc/html/search/functions_12.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/functions_12.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['vertexattribute',['vertexAttribute',['../classvku_1_1_pipeline_maker.html#ac7af7f5007cfbab4534fad71673abd5e',1,'vku::PipelineMaker::vertexAttribute(uint32_t location_, uint32_t binding_, vk::Format format_, uint32_t offset_)'],['../classvku_1_1_pipeline_maker.html#ad06328651baaf6ee92b83eac1df7e42c',1,'vku::PipelineMaker::vertexAttribute(const vk::VertexInputAttributeDescription &desc)']]],
4 | ['vertexbinding',['vertexBinding',['../classvku_1_1_pipeline_maker.html#a0b9d1e02a67658e407e55a12da085ef3',1,'vku::PipelineMaker::vertexBinding(uint32_t binding_, uint32_t stride_, vk::VertexInputRate inputRate_=vk::VertexInputRate::eVertex)'],['../classvku_1_1_pipeline_maker.html#a980b5587c3b543c9dd838276e1469589',1,'vku::PipelineMaker::vertexBinding(const vk::VertexInputBindingDescription &desc)']]],
5 | ['viewport',['viewport',['../classvku_1_1_pipeline_maker.html#a6168c49367ececa1a43f912d97c79a90',1,'vku::PipelineMaker']]]
6 | ];
7 |
--------------------------------------------------------------------------------
/doc/html/search/functions_13.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/functions_13.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['width',['width',['../classvku_1_1_window.html#a313d031caea0a2ebd0c7ba3d28fc0a72',1,'vku::Window']]],
4 | ['window',['Window',['../classvku_1_1_window.html#afa10614c5dee3dda4393a0e83a337330',1,'vku::Window']]],
5 | ['write',['write',['../classvku_1_1_shader_module.html#a6b4016f1ef72e8587cbdd5a2e7a3cf20',1,'vku::ShaderModule']]]
6 | ];
7 |
--------------------------------------------------------------------------------
/doc/html/search/functions_14.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/functions_14.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['_7eframework',['~Framework',['../classvku_1_1_framework.html#a4690bf772209a235299a896896f36a59',1,'vku::Framework']]],
4 | ['_7ewindow',['~Window',['../classvku_1_1_window.html#a7e577aa4b8d71daf4aecf3262ebb2248',1,'vku::Window']]]
5 | ];
6 |
--------------------------------------------------------------------------------
/doc/html/search/functions_2.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/functions_3.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/functions_3.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['depthstencilstate',['depthStencilState',['../classvku_1_1_pipeline_maker.html#a25539d7f6a8da453c574a4d7dc5dfc3d',1,'vku::PipelineMaker']]],
4 | ['descriptorpool',['descriptorPool',['../classvku_1_1_framework.html#adc1825bb6f9201a715e8d749feee3c39',1,'vku::Framework']]],
5 | ['descriptorsetlayout',['descriptorSetLayout',['../classvku_1_1_pipeline_layout_maker.html#ae30a82eae50f845a4c9d640072ec19ae',1,'vku::PipelineLayoutMaker']]],
6 | ['device',['device',['../classvku_1_1_framework.html#a39fa9cb694b8fe66d5f647635aaca77c',1,'vku::Framework']]],
7 | ['draw',['draw',['../classvku_1_1_window.html#a74ee0b88b51ee7b749a5f6efb597bc53',1,'vku::Window']]],
8 | ['dumpcaps',['dumpCaps',['../classvku_1_1_window.html#a62280edb5e49822c97ee4e841d5bd67c',1,'vku::Window']]]
9 | ];
10 |
--------------------------------------------------------------------------------
/doc/html/search/functions_4.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/functions_4.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['executeimmediately',['executeImmediately',['../namespacevku.html#aa54bca0655780089e9bf9e69faa5409c',1,'vku']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/doc/html/search/functions_5.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/functions_5.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['findmemorytypeindex',['findMemoryTypeIndex',['../namespacevku.html#aa07bc50f2524352a4a5ad0f7f7c5d1c4',1,'vku']]],
4 | ['format',['format',['../namespacevku.html#afa75447fe4ebe4d91cdfb542bc3b62fd',1,'vku']]],
5 | ['framebuffers',['framebuffers',['../classvku_1_1_window.html#ae5b21152f302ef2079f9dd600039a157',1,'vku::Window']]]
6 | ];
7 |
--------------------------------------------------------------------------------
/doc/html/search/functions_6.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/functions_6.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['getblockparams',['getBlockParams',['../namespacevku.html#afdfc323041bdc5b104fe74dc0e3ebd51',1,'vku']]],
4 | ['getvariables',['getVariables',['../classvku_1_1_shader_module.html#abaa70001f3fde3da030e19ced6a83eec',1,'vku::ShaderModule']]],
5 | ['gltovkformat',['GLtoVKFormat',['../namespacevku.html#ad3ff66eaca06a157824fb6ef93dad176',1,'vku']]],
6 | ['graphicsqueue',['graphicsQueue',['../classvku_1_1_framework.html#a0dfef6c7f9b451393d6286d48ee4213e',1,'vku::Framework']]],
7 | ['graphicsqueuefamilyindex',['graphicsQueueFamilyIndex',['../classvku_1_1_framework.html#a9a09279a046254b71d9575de369b585c',1,'vku::Framework']]]
8 | ];
9 |
--------------------------------------------------------------------------------
/doc/html/search/functions_7.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/functions_7.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['height',['height',['../classvku_1_1_window.html#a863f047752ac4e0710f004b9c6d0b7b0',1,'vku::Window']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/doc/html/search/functions_8.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/functions_8.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['image',['image',['../classvku_1_1_descriptor_set_updater.html#abeacc301ab5a1f9e22abf6a15176e4fe',1,'vku::DescriptorSetUpdater']]],
4 | ['imageacquiresemaphore',['imageAcquireSemaphore',['../classvku_1_1_window.html#a776998d6551da1e1b4462dfcc7437b85',1,'vku::Window']]],
5 | ['images',['images',['../classvku_1_1_window.html#a65c379ad182e74d44db997e2be55f9fb',1,'vku::Window']]],
6 | ['imageviews',['imageViews',['../classvku_1_1_window.html#a50eeab1453c2c5e985f2df1f62de6565',1,'vku::Window']]],
7 | ['inputassemblystate',['inputAssemblyState',['../classvku_1_1_pipeline_maker.html#a1b29512daeb596e0d6219b7df879b835',1,'vku::PipelineMaker']]],
8 | ['instance',['instance',['../classvku_1_1_framework.html#ab61c9f55d26e4ee6b5d699d50deeb0ad',1,'vku::Framework']]]
9 | ];
10 |
--------------------------------------------------------------------------------
/doc/html/search/functions_9.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/functions_9.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['layout',['layout',['../classvku_1_1_descriptor_set_maker.html#a62a8c7f32a40a8535ef371fa640aca55',1,'vku::DescriptorSetMaker']]],
4 | ['loadfile',['loadFile',['../namespacevku.html#a9fc0f6cd010c99146f9a4fd4e3c6f7a4',1,'vku']]]
5 | ];
6 |
--------------------------------------------------------------------------------
/doc/html/search/functions_a.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/functions_a.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['magfilter',['magFilter',['../classvku_1_1_sampler_maker.html#aa99e99c0653952636e1a9ac4292e7231',1,'vku::SamplerMaker']]],
4 | ['minfilter',['minFilter',['../classvku_1_1_sampler_maker.html#aa852a66015501cc21d3f4c6be1a43809',1,'vku::SamplerMaker']]],
5 | ['mipmapmode',['mipmapMode',['../classvku_1_1_sampler_maker.html#adfa6bcbe3c6155d541992e8433fb7382',1,'vku::SamplerMaker']]],
6 | ['mipscale',['mipScale',['../namespacevku.html#ae8475db9e7cdccfe8176781789e803f5',1,'vku']]],
7 | ['module',['module',['../classvku_1_1_compute_pipeline_maker.html#a89c203b12348fda39182df8993f38544',1,'vku::ComputePipelineMaker']]],
8 | ['multisamplestate',['multisampleState',['../classvku_1_1_pipeline_maker.html#a546c0208f58bf27489d59b1290b9cc5f',1,'vku::PipelineMaker']]]
9 | ];
10 |
--------------------------------------------------------------------------------
/doc/html/search/functions_b.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/functions_b.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['numimageindices',['numImageIndices',['../classvku_1_1_window.html#ae72647dc506298b8aa36388b6eddd918',1,'vku::Window']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/doc/html/search/functions_c.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/functions_c.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['ok',['ok',['../classvku_1_1_descriptor_set_updater.html#a8ac74db5920ea9bdf1dcc6533159566a',1,'vku::DescriptorSetUpdater::ok()'],['../classvku_1_1_framework.html#a40135064e21a5c6d38c209c3194a152d',1,'vku::Framework::ok()'],['../classvku_1_1_window.html#ab316980670759352a77bcfea54f2018f',1,'vku::Window::ok()']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/doc/html/search/functions_d.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/functions_d.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['physicaldevice',['physicalDevice',['../classvku_1_1_framework.html#a0490d0fe0d8276ede4de6e557c24718b',1,'vku::Framework']]],
4 | ['pipelinecache',['pipelineCache',['../classvku_1_1_framework.html#ad45b3d217f4ae39480b65d6558a962b7',1,'vku::Framework']]],
5 | ['presentqueue',['presentQueue',['../classvku_1_1_window.html#af965a82c0d4db0cd2ec6d69b1aa6295a',1,'vku::Window']]],
6 | ['presentqueuefamily',['presentQueueFamily',['../classvku_1_1_window.html#a38e18f5134cee0a1aec52d4e05ba01cb',1,'vku::Window']]],
7 | ['primitiverestartenable',['primitiveRestartEnable',['../classvku_1_1_pipeline_maker.html#a4ac69ba51b670aea6542ad13d91ff5fe',1,'vku::PipelineMaker']]],
8 | ['pushconstantrange',['pushConstantRange',['../classvku_1_1_pipeline_layout_maker.html#a69c02b6a3d0606448746e0924ccb45b0',1,'vku::PipelineLayoutMaker']]]
9 | ];
10 |
--------------------------------------------------------------------------------
/doc/html/search/functions_e.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/functions_e.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['rasterizationstate',['rasterizationState',['../classvku_1_1_pipeline_maker.html#aad86de40ee5bcbfa1ffda0e2b0a93500',1,'vku::PipelineMaker']]],
4 | ['renderpass',['renderPass',['../classvku_1_1_window.html#a1de0612826ca9e7c95976b21ba97cfbc',1,'vku::Window']]]
5 | ];
6 |
--------------------------------------------------------------------------------
/doc/html/search/functions_f.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/mag_sel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/search/mag_sel.png
--------------------------------------------------------------------------------
/doc/html/search/namespaces_0.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Loading...
12 |
13 |
16 |
Searching...
17 |
No Matches
18 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/html/search/namespaces_0.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['vku',['vku',['../namespacevku.html',1,'']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/doc/html/search/nomatches.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/doc/html/search/search_l.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/search/search_l.png
--------------------------------------------------------------------------------
/doc/html/search/search_m.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/search/search_m.png
--------------------------------------------------------------------------------
/doc/html/search/search_r.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/search/search_r.png
--------------------------------------------------------------------------------
/doc/html/search/searchdata.js:
--------------------------------------------------------------------------------
1 | var indexSectionsWithContent =
2 | {
3 | 0: "abcdefghiklmnoprstuvw~",
4 | 1: "bcdfghikprstuvw",
5 | 2: "v",
6 | 3: "abcdefghilmnoprstuvw~"
7 | };
8 |
9 | var indexSectionNames =
10 | {
11 | 0: "all",
12 | 1: "classes",
13 | 2: "namespaces",
14 | 3: "functions"
15 | };
16 |
17 | var indexSectionLabels =
18 | {
19 | 0: "All",
20 | 1: "Classes",
21 | 2: "Namespaces",
22 | 3: "Functions"
23 | };
24 |
25 |
--------------------------------------------------------------------------------
/doc/html/splitbar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/splitbar.png
--------------------------------------------------------------------------------
/doc/html/sync_off.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/sync_off.png
--------------------------------------------------------------------------------
/doc/html/sync_on.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/sync_on.png
--------------------------------------------------------------------------------
/doc/html/tab_a.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/tab_a.png
--------------------------------------------------------------------------------
/doc/html/tab_b.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/tab_b.png
--------------------------------------------------------------------------------
/doc/html/tab_h.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/tab_h.png
--------------------------------------------------------------------------------
/doc/html/tab_s.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/doc/html/tab_s.png
--------------------------------------------------------------------------------
/doc/html/tabs.css:
--------------------------------------------------------------------------------
1 | .tabs, .tabs2, .tabs3 {
2 | background-image: url('tab_b.png');
3 | width: 100%;
4 | z-index: 101;
5 | font-size: 13px;
6 | font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
7 | }
8 |
9 | .tabs2 {
10 | font-size: 10px;
11 | }
12 | .tabs3 {
13 | font-size: 9px;
14 | }
15 |
16 | .tablist {
17 | margin: 0;
18 | padding: 0;
19 | display: table;
20 | }
21 |
22 | .tablist li {
23 | float: left;
24 | display: table-cell;
25 | background-image: url('tab_b.png');
26 | line-height: 36px;
27 | list-style: none;
28 | }
29 |
30 | .tablist a {
31 | display: block;
32 | padding: 0 20px;
33 | font-weight: bold;
34 | background-image:url('tab_s.png');
35 | background-repeat:no-repeat;
36 | background-position:right;
37 | color: #283A5D;
38 | text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
39 | text-decoration: none;
40 | outline: none;
41 | }
42 |
43 | .tabs3 .tablist a {
44 | padding: 0 10px;
45 | }
46 |
47 | .tablist a:hover {
48 | background-image: url('tab_h.png');
49 | background-repeat:repeat-x;
50 | color: #fff;
51 | text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
52 | text-decoration: none;
53 | }
54 |
55 | .tablist li.current a {
56 | background-image: url('tab_a.png');
57 | background-repeat:repeat-x;
58 | color: #fff;
59 | text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
60 | }
61 |
--------------------------------------------------------------------------------
/examples/README.md:
--------------------------------------------------------------------------------
1 | Installation on Ubuntu
2 | ======================
3 |
4 | Download SDK from [https://vulkan.lunarg.com/sdk/home#linux]
5 |
6 | This example is 1.0.65.0:
7 |
8 | mkdir ~/vulkan
9 | cd ~/vulkan
10 | cp ~/Downloads/vulkansdk-linux-x86_64-1.0.65.0.run .
11 | chmod ugo+x vulkansdk-linux-x86_64-1.0.65.0.run
12 | ./vulkansdk-linux-x86_64-1.0.65.0.run
13 | sudo apt install libvulkan-dev libxinerama-dev libxcursor-dev libxrandr-dev x11-xserver-utils
14 |
15 | Hack your ~/.bashrc
16 |
17 | export VULKAN_SDK=/home//vulkan/VulkanSDK/1.0.65.0/
18 | export PATH=$PATH:$VULKAN_SDK/x86_64/bin
19 | export LD_LIBRARY_PATH=$VULKAN_SDK/x86_64/
20 | export VK_LAYER_PATH=$VULKAN_SDK/x86_64/etc/explicit_layer.d
21 |
22 | Run a new shell (ctrl-alt-T)
23 |
24 |
--------------------------------------------------------------------------------
/examples/crystalLogo/Inspiration.README:
--------------------------------------------------------------------------------
1 | How to Create the Apple Fifth Avenue Cube in WebGL
2 |
3 | A tutorial on how to re-create the Apple Fifth Avenue Cube animation using WebGL.
4 | By Lorenzo Cadamuro in Tutorials on December 20, 2019
5 |
6 | https://tympanus.net/codrops/2019/12/20/how-to-create-the-apple-fifth-avenue-cube-in-webgl/
7 |
8 |
--------------------------------------------------------------------------------
/examples/crystalLogo/content.vert:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout(location = 0) in vec3 a_position;
4 | layout(location = 1) in vec2 a_uv;
5 |
6 | // UBO must be aligned to 16-byte manually to match c++
7 | layout (binding = 0) uniform Uniform {
8 | mat4 u_projection;
9 | mat4 u_view;
10 | mat4 u_world;
11 | } u;
12 |
13 | #define u_projection u.u_projection
14 | #define u_view u.u_view
15 | #define u_world u.u_world
16 |
17 | layout(location = 0) out vec2 v_uv;
18 |
19 | void main() {
20 | v_uv = a_uv;
21 |
22 | gl_Position = u_projection * u_view * u_world * vec4(a_position, 1);
23 | }
24 |
--------------------------------------------------------------------------------
/examples/crystalLogo/crystalLogo.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/examples/crystalLogo/crystalLogo.cpp
--------------------------------------------------------------------------------
/examples/crystalLogo/cube.vert:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout(location = 0) in vec3 a_position;
4 | layout(location = 1) in vec3 a_center;
5 | layout(location = 2) in vec2 a_uv;
6 | layout(location = 3) in vec3 a_color;
7 |
8 | // UBO must be aligned to 16-byte manually to match c++
9 | layout (binding = 0) uniform Uniform {
10 | mat4 u_projection;
11 | mat4 u_view;
12 | mat4 u_world;
13 | } u;
14 |
15 | #define u_projection u.u_projection
16 | #define u_view u.u_view
17 | #define u_world u.u_world
18 |
19 | layout(location = 0) out vec3 v_normal;
20 | layout(location = 1) out vec3 v_center;
21 | layout(location = 2) out vec3 v_point;
22 | layout(location = 3) out vec2 v_uv;
23 | layout(location = 4) out vec3 v_color;
24 | layout(location = 5) out float v_depth;
25 |
26 | void main() {
27 | vec4 center = u_projection * u_view * u_world * vec4(a_center, 1.0);
28 | vec4 position = u_projection * u_view * u_world * vec4(a_position, 1.0);
29 |
30 | v_normal = normalize(a_position);
31 | v_center = center.xyz;
32 | v_point = position.xyz;
33 | v_uv = a_uv;
34 | v_color = a_color;
35 | v_depth = (mat3(u_view) * mat3(u_world) * a_position).z;
36 |
37 | gl_Position = position;
38 | }
39 |
--------------------------------------------------------------------------------
/examples/crystalLogo/reflectionPlane.frag:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout (binding = 1) uniform samplerCube u_texture; // https://satellitnorden.wordpress.com/2018/01/23/vulkan-adventures-cube-map-tutorial/
4 |
5 | layout(location = 0) in vec4 vUv;
6 |
7 | layout(location = 0) out vec4 FragColor;
8 |
9 | void main() {
10 | FragColor = texture(u_texture, vUv.xyz); // https://satellitnorden.wordpress.com/2018/01/23/vulkan-adventures-cube-map-tutorial/
11 | }
12 |
--------------------------------------------------------------------------------
/examples/crystalLogo/reflectionPlane.vert:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout(location = 0) in vec3 a_position;
4 |
5 | // UBO must be aligned to 16-byte manually to match c++
6 | layout (binding = 0) uniform Uniform {
7 | mat4 u_textureMatrix;
8 | mat4 u_world;
9 | } u;
10 |
11 | #define u_textureMatrix u.u_textureMatrix
12 | #define u_world u.u_world
13 |
14 | layout(location = 0) out vec4 vUv;
15 |
16 | void main() {
17 | vUv = u_textureMatrix * vec4(a_position, 1.0);
18 |
19 | gl_Position = u_world * vec4(a_position, 1.0);
20 | }
21 |
--------------------------------------------------------------------------------
/examples/crystalLogo/reflectionReflector.frag:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | // UBO must be aligned to 16-byte manually to match c++
4 | layout (binding = 1) uniform Uniform {
5 | float u_depthOpacity;
6 | } u;
7 |
8 | #define u_depthOpacity u.u_depthOpacity
9 |
10 | layout (binding = 2) uniform sampler2D u_texture; // contentFBO
11 |
12 | layout(location = 0) in vec2 v_uv;
13 | layout(location = 1) in float v_z;
14 |
15 | layout(location = 0) out vec4 FragColor;
16 |
17 | void main() {
18 | vec4 vtexture = texture(u_texture, v_uv);
19 | vtexture.a -= u_depthOpacity * v_z;
20 |
21 | FragColor = vtexture;
22 | }
23 |
--------------------------------------------------------------------------------
/examples/cybertruck/cybertruck.frag:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/examples/cybertruck/cybertruck.frag
--------------------------------------------------------------------------------
/examples/cybertruck/cybertruck.vert:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/examples/cybertruck/cybertruck.vert
--------------------------------------------------------------------------------
/examples/dynamicUniformBuffer/dynamicUniformBuffer.frag:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout(location = 0) in vec3 fragColour;
4 |
5 | layout(location = 0) out vec4 outColour;
6 |
7 | void main() {
8 | // Copy interpolated colour to the screen.
9 | outColour = vec4(fragColour, 1);
10 | }
11 |
--------------------------------------------------------------------------------
/examples/dynamicUniformBuffer/dynamicUniformBuffer.vert:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/examples/dynamicUniformBuffer/dynamicUniformBuffer.vert
--------------------------------------------------------------------------------
/examples/fdtd2d/fdtd2d.vert:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout(location = 0) in vec3 pos;
4 |
5 | out gl_PerVertex {
6 | vec4 gl_Position;
7 | };
8 |
9 | void main() {
10 | gl_Position = vec4(pos, 1.0);
11 | }
12 |
--------------------------------------------------------------------------------
/examples/fdtd2d/references.txt:
--------------------------------------------------------------------------------
1 | https://eecs.wsu.edu/~schneidj/ufdtd/
2 |
--------------------------------------------------------------------------------
/examples/fdtd2dUpml/fdtd2dUpml.vert:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout(location = 0) in vec3 pos;
4 |
5 | out gl_PerVertex {
6 | vec4 gl_Position;
7 | };
8 |
9 | void main() {
10 | gl_Position = vec4(pos, 1.0);
11 | }
12 |
--------------------------------------------------------------------------------
/examples/fdtd2dUpml/references.txt:
--------------------------------------------------------------------------------
1 | https://eecs.wsu.edu/~schneidj/ufdtd/
2 |
--------------------------------------------------------------------------------
/examples/flockaroo/flockaroo.vert:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout(location = 0) in vec3 pos;
4 |
5 | out gl_PerVertex {
6 | vec4 gl_Position;
7 | };
8 |
9 | void main() {
10 | gl_Position = vec4(pos, 1.0);
11 | }
12 |
--------------------------------------------------------------------------------
/examples/gumbo/gumbo.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/examples/gumbo/gumbo.cpp
--------------------------------------------------------------------------------
/examples/gumbo/gumbo.geom:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/examples/gumbo/gumbo.geom
--------------------------------------------------------------------------------
/examples/gumbo/gumbo.tesc:
--------------------------------------------------------------------------------
1 | #version 460 core
2 | // original: https://prideout.net/blog/old/blog/index.html@p=49.html
3 | // modified to be compatible with vulkan
4 |
5 | layout( vertices = 16 ) out;
6 |
7 | layout(location = 0) in vec3 vPosition[];
8 | layout(location = 0) out vec3 tcPosition[];
9 |
10 | layout (binding = 0) uniform Uniform0 {
11 | mat4 Projection;
12 | mat4 View;
13 | mat4 GeometryTransform;
14 | float TessLevelInner;
15 | float TessLevelOuter;
16 | float PatchID;
17 | float padding;
18 | } u0;
19 |
20 | in gl_PerVertex
21 | {
22 | vec4 gl_Position;
23 | //float gl_PointSize;
24 | //float gl_ClipDistance[];
25 | } gl_in[gl_MaxPatchVertices];
26 |
27 | out gl_PerVertex
28 | {
29 | vec4 gl_Position;
30 | //float gl_PointSize;
31 | //float gl_ClipDistance[];
32 | } gl_out[];
33 |
34 | #define ID gl_InvocationID
35 |
36 | void main()
37 | {
38 | tcPosition[ID] = vPosition[ID];
39 |
40 | //barrier();
41 | if (ID == 0) {
42 | gl_TessLevelInner[0] = u0.TessLevelInner;
43 | gl_TessLevelInner[1] = u0.TessLevelInner;
44 | gl_TessLevelOuter[0] = u0.TessLevelOuter;
45 | gl_TessLevelOuter[1] = u0.TessLevelOuter;
46 | gl_TessLevelOuter[2] = u0.TessLevelOuter;
47 | gl_TessLevelOuter[3] = u0.TessLevelOuter;
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/examples/gumbo/gumbo.vert:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/examples/gumbo/gumbo.vert
--------------------------------------------------------------------------------
/examples/helloCompute/helloCompute.comp:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | // Get a value in through push constants
4 | layout (push_constant) uniform Uniform {
5 | float value;
6 | } u;
7 |
8 | // Write values out through a storage buffer
9 | layout(std430, binding=0) buffer Buffer {
10 | float values[];
11 | } b;
12 |
13 | void main() {
14 | // id is 0..N-1
15 | uint id = gl_GlobalInvocationID.x;
16 |
17 | // Store the value in the output buffer.
18 | // Note: id may be greater than the number of instances
19 | // and you may need to check against the size of the values array.
20 | b.values[id] = float(id) + u.value;
21 | }
22 |
23 |
--------------------------------------------------------------------------------
/examples/helloGeometryShader/helloGeometryShader.frag:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout(location = 0) in vec3 fragColour;
4 |
5 | layout(location = 0) out vec4 outColour;
6 |
7 | void main() {
8 | // Copy interpolated colour to the screen.
9 | outColour = vec4(fragColour, 1);
10 | }
11 |
--------------------------------------------------------------------------------
/examples/helloGeometryShader/helloGeometryShader.geom:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/examples/helloGeometryShader/helloGeometryShader.geom
--------------------------------------------------------------------------------
/examples/helloGeometryShader/helloGeometryShader.vert:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/examples/helloGeometryShader/helloGeometryShader.vert
--------------------------------------------------------------------------------
/examples/helloInstancing/helloInstancing.frag:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout(location = 0) in vec3 fragColour;
4 |
5 | layout(location = 0) out vec4 outColour;
6 |
7 | void main() {
8 | // Copy interpolated colour to the screen.
9 | outColour = vec4(fragColour, 1);
10 | }
11 |
--------------------------------------------------------------------------------
/examples/helloInstancing/helloInstancing.vert:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/examples/helloInstancing/helloInstancing.vert
--------------------------------------------------------------------------------
/examples/helloTesselationShader/helloTesselationShader.frag:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout(location = 0) in vec3 fragColour;
4 |
5 | layout(location = 0) out vec4 outColour;
6 |
7 | void main() {
8 | // Copy interpolated colour to the screen.
9 | outColour = vec4(fragColour, 1);
10 | }
11 |
--------------------------------------------------------------------------------
/examples/helloTesselationShader/helloTesselationShader.geom:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/examples/helloTesselationShader/helloTesselationShader.geom
--------------------------------------------------------------------------------
/examples/helloTesselationShader/helloTesselationShader.tesc:
--------------------------------------------------------------------------------
1 | #version 420
2 | // https://web.engr.oregonstate.edu/~mjb/cs519/Handouts/tessellation.1pp.pdf
3 | // .tesc for a tessellation control shader
4 |
5 | layout( vertices = 3 ) out;
6 |
7 | layout(location = 0) in vec3 inColour[];
8 | layout(location = 0) out vec3 outColour[3];
9 |
10 | in gl_PerVertex
11 | {
12 | vec4 gl_Position;
13 | //float gl_PointSize;
14 | //float gl_ClipDistance[];
15 | } gl_in[gl_MaxPatchVertices];
16 |
17 | out gl_PerVertex
18 | {
19 | vec4 gl_Position;
20 | //float gl_PointSize;
21 | //float gl_ClipDistance[];
22 | } gl_out[];
23 |
24 | void main( )
25 | {
26 | if (gl_InvocationID == 0)
27 | {
28 | float inner = 3.0;
29 | gl_TessLevelInner[0] = inner;
30 | float outer = 8.0;
31 | gl_TessLevelOuter[0] = outer;
32 | gl_TessLevelOuter[1] = outer;
33 | gl_TessLevelOuter[2] = outer;
34 | }
35 |
36 | gl_out[ gl_InvocationID ].gl_Position = gl_in[ gl_InvocationID ].gl_Position;
37 | outColour[ gl_InvocationID ] = inColour[ gl_InvocationID ];
38 | }
39 |
--------------------------------------------------------------------------------
/examples/helloTesselationShader/helloTesselationShader.tese:
--------------------------------------------------------------------------------
1 | #version 420
2 | // https://web.engr.oregonstate.edu/~mjb/cs519/Handouts/tessellation.1pp.pdf
3 | // .tese for a tessellation evaluation shader
4 |
5 | layout( triangles, equal_spacing ) in;
6 |
7 | layout(location = 0) in vec3 patch_color[];
8 | layout(location = 0) out vec3 tes_color;
9 |
10 | in gl_PerVertex
11 | {
12 | vec4 gl_Position;
13 | //float gl_PointSize;
14 | //float gl_ClipDistance[];
15 | } gl_in[gl_MaxPatchVertices];
16 |
17 | out gl_PerVertex {
18 | vec4 gl_Position;
19 | //float gl_PointSize;
20 | //float gl_ClipDistance[];
21 | };
22 |
23 | void main( )
24 | {
25 | gl_Position = gl_TessCoord.x * gl_in[0].gl_Position +
26 | gl_TessCoord.y * gl_in[1].gl_Position +
27 | gl_TessCoord.z * gl_in[2].gl_Position;
28 | tes_color = gl_TessCoord.x * patch_color[0] +
29 | gl_TessCoord.y * patch_color[1] +
30 | gl_TessCoord.z * patch_color[2];
31 | }
32 |
--------------------------------------------------------------------------------
/examples/helloTesselationShader/helloTesselationShader.vert:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/examples/helloTesselationShader/helloTesselationShader.vert
--------------------------------------------------------------------------------
/examples/helloTriangle/helloTriangle.frag:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout(location = 0) in vec3 fragColour;
4 |
5 | layout(location = 0) out vec4 outColour;
6 |
7 | void main() {
8 | // Copy interpolated colour to the screen.
9 | outColour = vec4(fragColour, 1);
10 | }
11 |
--------------------------------------------------------------------------------
/examples/helloTriangle/helloTriangle.vert:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/examples/helloTriangle/helloTriangle.vert
--------------------------------------------------------------------------------
/examples/okretnica.ktx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/examples/okretnica.ktx
--------------------------------------------------------------------------------
/examples/perlinNoise/perlinNoise.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/examples/perlinNoise/perlinNoise.cpp
--------------------------------------------------------------------------------
/examples/perlinNoise/perlinNoise.frag:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout (set = 0, binding = 1) uniform sampler2D tExplosion;
4 |
5 | layout(location = 0) in float noise;
6 |
7 | layout(location = 0) out vec4 outColour;
8 |
9 | float random( vec3 scale, float seed ){
10 | return fract( sin( dot( gl_FragCoord.xyz + seed, scale ) ) * 43758.5453 + seed ) ;
11 | }
12 |
13 | void main() {
14 |
15 | // get a random offset
16 | float r = .01 * random( vec3( 12.9898, 78.233, 151.7182 ), 0.0 );
17 | // lookup vertically in the texture, using noise and offset
18 | // to get the right RGB colour
19 | vec2 tPos = vec2( 0, 1.4 * noise + r );
20 | vec4 color = texture( tExplosion, tPos );
21 |
22 | outColour = vec4( color.rgb, 1.0 );
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/examples/perlinNoise/perlinNoise.vert:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/examples/perlinNoise/perlinNoise.vert
--------------------------------------------------------------------------------
/examples/perlinNoise/readme.txt:
--------------------------------------------------------------------------------
1 | References:
2 | https://www.clicktorelease.com/blog/vertex-displacement-noise-3d-webgl-glsl-three-js/
3 | https://github.com/egeozgul/3D-Icosphere-Generator/blob/master/icosphereGenerator.hpp
4 | https://www.clicktorelease.com/code/perlin/explosion.png
5 | https://github.com/ashima/webgl-noise
6 |
7 |
8 |
--------------------------------------------------------------------------------
/examples/pushConstants/pushConstants.frag:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout(location = 0) in vec3 fragColour;
4 | layout(location = 0) out vec4 outColour;
5 |
6 | layout (push_constant) uniform Uniform {
7 | vec4 colour;
8 | mat4 rotation;
9 | } u;
10 |
11 | void main() {
12 | // Copy interpolated colour to the screen.
13 | outColour = vec4(fragColour, 1) * u.colour;
14 | }
15 |
--------------------------------------------------------------------------------
/examples/pushConstants/pushConstants.vert:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout(location = 0) in vec2 inPosition;
4 | layout(location = 1) in vec3 inColour;
5 | layout(location = 0) out vec3 fragColour;
6 |
7 | layout (push_constant) uniform Uniform {
8 | vec4 colour;
9 | mat4 rotation;
10 | } u;
11 |
12 | out gl_PerVertex {
13 | vec4 gl_Position;
14 | };
15 |
16 | void main() {
17 | // Rotate and copy 2D position to 3D + depth
18 | gl_Position = u.rotation * vec4(inPosition, 0.0, 1.0);
19 |
20 | // Copy colour to the fragment shader.
21 | fragColour = inColour;
22 | }
23 |
--------------------------------------------------------------------------------
/examples/renderToCubemapByMultiview/renderToCubemapByMultiview.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/examples/renderToCubemapByMultiview/renderToCubemapByMultiview.cpp
--------------------------------------------------------------------------------
/examples/renderToCubemapByMultiview/renderToCubemapByMultiview.frag:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout(location = 0) in vec4 v_color;
4 |
5 | layout(location = 0) out vec4 FragColor;
6 |
7 | void main() {
8 | FragColor = v_color;
9 | }
10 |
--------------------------------------------------------------------------------
/examples/renderToCubemapByMultiview/renderToCubemapByMultiview.vert:
--------------------------------------------------------------------------------
1 | #version 460
2 | #extension GL_EXT_multiview : enable
3 |
4 | layout(location = 0) in vec4 a_position;
5 |
6 | layout(location = 0) out vec4 v_color;
7 |
8 | layout (push_constant) uniform PushConstant {
9 | vec4 color[6]; // 6 for all the cubemap faces to be rendered
10 | } p;
11 |
12 | // UBO must be aligned to 16-byte manually to match c++
13 | layout (binding = 0) uniform Uniform {
14 | mat4 projection;
15 | mat4 view;
16 | mat4 world;
17 | } u;
18 |
19 | out gl_PerVertex {
20 | vec4 gl_Position;
21 | };
22 |
23 | void main() {
24 | v_color = p.color[gl_ViewIndex];
25 | gl_Position = u.projection * u.view * a_position;
26 | }
27 |
--------------------------------------------------------------------------------
/examples/renderToCubemapByMultiview/renderToCubemapByMultiviewPass2.frag:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout(location = 0) in vec3 v_direction;
4 |
5 | layout(location = 0) out vec4 FragColor;
6 |
7 | layout (binding = 1) uniform samplerCube u_cubemap;
8 |
9 | void main() {
10 | FragColor = texture(u_cubemap, v_direction);
11 | }
12 |
--------------------------------------------------------------------------------
/examples/renderToCubemapByMultiview/renderToCubemapByMultiviewPass2.vert:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout(location = 0) in vec3 a_position;
4 |
5 | layout(location = 0) out vec3 v_direction;
6 |
7 | // UBO must be aligned to 16-byte manually to match c++
8 | layout (binding = 0) uniform Uniform {
9 | mat4 projection;
10 | mat4 view;
11 | mat4 world;
12 | } u;
13 |
14 | out gl_PerVertex {
15 | vec4 gl_Position;
16 | };
17 |
18 | void main() {
19 | v_direction = normalize(a_position);
20 | gl_Position = u.projection * u.view * u.world * vec4(a_position, 1.0);
21 | }
22 |
--------------------------------------------------------------------------------
/examples/teapot/teapot.frag:
--------------------------------------------------------------------------------
1 | #version 450
2 |
3 | layout(location = 0) in vec3 inNormal;
4 | layout(location = 1) in vec2 inUv;
5 | layout(location = 2) in vec3 inCameraDir;
6 | layout(location = 3) in vec4 inLightSpacePos;
7 | layout(location = 4) in vec3 inLightDir;
8 |
9 | layout(location = 0) out vec4 outColour;
10 |
11 | layout (binding = 0) uniform Uniform {
12 | mat4 modelToPerspective;
13 | mat4 modelToWorld;
14 | mat4 normalToWorld;
15 | mat4 modelToLight;
16 | vec4 cameraPos;
17 | vec4 lightPos;
18 | } u;
19 |
20 | layout (binding = 1) uniform samplerCube cubeMap;
21 | layout (binding = 2) uniform sampler2D shadowMap;
22 |
23 | void main() {
24 | vec3 cameraDir = normalize(inCameraDir);
25 | vec3 normal = normalize(inNormal);
26 | vec3 lightDir = normalize(inLightDir);
27 |
28 | vec3 reflectDir = normalize(reflect(-cameraDir, normal));
29 | vec3 reflect = texture(cubeMap, reflectDir).xyz;
30 |
31 | vec3 ambient = vec3(0.3, 0.3, 0.1);
32 | vec3 diffuse = vec3(0.9, 0.9, 0.1);
33 | vec3 specular = vec3(0.3, 0.3, 0.3);
34 |
35 | float diffuseFactor = max(0.0, dot(normal, lightDir));
36 | float shadowDepth = textureProj(shadowMap, inLightSpacePos).x;
37 | float expectedDepth = inLightSpacePos.z / inLightSpacePos.w;
38 | float shadowFactor = expectedDepth < shadowDepth ? 1.0 : 0.0;
39 | outColour = vec4(ambient + diffuse * diffuseFactor * shadowFactor + specular * reflect, 1);
40 | }
41 |
42 |
--------------------------------------------------------------------------------
/examples/teapot/teapot.shadow.frag:
--------------------------------------------------------------------------------
1 | #version 450
2 |
3 | void main() {
4 | }
5 |
6 |
--------------------------------------------------------------------------------
/examples/teapot/teapot.shadow.vert:
--------------------------------------------------------------------------------
1 | #version 450
2 |
3 | layout(location = 0) in vec3 inPosition;
4 | layout(location = 1) in vec3 inNormal;
5 | layout(location = 2) in vec2 inUv;
6 |
7 | layout (binding = 0) uniform Uniform {
8 | mat4 modelToPerspective;
9 | mat4 modelToWorld;
10 | mat4 normalToWorld;
11 | mat4 modelToLight;
12 | vec4 cameraPos;
13 | } u;
14 |
15 | out gl_PerVertex {
16 | vec4 gl_Position;
17 | };
18 |
19 | void main() {
20 | gl_Position = u.modelToLight * vec4(inPosition.xyz, 1.0);
21 | }
22 |
23 |
--------------------------------------------------------------------------------
/examples/texture/texture.frag:
--------------------------------------------------------------------------------
1 | #version 450
2 |
3 | layout(location = 0) in vec3 fragColor;
4 |
5 | layout(location = 0) out vec4 outColor;
6 |
7 | layout (binding = 0) uniform UBO
8 | {
9 | vec4 colour;
10 | } ubo;
11 |
12 | layout (binding = 1) uniform sampler2D samp;
13 |
14 | void main() {
15 | outColor = texture(samp, fragColor.xy * 8.0f);
16 | }
17 |
18 |
--------------------------------------------------------------------------------
/examples/texture/texture.vert:
--------------------------------------------------------------------------------
1 | #version 450
2 |
3 | layout(location = 0) in vec2 inPosition;
4 | layout(location = 1) in vec3 inColor;
5 |
6 | layout(location = 0) out vec3 fragColor;
7 |
8 | out gl_PerVertex {
9 | vec4 gl_Position;
10 | };
11 |
12 | void main() {
13 | gl_Position = vec4(inPosition, 0.0, 1.0);
14 | fragColor = inColor;
15 | }
16 |
--------------------------------------------------------------------------------
/examples/threaded/threaded.frag:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout(location = 0) in vec3 fragColour;
4 | layout(location = 0) out vec4 outColour;
5 |
6 | layout (push_constant) uniform Uniform {
7 | vec4 colour;
8 | mat4 rotation;
9 | } u;
10 |
11 | void main() {
12 | // Copy interpolated colour to the screen.
13 | outColour = vec4(fragColour, 1) * u.colour;
14 | }
15 |
--------------------------------------------------------------------------------
/examples/threaded/threaded.vert:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout(location = 0) in vec2 inPosition;
4 | layout(location = 1) in vec3 inColour;
5 | layout(location = 0) out vec3 fragColour;
6 |
7 | layout (push_constant) uniform Uniform {
8 | vec4 colour;
9 | mat4 transform;
10 | } u;
11 |
12 | out gl_PerVertex {
13 | vec4 gl_Position;
14 | };
15 |
16 | void main() {
17 | gl_Position = u.transform * vec4(inPosition, 0.0, 1.0);
18 | // Copy colour to the fragment shader.
19 | fragColour = inColour;
20 | }
21 |
--------------------------------------------------------------------------------
/examples/uniforms/uniforms.frag:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout(location = 0) in vec3 fragColour;
4 | layout(location = 0) out vec4 outColour;
5 |
6 | // Instead of push_constant we use a binding
7 | layout (binding = 0) uniform Uniform {
8 | vec4 colour;
9 | mat4 rotation;
10 | vec4 filler[3];
11 | } u;
12 |
13 | void main() {
14 | // Copy interpolated colour to the screen.
15 | outColour = vec4(fragColour, 1) * u.colour;
16 | }
17 |
--------------------------------------------------------------------------------
/examples/uniforms/uniforms.vert:
--------------------------------------------------------------------------------
1 | #version 460
2 |
3 | layout(location = 0) in vec2 inPosition;
4 | layout(location = 1) in vec3 inColour;
5 | layout(location = 0) out vec3 fragColour;
6 |
7 | // Instead of push_constant we use a binding.
8 | layout (binding = 0) uniform Uniform {
9 | vec4 colour;
10 | mat4 rotation;
11 | vec4 filler[3];
12 | } u;
13 |
14 | out gl_PerVertex {
15 | vec4 gl_Position;
16 | };
17 |
18 | void main() {
19 | // Rotate and copy 2D position to 3D + depth
20 | gl_Position = u.rotation * vec4(inPosition, 0.0, 1.0);
21 |
22 | // Copy colour to the fragment shader.
23 | fragColour = inColour;
24 | }
25 |
--------------------------------------------------------------------------------
/external/andyzip/algorithm.hpp:
--------------------------------------------------------------------------------
1 |
2 | ////////////////////////////////////////////////////////////////////////////////
3 | //
4 | // (C) Andy Thomason 2012-2016
5 | //
6 | // Autocorrelation entropy test
7 |
8 |
9 | #ifndef MINIZIP_ALGORITHM_INCLUDED
10 | #define MINIZIP_ALGORITHM_INCLUDED
11 |
12 | #include
13 | #include
14 | #include
15 | #include
16 |
17 | namespace andyzip {
18 | // Get a measure of how correlated the data is at various stride levels.
19 | void abs_correlation(std::vector &result, const uint8_t *begin, const uint8_t *end, const std::initializer_list &values) {
20 | result.clear();
21 | for (auto n : values) {
22 | int value = 0;
23 | for (auto p = begin; p < end - n; ++p) {
24 | value += std::abs((int8_t)(p[0] - p[n]));
25 | }
26 | result.push_back(value);
27 | }
28 | };
29 |
30 | }
31 |
32 | #endif
33 |
--------------------------------------------------------------------------------
/external/andyzip/autocorr.hpp:
--------------------------------------------------------------------------------
1 |
2 | ////////////////////////////////////////////////////////////////////////////////
3 | //
4 | // (C) Andy Thomason 2012-2016
5 | //
6 | // Autocorrelation entropy test
7 |
8 |
9 | #ifndef MINIZIP_ALGORITHM_INCLUDED
10 | #define MINIZIP_ALGORITHM_INCLUDED
11 |
12 | #include
13 | #include
14 |
15 | namespace andyzip {
16 | template
17 | class range {
18 | public:
19 | range(T begin, T end) : begin_(begin), end_(end) {
20 | }
21 | T begin() { return begin_; }
22 | T end() { return end_; }
23 | private:
24 | T begin_;
25 | T end_;
26 | };
27 |
28 |
29 | // result[n] is the autocorrelation of sequence [begin,end)
30 | void autocorrelate(size_t *result, size_t num_results, const uint8_t *begin, const uint8_t *end) {
31 | for (size_t n : range((size_t)0, num_results)) {
32 | for (auto p = begin; p != end; p += n) {
33 |
34 | }
35 | }
36 |
37 | };
38 |
39 | }
40 |
41 | #endif
42 |
--------------------------------------------------------------------------------
/external/andyzip/deflate_encoder.hpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/andy-thomason/Vookoo/d24318c9bf9dbbd38c596353bd7f9eacbab0e862/external/andyzip/deflate_encoder.hpp
--------------------------------------------------------------------------------
/external/glfw/.gitrepo:
--------------------------------------------------------------------------------
1 | ; DO NOT EDIT (unless you know what you are doing)
2 | ;
3 | ; This subdirectory is a git "subrepo", and this file is maintained by the
4 | ; git-subrepo command. See https://github.com/git-commands/git-subrepo#readme
5 | ;
6 | [subrepo]
7 | remote = https://github.com/glfw/glfw.git
8 | branch = master
9 | commit = e65de2941c056ee5833b4dab3db36b297b53aa14
10 | parent = c5e1d3377f3e84227545cd9e0e6d1a0bc62a0f25
11 | method = merge
12 | cmdver = 0.4.0
13 |
--------------------------------------------------------------------------------
/external/glfw/.mailmap:
--------------------------------------------------------------------------------
1 | Camilla Löwy
2 | Camilla Löwy
3 | Camilla Löwy
4 |
5 | Emmanuel Gil Peyrot
6 |
7 | Marcus Geelnard
8 | Marcus Geelnard
9 | Marcus Geelnard
10 |
11 |
--------------------------------------------------------------------------------
/external/glfw/CMake/GenerateMappings.cmake:
--------------------------------------------------------------------------------
1 | # Usage:
2 | # cmake -P GenerateMappings.cmake
3 |
4 | set(source_url "https://raw.githubusercontent.com/gabomdq/SDL_GameControllerDB/master/gamecontrollerdb.txt")
5 | set(source_path "${CMAKE_CURRENT_BINARY_DIR}/gamecontrollerdb.txt")
6 | set(template_path "${CMAKE_ARGV3}")
7 | set(target_path "${CMAKE_ARGV4}")
8 |
9 | if (NOT EXISTS "${template_path}")
10 | message(FATAL_ERROR "Failed to find template file ${template_path}")
11 | endif()
12 |
13 | file(DOWNLOAD "${source_url}" "${source_path}"
14 | STATUS download_status
15 | TLS_VERIFY on)
16 |
17 | list(GET download_status 0 status_code)
18 | list(GET download_status 1 status_message)
19 |
20 | if (status_code)
21 | message(FATAL_ERROR "Failed to download ${source_url}: ${status_message}")
22 | endif()
23 |
24 | file(STRINGS "${source_path}" lines)
25 | foreach(line ${lines})
26 | if ("${line}" MATCHES "^[0-9a-fA-F].*$")
27 | set(GLFW_GAMEPAD_MAPPINGS "${GLFW_GAMEPAD_MAPPINGS}\"${line}\",\n")
28 | endif()
29 | endforeach()
30 |
31 | configure_file("${template_path}" "${target_path}" @ONLY NEWLINE_STYLE UNIX)
32 | file(REMOVE "${source_path}")
33 |
34 |
--------------------------------------------------------------------------------
/external/glfw/CMake/Info.plist.in:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | English
7 | CFBundleExecutable
8 | ${MACOSX_BUNDLE_EXECUTABLE_NAME}
9 | CFBundleGetInfoString
10 | ${MACOSX_BUNDLE_INFO_STRING}
11 | CFBundleIconFile
12 | ${MACOSX_BUNDLE_ICON_FILE}
13 | CFBundleIdentifier
14 | ${MACOSX_BUNDLE_GUI_IDENTIFIER}
15 | CFBundleInfoDictionaryVersion
16 | 6.0
17 | CFBundleLongVersionString
18 | ${MACOSX_BUNDLE_LONG_VERSION_STRING}
19 | CFBundleName
20 | ${MACOSX_BUNDLE_BUNDLE_NAME}
21 | CFBundlePackageType
22 | APPL
23 | CFBundleShortVersionString
24 | ${MACOSX_BUNDLE_SHORT_VERSION_STRING}
25 | CFBundleSignature
26 | ????
27 | CFBundleVersion
28 | ${MACOSX_BUNDLE_BUNDLE_VERSION}
29 | CSResourcesFileMapped
30 |
31 | LSRequiresCarbon
32 |
33 | NSHumanReadableCopyright
34 | ${MACOSX_BUNDLE_COPYRIGHT}
35 | NSHighResolutionCapable
36 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/external/glfw/CMake/cmake_uninstall.cmake.in:
--------------------------------------------------------------------------------
1 |
2 | if (NOT EXISTS "@GLFW_BINARY_DIR@/install_manifest.txt")
3 | message(FATAL_ERROR "Cannot find install manifest: \"@GLFW_BINARY_DIR@/install_manifest.txt\"")
4 | endif()
5 |
6 | file(READ "@GLFW_BINARY_DIR@/install_manifest.txt" files)
7 | string(REGEX REPLACE "\n" ";" files "${files}")
8 |
9 | foreach (file ${files})
10 | message(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"")
11 | if (EXISTS "$ENV{DESTDIR}${file}")
12 | exec_program("@CMAKE_COMMAND@" ARGS "-E remove \"$ENV{DESTDIR}${file}\""
13 | OUTPUT_VARIABLE rm_out
14 | RETURN_VALUE rm_retval)
15 | if (NOT "${rm_retval}" STREQUAL 0)
16 | MESSAGE(FATAL_ERROR "Problem when removing \"$ENV{DESTDIR}${file}\"")
17 | endif()
18 | elseif (IS_SYMLINK "$ENV{DESTDIR}${file}")
19 | EXEC_PROGRAM("@CMAKE_COMMAND@" ARGS "-E remove \"$ENV{DESTDIR}${file}\""
20 | OUTPUT_VARIABLE rm_out
21 | RETURN_VALUE rm_retval)
22 | if (NOT "${rm_retval}" STREQUAL 0)
23 | message(FATAL_ERROR "Problem when removing symlink \"$ENV{DESTDIR}${file}\"")
24 | endif()
25 | else()
26 | message(STATUS "File \"$ENV{DESTDIR}${file}\" does not exist.")
27 | endif()
28 | endforeach()
29 |
30 |
--------------------------------------------------------------------------------
/external/glfw/CMake/glfw3.pc.in:
--------------------------------------------------------------------------------
1 | prefix=@CMAKE_INSTALL_PREFIX@
2 | exec_prefix=${prefix}
3 | includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
4 | libdir=@CMAKE_INSTALL_FULL_LIBDIR@
5 |
6 | Name: GLFW
7 | Description: A multi-platform library for OpenGL, window and input
8 | Version: @GLFW_VERSION@
9 | URL: https://www.glfw.org/
10 | Requires.private: @GLFW_PKG_DEPS@
11 | Libs: -L${libdir} -l@GLFW_LIB_NAME@
12 | Libs.private: @GLFW_PKG_LIBS@
13 | Cflags: -I${includedir}
14 |
--------------------------------------------------------------------------------
/external/glfw/CMake/glfw3Config.cmake.in:
--------------------------------------------------------------------------------
1 | include(CMakeFindDependencyMacro)
2 | find_dependency(Threads)
3 | include("${CMAKE_CURRENT_LIST_DIR}/glfw3Targets.cmake")
4 |
--------------------------------------------------------------------------------
/external/glfw/CMake/i686-w64-mingw32-clang.cmake:
--------------------------------------------------------------------------------
1 | # Define the environment for cross-compiling with 32-bit MinGW-w64 Clang
2 | SET(CMAKE_SYSTEM_NAME Windows) # Target system name
3 | SET(CMAKE_SYSTEM_VERSION 1)
4 | SET(CMAKE_C_COMPILER "i686-w64-mingw32-clang")
5 | SET(CMAKE_CXX_COMPILER "i686-w64-mingw32-clang++")
6 | SET(CMAKE_RC_COMPILER "i686-w64-mingw32-windres")
7 | SET(CMAKE_RANLIB "i686-w64-mingw32-ranlib")
8 |
9 | # Configure the behaviour of the find commands
10 | SET(CMAKE_FIND_ROOT_PATH "/usr/i686-w64-mingw32")
11 | SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
12 | SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
13 | SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
14 |
--------------------------------------------------------------------------------
/external/glfw/CMake/i686-w64-mingw32.cmake:
--------------------------------------------------------------------------------
1 | # Define the environment for cross-compiling with 32-bit MinGW-w64 GCC
2 | SET(CMAKE_SYSTEM_NAME Windows) # Target system name
3 | SET(CMAKE_SYSTEM_VERSION 1)
4 | SET(CMAKE_C_COMPILER "i686-w64-mingw32-gcc")
5 | SET(CMAKE_CXX_COMPILER "i686-w64-mingw32-g++")
6 | SET(CMAKE_RC_COMPILER "i686-w64-mingw32-windres")
7 | SET(CMAKE_RANLIB "i686-w64-mingw32-ranlib")
8 |
9 | # Configure the behaviour of the find commands
10 | SET(CMAKE_FIND_ROOT_PATH "/usr/i686-w64-mingw32")
11 | SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
12 | SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
13 | SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
14 |
--------------------------------------------------------------------------------
/external/glfw/CMake/modules/FindEpollShim.cmake:
--------------------------------------------------------------------------------
1 | # Find EpollShim
2 | # Once done, this will define
3 | #
4 | # EPOLLSHIM_FOUND - System has EpollShim
5 | # EPOLLSHIM_INCLUDE_DIRS - The EpollShim include directories
6 | # EPOLLSHIM_LIBRARIES - The libraries needed to use EpollShim
7 |
8 | find_path(EPOLLSHIM_INCLUDE_DIRS NAMES sys/epoll.h sys/timerfd.h HINTS /usr/local/include/libepoll-shim)
9 | find_library(EPOLLSHIM_LIBRARIES NAMES epoll-shim libepoll-shim HINTS /usr/local/lib)
10 |
11 | if (EPOLLSHIM_INCLUDE_DIRS AND EPOLLSHIM_LIBRARIES)
12 | set(EPOLLSHIM_FOUND TRUE)
13 | endif (EPOLLSHIM_INCLUDE_DIRS AND EPOLLSHIM_LIBRARIES)
14 |
15 | include(FindPackageHandleStandardArgs)
16 | find_package_handle_standard_args(EPOLLSHIM DEFAULT_MSG EPOLLSHIM_LIBRARIES EPOLLSHIM_INCLUDE_DIRS)
17 | mark_as_advanced(EPOLLSHIM_INCLUDE_DIRS EPOLLSHIM_LIBRARIES)
18 |
--------------------------------------------------------------------------------
/external/glfw/CMake/modules/FindOSMesa.cmake:
--------------------------------------------------------------------------------
1 | # Try to find OSMesa on a Unix system
2 | #
3 | # This will define:
4 | #
5 | # OSMESA_LIBRARIES - Link these to use OSMesa
6 | # OSMESA_INCLUDE_DIR - Include directory for OSMesa
7 | #
8 | # Copyright (c) 2014 Brandon Schaefer
9 |
10 | if (NOT WIN32)
11 |
12 | find_package (PkgConfig)
13 | pkg_check_modules (PKG_OSMESA QUIET osmesa)
14 |
15 | set (OSMESA_INCLUDE_DIR ${PKG_OSMESA_INCLUDE_DIRS})
16 | set (OSMESA_LIBRARIES ${PKG_OSMESA_LIBRARIES})
17 |
18 | endif ()
19 |
--------------------------------------------------------------------------------
/external/glfw/CMake/modules/FindWaylandProtocols.cmake:
--------------------------------------------------------------------------------
1 | find_package(PkgConfig)
2 |
3 | pkg_check_modules(WaylandProtocols QUIET wayland-protocols>=${WaylandProtocols_FIND_VERSION})
4 |
5 | execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} --variable=pkgdatadir wayland-protocols
6 | OUTPUT_VARIABLE WaylandProtocols_PKGDATADIR
7 | RESULT_VARIABLE _pkgconfig_failed)
8 | if (_pkgconfig_failed)
9 | message(FATAL_ERROR "Missing wayland-protocols pkgdatadir")
10 | endif()
11 |
12 | string(REGEX REPLACE "[\r\n]" "" WaylandProtocols_PKGDATADIR "${WaylandProtocols_PKGDATADIR}")
13 |
14 | find_package_handle_standard_args(WaylandProtocols
15 | FOUND_VAR
16 | WaylandProtocols_FOUND
17 | REQUIRED_VARS
18 | WaylandProtocols_PKGDATADIR
19 | VERSION_VAR
20 | WaylandProtocols_VERSION
21 | HANDLE_COMPONENTS
22 | )
23 |
24 | set(WAYLAND_PROTOCOLS_FOUND ${WaylandProtocols_FOUND})
25 | set(WAYLAND_PROTOCOLS_PKGDATADIR ${WaylandProtocols_PKGDATADIR})
26 | set(WAYLAND_PROTOCOLS_VERSION ${WaylandProtocols_VERSION})
27 |
--------------------------------------------------------------------------------
/external/glfw/CMake/modules/FindXKBCommon.cmake:
--------------------------------------------------------------------------------
1 | # - Try to find XKBCommon
2 | # Once done, this will define
3 | #
4 | # XKBCOMMON_FOUND - System has XKBCommon
5 | # XKBCOMMON_INCLUDE_DIRS - The XKBCommon include directories
6 | # XKBCOMMON_LIBRARIES - The libraries needed to use XKBCommon
7 | # XKBCOMMON_DEFINITIONS - Compiler switches required for using XKBCommon
8 |
9 | find_package(PkgConfig)
10 | pkg_check_modules(PC_XKBCOMMON QUIET xkbcommon)
11 | set(XKBCOMMON_DEFINITIONS ${PC_XKBCOMMON_CFLAGS_OTHER})
12 |
13 | find_path(XKBCOMMON_INCLUDE_DIR
14 | NAMES xkbcommon/xkbcommon.h
15 | HINTS ${PC_XKBCOMMON_INCLUDE_DIR} ${PC_XKBCOMMON_INCLUDE_DIRS}
16 | )
17 |
18 | find_library(XKBCOMMON_LIBRARY
19 | NAMES xkbcommon
20 | HINTS ${PC_XKBCOMMON_LIBRARY} ${PC_XKBCOMMON_LIBRARY_DIRS}
21 | )
22 |
23 | set(XKBCOMMON_LIBRARIES ${XKBCOMMON_LIBRARY})
24 | set(XKBCOMMON_LIBRARY_DIRS ${XKBCOMMON_LIBRARY_DIRS})
25 | set(XKBCOMMON_INCLUDE_DIRS ${XKBCOMMON_INCLUDE_DIR})
26 |
27 | include(FindPackageHandleStandardArgs)
28 | find_package_handle_standard_args(XKBCommon DEFAULT_MSG
29 | XKBCOMMON_LIBRARY
30 | XKBCOMMON_INCLUDE_DIR
31 | )
32 |
33 | mark_as_advanced(XKBCOMMON_LIBRARY XKBCOMMON_INCLUDE_DIR)
34 |
35 |
--------------------------------------------------------------------------------
/external/glfw/CMake/x86_64-w64-mingw32-clang.cmake:
--------------------------------------------------------------------------------
1 | # Define the environment for cross-compiling with 64-bit MinGW-w64 Clang
2 | SET(CMAKE_SYSTEM_NAME Windows) # Target system name
3 | SET(CMAKE_SYSTEM_VERSION 1)
4 | SET(CMAKE_C_COMPILER "x86_64-w64-mingw32-clang")
5 | SET(CMAKE_CXX_COMPILER "x86_64-w64-mingw32-clang++")
6 | SET(CMAKE_RC_COMPILER "x86_64-w64-mingw32-windres")
7 | SET(CMAKE_RANLIB "x86_64-w64-mingw32-ranlib")
8 |
9 | # Configure the behaviour of the find commands
10 | SET(CMAKE_FIND_ROOT_PATH "/usr/x86_64-w64-mingw32")
11 | SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
12 | SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
13 | SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
14 |
--------------------------------------------------------------------------------
/external/glfw/CMake/x86_64-w64-mingw32.cmake:
--------------------------------------------------------------------------------
1 | # Define the environment for cross-compiling with 64-bit MinGW-w64 GCC
2 | SET(CMAKE_SYSTEM_NAME Windows) # Target system name
3 | SET(CMAKE_SYSTEM_VERSION 1)
4 | SET(CMAKE_C_COMPILER "x86_64-w64-mingw32-gcc")
5 | SET(CMAKE_CXX_COMPILER "x86_64-w64-mingw32-g++")
6 | SET(CMAKE_RC_COMPILER "x86_64-w64-mingw32-windres")
7 | SET(CMAKE_RANLIB "x86_64-w64-mingw32-ranlib")
8 |
9 | # Configure the behaviour of the find commands
10 | SET(CMAKE_FIND_ROOT_PATH "/usr/x86_64-w64-mingw32")
11 | SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
12 | SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
13 | SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
14 |
--------------------------------------------------------------------------------
/external/glfw/LICENSE.md:
--------------------------------------------------------------------------------
1 | Copyright (c) 2002-2006 Marcus Geelnard
2 |
3 | Copyright (c) 2006-2019 Camilla Löwy
4 |
5 | This software is provided 'as-is', without any express or implied
6 | warranty. In no event will the authors be held liable for any damages
7 | arising from the use of this software.
8 |
9 | Permission is granted to anyone to use this software for any purpose,
10 | including commercial applications, and to alter it and redistribute it
11 | freely, subject to the following restrictions:
12 |
13 | 1. The origin of this software must not be misrepresented; you must not
14 | claim that you wrote the original software. If you use this software
15 | in a product, an acknowledgment in the product documentation would
16 | be appreciated but is not required.
17 |
18 | 2. Altered source versions must be plainly marked as such, and must not
19 | be misrepresented as being the original software.
20 |
21 | 3. This notice may not be removed or altered from any source
22 | distribution.
23 |
24 |
--------------------------------------------------------------------------------
/external/glfw/docs/CMakeLists.txt:
--------------------------------------------------------------------------------
1 |
2 | # NOTE: The order of this list determines the order of items in the Guides
3 | # (i.e. Pages) list in the generated documentation
4 | set(GLFW_DOXYGEN_SOURCES
5 | "include/GLFW/glfw3.h"
6 | "include/GLFW/glfw3native.h"
7 | "docs/main.dox"
8 | "docs/news.dox"
9 | "docs/quick.dox"
10 | "docs/moving.dox"
11 | "docs/compile.dox"
12 | "docs/build.dox"
13 | "docs/intro.dox"
14 | "docs/context.dox"
15 | "docs/monitor.dox"
16 | "docs/window.dox"
17 | "docs/input.dox"
18 | "docs/vulkan.dox"
19 | "docs/compat.dox"
20 | "docs/internal.dox")
21 |
22 | # Format the source list into a Doxyfile INPUT value that Doxygen can parse
23 | foreach(path IN LISTS GLFW_DOXYGEN_SOURCES)
24 | set(GLFW_DOXYGEN_INPUT "${GLFW_DOXYGEN_INPUT} \\\n\"${GLFW_SOURCE_DIR}/${path}\"")
25 | endforeach()
26 |
27 | configure_file(Doxyfile.in Doxyfile @ONLY)
28 |
29 | add_custom_target(docs ALL "${DOXYGEN_EXECUTABLE}"
30 | WORKING_DIRECTORY "${GLFW_BINARY_DIR}/docs"
31 | COMMENT "Generating HTML documentation" VERBATIM)
32 |
33 | set_target_properties(docs PROPERTIES FOLDER "GLFW3")
34 |
35 |
--------------------------------------------------------------------------------
/external/glfw/docs/CODEOWNERS:
--------------------------------------------------------------------------------
1 |
2 | * @elmindreda
3 |
4 | src/wl_* @linkmauve
5 |
6 | docs/*.css @glfw/webdev
7 | docs/*.less @glfw/webdev
8 | docs/*.html @glfw/webdev
9 | docs/*.xml @glfw/webdev
10 |
11 |
--------------------------------------------------------------------------------
/external/glfw/docs/SUPPORT.md:
--------------------------------------------------------------------------------
1 | # Support resources
2 |
3 | See the [latest documentation](http://www.glfw.org/docs/latest/) for tutorials,
4 | guides and the API reference.
5 |
6 | If you have questions about using GLFW, we have a
7 | [forum](https://discourse.glfw.org/), and the `#glfw` IRC channel on
8 | [Freenode](http://freenode.net/).
9 |
10 | Bugs are reported to our [issue tracker](https://github.com/glfw/glfw/issues).
11 | Please check the [contribution
12 | guide](https://github.com/glfw/glfw/blob/master/docs/CONTRIBUTING.md) for
13 | information on what to include when reporting a bug.
14 |
15 |
--------------------------------------------------------------------------------
/external/glfw/docs/footer.html:
--------------------------------------------------------------------------------
1 |
6 |