diff --git a/examples/xx-bokeh/bokeh.cpp b/examples/45-bokeh/bokeh.cpp similarity index 99% rename from examples/xx-bokeh/bokeh.cpp rename to examples/45-bokeh/bokeh.cpp index 22c88ec15..f05266f4a 100644 --- a/examples/xx-bokeh/bokeh.cpp +++ b/examples/45-bokeh/bokeh.cpp @@ -5,7 +5,7 @@ /* * Implement bokeh depth of field as described in the blog post here: -* https://blog.tuxedolabs.com/2018/05/04/bokeh-depth-of-field-in-single-pass.html +* https://web.archive.org/web/20201215123940/https://blog.tuxedolabs.com/2018/05/04/bokeh-depth-of-field-in-single-pass.html * * Additionally, implement the optimizations discussed in the closing paragraph. * Apply the effect in multiple passes. Calculate the circle of confusion and store @@ -973,4 +973,4 @@ public: } // namespace -ENTRY_IMPLEMENT_MAIN(ExampleBokeh, "xx-bokeh", "bokeh depth of field"); +ENTRY_IMPLEMENT_MAIN(ExampleBokeh, "45-bokeh", "Bokeh Depth of Field"); diff --git a/examples/xx-bokeh/bokeh_dof.sh b/examples/45-bokeh/bokeh_dof.sh similarity index 100% rename from examples/xx-bokeh/bokeh_dof.sh rename to examples/45-bokeh/bokeh_dof.sh diff --git a/examples/xx-bokeh/fs_bokeh_copy.sc b/examples/45-bokeh/fs_bokeh_copy.sc similarity index 100% rename from examples/xx-bokeh/fs_bokeh_copy.sc rename to examples/45-bokeh/fs_bokeh_copy.sc diff --git a/examples/xx-bokeh/fs_bokeh_dof_combine.sc b/examples/45-bokeh/fs_bokeh_dof_combine.sc similarity index 100% rename from examples/xx-bokeh/fs_bokeh_dof_combine.sc rename to examples/45-bokeh/fs_bokeh_dof_combine.sc diff --git a/examples/xx-bokeh/fs_bokeh_dof_debug.sc b/examples/45-bokeh/fs_bokeh_dof_debug.sc similarity index 100% rename from examples/xx-bokeh/fs_bokeh_dof_debug.sc rename to examples/45-bokeh/fs_bokeh_dof_debug.sc diff --git a/examples/xx-bokeh/fs_bokeh_dof_downsample.sc b/examples/45-bokeh/fs_bokeh_dof_downsample.sc similarity index 100% rename from examples/xx-bokeh/fs_bokeh_dof_downsample.sc rename to examples/45-bokeh/fs_bokeh_dof_downsample.sc diff --git a/examples/xx-bokeh/fs_bokeh_dof_second_pass.sc b/examples/45-bokeh/fs_bokeh_dof_second_pass.sc similarity index 100% rename from examples/xx-bokeh/fs_bokeh_dof_second_pass.sc rename to examples/45-bokeh/fs_bokeh_dof_second_pass.sc diff --git a/examples/xx-bokeh/fs_bokeh_dof_single_pass.sc b/examples/45-bokeh/fs_bokeh_dof_single_pass.sc similarity index 100% rename from examples/xx-bokeh/fs_bokeh_dof_single_pass.sc rename to examples/45-bokeh/fs_bokeh_dof_single_pass.sc diff --git a/examples/xx-bokeh/fs_bokeh_forward.sc b/examples/45-bokeh/fs_bokeh_forward.sc similarity index 100% rename from examples/xx-bokeh/fs_bokeh_forward.sc rename to examples/45-bokeh/fs_bokeh_forward.sc diff --git a/examples/xx-bokeh/fs_bokeh_forward_grid.sc b/examples/45-bokeh/fs_bokeh_forward_grid.sc similarity index 100% rename from examples/xx-bokeh/fs_bokeh_forward_grid.sc rename to examples/45-bokeh/fs_bokeh_forward_grid.sc diff --git a/examples/xx-bokeh/fs_bokeh_linear_depth.sc b/examples/45-bokeh/fs_bokeh_linear_depth.sc similarity index 100% rename from examples/xx-bokeh/fs_bokeh_linear_depth.sc rename to examples/45-bokeh/fs_bokeh_linear_depth.sc diff --git a/examples/xx-bokeh/makefile b/examples/45-bokeh/makefile similarity index 100% rename from examples/xx-bokeh/makefile rename to examples/45-bokeh/makefile diff --git a/examples/xx-bokeh/parameters.sh b/examples/45-bokeh/parameters.sh similarity index 100% rename from examples/xx-bokeh/parameters.sh rename to examples/45-bokeh/parameters.sh diff --git a/examples/xx-bokeh/varying.def.sc b/examples/45-bokeh/varying.def.sc similarity index 100% rename from examples/xx-bokeh/varying.def.sc rename to examples/45-bokeh/varying.def.sc diff --git a/examples/xx-bokeh/vs_bokeh_forward.sc b/examples/45-bokeh/vs_bokeh_forward.sc similarity index 100% rename from examples/xx-bokeh/vs_bokeh_forward.sc rename to examples/45-bokeh/vs_bokeh_forward.sc diff --git a/examples/xx-bokeh/vs_bokeh_screenquad.sc b/examples/45-bokeh/vs_bokeh_screenquad.sc similarity index 100% rename from examples/xx-bokeh/vs_bokeh_screenquad.sc rename to examples/45-bokeh/vs_bokeh_screenquad.sc diff --git a/examples/runtime/shaders/dx11/fs_bokeh_copy.bin b/examples/runtime/shaders/dx11/fs_bokeh_copy.bin new file mode 100644 index 000000000..40c1b9428 Binary files /dev/null and b/examples/runtime/shaders/dx11/fs_bokeh_copy.bin differ diff --git a/examples/runtime/shaders/dx11/fs_bokeh_dof_combine.bin b/examples/runtime/shaders/dx11/fs_bokeh_dof_combine.bin new file mode 100644 index 000000000..aa4cc1efd Binary files /dev/null and b/examples/runtime/shaders/dx11/fs_bokeh_dof_combine.bin differ diff --git a/examples/runtime/shaders/dx11/fs_bokeh_dof_debug.bin b/examples/runtime/shaders/dx11/fs_bokeh_dof_debug.bin new file mode 100644 index 000000000..ae0e5c6b2 Binary files /dev/null and b/examples/runtime/shaders/dx11/fs_bokeh_dof_debug.bin differ diff --git a/examples/runtime/shaders/dx11/fs_bokeh_dof_downsample.bin b/examples/runtime/shaders/dx11/fs_bokeh_dof_downsample.bin new file mode 100644 index 000000000..bebe7ebec Binary files /dev/null and b/examples/runtime/shaders/dx11/fs_bokeh_dof_downsample.bin differ diff --git a/examples/runtime/shaders/dx11/fs_bokeh_dof_second_pass.bin b/examples/runtime/shaders/dx11/fs_bokeh_dof_second_pass.bin new file mode 100644 index 000000000..e74ed9ee6 Binary files /dev/null and b/examples/runtime/shaders/dx11/fs_bokeh_dof_second_pass.bin differ diff --git a/examples/runtime/shaders/dx11/fs_bokeh_dof_single_pass.bin b/examples/runtime/shaders/dx11/fs_bokeh_dof_single_pass.bin new file mode 100644 index 000000000..91698cb84 Binary files /dev/null and b/examples/runtime/shaders/dx11/fs_bokeh_dof_single_pass.bin differ diff --git a/examples/runtime/shaders/dx11/fs_bokeh_forward.bin b/examples/runtime/shaders/dx11/fs_bokeh_forward.bin new file mode 100644 index 000000000..9a105631c Binary files /dev/null and b/examples/runtime/shaders/dx11/fs_bokeh_forward.bin differ diff --git a/examples/runtime/shaders/dx11/fs_bokeh_forward_grid.bin b/examples/runtime/shaders/dx11/fs_bokeh_forward_grid.bin new file mode 100644 index 000000000..a85fbbf89 Binary files /dev/null and b/examples/runtime/shaders/dx11/fs_bokeh_forward_grid.bin differ diff --git a/examples/runtime/shaders/dx11/fs_bokeh_linear_depth.bin b/examples/runtime/shaders/dx11/fs_bokeh_linear_depth.bin new file mode 100644 index 000000000..4f726b018 Binary files /dev/null and b/examples/runtime/shaders/dx11/fs_bokeh_linear_depth.bin differ diff --git a/examples/runtime/shaders/dx11/fs_denoise_txaa.bin b/examples/runtime/shaders/dx11/fs_denoise_txaa.bin index 3ca080abd..70da9caf9 100644 Binary files a/examples/runtime/shaders/dx11/fs_denoise_txaa.bin and b/examples/runtime/shaders/dx11/fs_denoise_txaa.bin differ diff --git a/examples/runtime/shaders/dx11/vs_bokeh_forward.bin b/examples/runtime/shaders/dx11/vs_bokeh_forward.bin new file mode 100644 index 000000000..5d7a24a2d Binary files /dev/null and b/examples/runtime/shaders/dx11/vs_bokeh_forward.bin differ diff --git a/examples/runtime/shaders/dx11/vs_bokeh_screenquad.bin b/examples/runtime/shaders/dx11/vs_bokeh_screenquad.bin new file mode 100644 index 000000000..6c9e1ce72 Binary files /dev/null and b/examples/runtime/shaders/dx11/vs_bokeh_screenquad.bin differ diff --git a/examples/runtime/shaders/glsl/fs_bokeh_copy.bin b/examples/runtime/shaders/glsl/fs_bokeh_copy.bin new file mode 100644 index 000000000..664d50ec0 Binary files /dev/null and b/examples/runtime/shaders/glsl/fs_bokeh_copy.bin differ diff --git a/examples/runtime/shaders/glsl/fs_bokeh_dof_combine.bin b/examples/runtime/shaders/glsl/fs_bokeh_dof_combine.bin new file mode 100644 index 000000000..25a736df0 Binary files /dev/null and b/examples/runtime/shaders/glsl/fs_bokeh_dof_combine.bin differ diff --git a/examples/runtime/shaders/glsl/fs_bokeh_dof_debug.bin b/examples/runtime/shaders/glsl/fs_bokeh_dof_debug.bin new file mode 100644 index 000000000..1bdb83b4d Binary files /dev/null and b/examples/runtime/shaders/glsl/fs_bokeh_dof_debug.bin differ diff --git a/examples/runtime/shaders/glsl/fs_bokeh_dof_downsample.bin b/examples/runtime/shaders/glsl/fs_bokeh_dof_downsample.bin new file mode 100644 index 000000000..594f0631e Binary files /dev/null and b/examples/runtime/shaders/glsl/fs_bokeh_dof_downsample.bin differ diff --git a/examples/runtime/shaders/glsl/fs_bokeh_dof_second_pass.bin b/examples/runtime/shaders/glsl/fs_bokeh_dof_second_pass.bin new file mode 100644 index 000000000..7250a0db5 Binary files /dev/null and b/examples/runtime/shaders/glsl/fs_bokeh_dof_second_pass.bin differ diff --git a/examples/runtime/shaders/glsl/fs_bokeh_dof_single_pass.bin b/examples/runtime/shaders/glsl/fs_bokeh_dof_single_pass.bin new file mode 100644 index 000000000..a3ca07927 Binary files /dev/null and b/examples/runtime/shaders/glsl/fs_bokeh_dof_single_pass.bin differ diff --git a/examples/runtime/shaders/glsl/fs_bokeh_forward.bin b/examples/runtime/shaders/glsl/fs_bokeh_forward.bin new file mode 100644 index 000000000..d21059722 Binary files /dev/null and b/examples/runtime/shaders/glsl/fs_bokeh_forward.bin differ diff --git a/examples/runtime/shaders/glsl/fs_bokeh_forward_grid.bin b/examples/runtime/shaders/glsl/fs_bokeh_forward_grid.bin new file mode 100644 index 000000000..aaaba0f14 Binary files /dev/null and b/examples/runtime/shaders/glsl/fs_bokeh_forward_grid.bin differ diff --git a/examples/runtime/shaders/glsl/fs_bokeh_linear_depth.bin b/examples/runtime/shaders/glsl/fs_bokeh_linear_depth.bin new file mode 100644 index 000000000..0a3a571dc Binary files /dev/null and b/examples/runtime/shaders/glsl/fs_bokeh_linear_depth.bin differ diff --git a/examples/runtime/shaders/glsl/fs_denoise_txaa.bin b/examples/runtime/shaders/glsl/fs_denoise_txaa.bin index 5be4fec28..249b80e3b 100644 Binary files a/examples/runtime/shaders/glsl/fs_denoise_txaa.bin and b/examples/runtime/shaders/glsl/fs_denoise_txaa.bin differ diff --git a/examples/runtime/shaders/glsl/vs_bokeh_forward.bin b/examples/runtime/shaders/glsl/vs_bokeh_forward.bin new file mode 100644 index 000000000..417e2ecf7 Binary files /dev/null and b/examples/runtime/shaders/glsl/vs_bokeh_forward.bin differ diff --git a/examples/runtime/shaders/glsl/vs_bokeh_screenquad.bin b/examples/runtime/shaders/glsl/vs_bokeh_screenquad.bin new file mode 100644 index 000000000..8d77bb679 Binary files /dev/null and b/examples/runtime/shaders/glsl/vs_bokeh_screenquad.bin differ diff --git a/examples/runtime/shaders/metal/fs_bokeh_copy.bin b/examples/runtime/shaders/metal/fs_bokeh_copy.bin new file mode 100644 index 000000000..45a5c98ec Binary files /dev/null and b/examples/runtime/shaders/metal/fs_bokeh_copy.bin differ diff --git a/examples/runtime/shaders/metal/fs_bokeh_dof_combine.bin b/examples/runtime/shaders/metal/fs_bokeh_dof_combine.bin new file mode 100644 index 000000000..cc75385e9 Binary files /dev/null and b/examples/runtime/shaders/metal/fs_bokeh_dof_combine.bin differ diff --git a/examples/runtime/shaders/metal/fs_bokeh_dof_debug.bin b/examples/runtime/shaders/metal/fs_bokeh_dof_debug.bin new file mode 100644 index 000000000..8aa6b85d0 Binary files /dev/null and b/examples/runtime/shaders/metal/fs_bokeh_dof_debug.bin differ diff --git a/examples/runtime/shaders/metal/fs_bokeh_dof_downsample.bin b/examples/runtime/shaders/metal/fs_bokeh_dof_downsample.bin new file mode 100644 index 000000000..b0276da2f Binary files /dev/null and b/examples/runtime/shaders/metal/fs_bokeh_dof_downsample.bin differ diff --git a/examples/runtime/shaders/metal/fs_bokeh_dof_second_pass.bin b/examples/runtime/shaders/metal/fs_bokeh_dof_second_pass.bin new file mode 100644 index 000000000..21af1590c Binary files /dev/null and b/examples/runtime/shaders/metal/fs_bokeh_dof_second_pass.bin differ diff --git a/examples/runtime/shaders/metal/fs_bokeh_dof_single_pass.bin b/examples/runtime/shaders/metal/fs_bokeh_dof_single_pass.bin new file mode 100644 index 000000000..561bbdcc8 Binary files /dev/null and b/examples/runtime/shaders/metal/fs_bokeh_dof_single_pass.bin differ diff --git a/examples/runtime/shaders/metal/fs_bokeh_forward.bin b/examples/runtime/shaders/metal/fs_bokeh_forward.bin new file mode 100644 index 000000000..92f9a1d70 Binary files /dev/null and b/examples/runtime/shaders/metal/fs_bokeh_forward.bin differ diff --git a/examples/runtime/shaders/metal/fs_bokeh_forward_grid.bin b/examples/runtime/shaders/metal/fs_bokeh_forward_grid.bin new file mode 100644 index 000000000..ee413ef46 Binary files /dev/null and b/examples/runtime/shaders/metal/fs_bokeh_forward_grid.bin differ diff --git a/examples/runtime/shaders/metal/fs_bokeh_linear_depth.bin b/examples/runtime/shaders/metal/fs_bokeh_linear_depth.bin new file mode 100644 index 000000000..535b4849e Binary files /dev/null and b/examples/runtime/shaders/metal/fs_bokeh_linear_depth.bin differ diff --git a/examples/runtime/shaders/metal/fs_denoise_txaa.bin b/examples/runtime/shaders/metal/fs_denoise_txaa.bin index 2d39dc3e3..49aa21240 100644 Binary files a/examples/runtime/shaders/metal/fs_denoise_txaa.bin and b/examples/runtime/shaders/metal/fs_denoise_txaa.bin differ diff --git a/examples/runtime/shaders/metal/vs_bokeh_forward.bin b/examples/runtime/shaders/metal/vs_bokeh_forward.bin new file mode 100644 index 000000000..56b9fe3b3 Binary files /dev/null and b/examples/runtime/shaders/metal/vs_bokeh_forward.bin differ diff --git a/examples/runtime/shaders/metal/vs_bokeh_screenquad.bin b/examples/runtime/shaders/metal/vs_bokeh_screenquad.bin new file mode 100644 index 000000000..c739d7e59 Binary files /dev/null and b/examples/runtime/shaders/metal/vs_bokeh_screenquad.bin differ diff --git a/examples/runtime/shaders/spirv/fs_bokeh_copy.bin b/examples/runtime/shaders/spirv/fs_bokeh_copy.bin new file mode 100644 index 000000000..8e0fb66dc Binary files /dev/null and b/examples/runtime/shaders/spirv/fs_bokeh_copy.bin differ diff --git a/examples/runtime/shaders/spirv/fs_bokeh_dof_combine.bin b/examples/runtime/shaders/spirv/fs_bokeh_dof_combine.bin new file mode 100644 index 000000000..e46e15edf Binary files /dev/null and b/examples/runtime/shaders/spirv/fs_bokeh_dof_combine.bin differ diff --git a/examples/runtime/shaders/spirv/fs_bokeh_dof_debug.bin b/examples/runtime/shaders/spirv/fs_bokeh_dof_debug.bin new file mode 100644 index 000000000..2d2668bb6 Binary files /dev/null and b/examples/runtime/shaders/spirv/fs_bokeh_dof_debug.bin differ diff --git a/examples/runtime/shaders/spirv/fs_bokeh_dof_downsample.bin b/examples/runtime/shaders/spirv/fs_bokeh_dof_downsample.bin new file mode 100644 index 000000000..98b8adfcf Binary files /dev/null and b/examples/runtime/shaders/spirv/fs_bokeh_dof_downsample.bin differ diff --git a/examples/runtime/shaders/spirv/fs_bokeh_dof_second_pass.bin b/examples/runtime/shaders/spirv/fs_bokeh_dof_second_pass.bin new file mode 100644 index 000000000..48fb6fd00 Binary files /dev/null and b/examples/runtime/shaders/spirv/fs_bokeh_dof_second_pass.bin differ diff --git a/examples/runtime/shaders/spirv/fs_bokeh_dof_single_pass.bin b/examples/runtime/shaders/spirv/fs_bokeh_dof_single_pass.bin new file mode 100644 index 000000000..cfd1267a6 Binary files /dev/null and b/examples/runtime/shaders/spirv/fs_bokeh_dof_single_pass.bin differ diff --git a/examples/runtime/shaders/spirv/fs_bokeh_forward.bin b/examples/runtime/shaders/spirv/fs_bokeh_forward.bin new file mode 100644 index 000000000..6b5f9c10f Binary files /dev/null and b/examples/runtime/shaders/spirv/fs_bokeh_forward.bin differ diff --git a/examples/runtime/shaders/spirv/fs_bokeh_forward_grid.bin b/examples/runtime/shaders/spirv/fs_bokeh_forward_grid.bin new file mode 100644 index 000000000..03a18e30b Binary files /dev/null and b/examples/runtime/shaders/spirv/fs_bokeh_forward_grid.bin differ diff --git a/examples/runtime/shaders/spirv/fs_bokeh_linear_depth.bin b/examples/runtime/shaders/spirv/fs_bokeh_linear_depth.bin new file mode 100644 index 000000000..6bdc868a9 Binary files /dev/null and b/examples/runtime/shaders/spirv/fs_bokeh_linear_depth.bin differ diff --git a/examples/runtime/shaders/spirv/fs_denoise_txaa.bin b/examples/runtime/shaders/spirv/fs_denoise_txaa.bin index 370bc762a..8011ab5cc 100644 Binary files a/examples/runtime/shaders/spirv/fs_denoise_txaa.bin and b/examples/runtime/shaders/spirv/fs_denoise_txaa.bin differ diff --git a/examples/runtime/shaders/spirv/vs_bokeh_forward.bin b/examples/runtime/shaders/spirv/vs_bokeh_forward.bin new file mode 100644 index 000000000..ce50d9f9e Binary files /dev/null and b/examples/runtime/shaders/spirv/vs_bokeh_forward.bin differ diff --git a/examples/runtime/shaders/spirv/vs_bokeh_screenquad.bin b/examples/runtime/shaders/spirv/vs_bokeh_screenquad.bin new file mode 100644 index 000000000..da03129e9 Binary files /dev/null and b/examples/runtime/shaders/spirv/vs_bokeh_screenquad.bin differ diff --git a/scripts/genie.lua b/scripts/genie.lua index 7cd60250b..cf5b4ff98 100644 --- a/scripts/genie.lua +++ b/scripts/genie.lua @@ -583,6 +583,7 @@ or _OPTIONS["with-combined-examples"] then , "42-bunnylod" , "43-denoise" , "44-sss" + , "45-bokeh" ) -- 17-drawstress requires multithreading, does not compile for singlethreaded wasm