โ† All examples

godot shaders

Snow cover on upward-facing surfaces

Cover the upward-facing parts of any mesh with snow: world-space normal direction decides coverage, noise breaks the border, a small vertex lift thickens it, and glints sparkle at the viewing angle.

Recorded render of Snow cover on upward-facing surfaces

What this component contains

  • ATTRIBUTION.md
  • LICENSE
  • README.md
  • component.json
  • demo.tscn
  • inspect_shader.py
  • material.tres
  • preview.png
  • snow_cover_normals.gdshader
  • test_package.py
  • verification/native.json

How it works

Shader type
spatial
Parameters
base_color (vec4 = 0.36, 0.3, 0.26, 1), base_roughness (float = 0.85), base_pattern_scale (float = 12), snow_color (vec4 = 0.95, 0.97, 1, 1), snow_amount (float = 0.55), snow_sharpness (float = 0.06), noise_scale (float = 5), noise_strength (float = 0.35) and 2 more
Result
Rock-coloured objects with white snow caps on their tops and upward slopes, with small glints.
Renderers
compatibility: compiled and rendered, forward plus: not verified, mobile: not verified
Placement
res://baltor/godot_shaders/snow_cover_normals/

Recorded checks

godot 4.7.2.stable.official.ed1daf0bf

  • contract_static
  • engine_run
  • engine_log_clean
  • shader_in_scene
  • capture_written
  • render_not_uniform
  • shader_changes_pixels

Limits to consider

Coverage ignores occlusion: surfaces under overhangs still get snow if they face up. The vertex lift needs smooth normals and enough vertices; on hard-edged meshes it opens seams. Sparkle direction is fixed, not tied to the scene light.