Skip to content

Latest commit

 

History

History
120 lines (102 loc) · 3.54 KB

README.md

File metadata and controls

120 lines (102 loc) · 3.54 KB

ShaderFunction-Extras

ShaderFunctions-GitHub-Preview

This project aims to help Godot developers writing custom written shaders by providing high-level functions which are often used.

🎉 Using the addon

Download the source (releases and AssetLib version are still WIP) and put the ShaderFunction-Extras inside your addons folder. If you don't have one, create it or put the whole addons folder inside your project directory.

After that, you can include the include files you need in your shader like this: gdshaderinc-use-showcase

🔢 Versioning

This repository is only meant for projects created with Godot 4.0 and upwards. However, if you are using Godot 3.x and want to use specific functions, you can copy and paste it inside your shader code still.

ℹ️ Contributing

All these shader functions are based on publicly available shader functions (open-source licensed with permissive licenses such as MIT). If you want to contribute a function, create an issue starting with Proposal: ... describing the shader function and why you think it should be included in here. We can then discuss on how this function and its parameters should be called (for clarity of the users). After that you are open to create a PR (Pull Request) with the dicussed details of the proposal.

Provided Functions

Click me to enlarge

Color

Blend Modes

  • blend_normal
  • blend_dissolve
  • blend_multiply
  • blend_screen
  • blend_overlay
  • blend_hard_light
  • blend_soft_light
  • blend_burn
  • blend_dodge
  • blend_lighten
  • blend_darken
  • blend_difference
  • blend_additive
  • blend_addsub
  • blend_linear_light
  • blend_vivid_light
  • blend_pin_light
  • blend_hard_mix
  • blend_exclusion

Color Adjustment

  • greyscale
  • hsv_to_rgb
  • rgb_to_hsv
  • hsv_adjustment

Noise

  • psrdnoise3_with_gradient
  • psrdnoise3
  • psrdnoise2_with_gradient
  • psrdnoise2

Utility

  • depth_camera_*
  • depth_vertex_*
  • linear_scene_depth_*
  • distance_fade
  • proximity_camera_fade_*
  • proximity_vertex_fade_*
  • world_position_from_depth_*
  • screen_normal_world_space
  • rotation_matrix_by_axis
  • rotate_by_axis
  • random_range
  • remap
  • fresnel
  • fresnel_glow
  • smooth_clamp
  • soft_clamp
  • saturate
  • vertex_billboard

UV

  • uv_panning
  • uv_scaling
  • uv_rotate
  • uv_polar_coord_*
  • uv_flipbook
  • uv_twirl
  • uv_grid_tiler

Wave

  • sawtooth_wave
  • sine_wave
  • sine_wave_angular
  • square_wave
  • triangle_wave

Shapes

  • polygon
  • circle
  • square
  • square_stroke
  • square_rounded
  • swirl
  • line