diff options
Diffstat (limited to 'content/projects/bevy_outline_post_process')
-rw-r--r-- | content/projects/bevy_outline_post_process/index.md | 28 | ||||
-rw-r--r-- | content/projects/bevy_outline_post_process/threshold_10.png | bin | 0 -> 166203 bytes | |||
-rw-r--r-- | content/projects/bevy_outline_post_process/threshold_10_adaptive.png | bin | 0 -> 169214 bytes | |||
-rw-r--r-- | content/projects/bevy_outline_post_process/threshold_10_thick.png | bin | 0 -> 127530 bytes | |||
-rw-r--r-- | content/projects/bevy_outline_post_process/threshold_10_thin.png | bin | 0 -> 194280 bytes |
5 files changed, 28 insertions, 0 deletions
diff --git a/content/projects/bevy_outline_post_process/index.md b/content/projects/bevy_outline_post_process/index.md new file mode 100644 index 0000000..0280f30 --- /dev/null +++ b/content/projects/bevy_outline_post_process/index.md @@ -0,0 +1,28 @@ ++++ +title = "bevy_outline_post_process" +[taxonomies] +categories = ["bevy plugin"] +languages = ["rust", "wgsl"] +[extra] +github = ["exvacuum/bevy_outline_post_process"] +crates = ["bevy_outline_post_process"] ++++ + +this plugin allows you to add outlines to a camera as a post-processing effect in the bevy engine + +![0.1 threshold, 2.0 thickness](threshold_10.png) + +the effect makes use of a normal prepass to determine surface normals of objects in view, and then uses the differences between those normal values to determine where outlines should occur + +the effect is configurable, you can change the thickness of the outlines and the threshold (how significant the difference between normals need to be for an outline to appear) + +![0.1 threshold, 1.0 thickness](threshold_10_thin.png) +![0.1 threshold, 4.0 thickness](threshold_10_thick.png) + +there's also an option to enable *adaptive outlines*, so that darker areas get outlined with white and brighter areas are outlined with black + +![adaptive](threshold_10_adaptive.png) + +i created this effect to improve visual contrast in my [white (I)](@/projects/white_I/index.md) project, which is why i haven't added support for different colors + +you're free to add it yourself though, probably wouldn't be too hard diff --git a/content/projects/bevy_outline_post_process/threshold_10.png b/content/projects/bevy_outline_post_process/threshold_10.png Binary files differnew file mode 100644 index 0000000..4490bd5 --- /dev/null +++ b/content/projects/bevy_outline_post_process/threshold_10.png diff --git a/content/projects/bevy_outline_post_process/threshold_10_adaptive.png b/content/projects/bevy_outline_post_process/threshold_10_adaptive.png Binary files differnew file mode 100644 index 0000000..6ad93d9 --- /dev/null +++ b/content/projects/bevy_outline_post_process/threshold_10_adaptive.png diff --git a/content/projects/bevy_outline_post_process/threshold_10_thick.png b/content/projects/bevy_outline_post_process/threshold_10_thick.png Binary files differnew file mode 100644 index 0000000..85eaaf0 --- /dev/null +++ b/content/projects/bevy_outline_post_process/threshold_10_thick.png diff --git a/content/projects/bevy_outline_post_process/threshold_10_thin.png b/content/projects/bevy_outline_post_process/threshold_10_thin.png Binary files differnew file mode 100644 index 0000000..fbb867e --- /dev/null +++ b/content/projects/bevy_outline_post_process/threshold_10_thin.png |