glsl-blend

glsl photoshop blending modes. glslify formatted. (by jamieowen)

Glsl-blend Alternatives

Similar projects and alternatives to glsl-blend

  • why_wont_this_work_placeholder_01

    Can't figure out stacking two custom-shaded 3d objects in Godot? The solution's not obvious at all, so I've put together a test app that shows how it's done.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better glsl-blend alternative or higher similarity.

glsl-blend reviews and mentions

Posts with mentions or reviews of glsl-blend. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-02-12.
  • Blending and screen-reading shader together: workaround sought.
    2 projects | /r/godot | 12 Feb 2023
  • Blending issues between InstancedMesh using a ShaderMaterial (trying to reproduce mix-blend-mode: overlay from Figma HTML/CSS)
    1 project | /r/threejs | 10 Feb 2023
    A mix-blend-mode: overlay is used on Figma between all the circles (the InstancedMesh in Three.js), so i tried to add some glsl blend overlay code (https://github.com/jamieowen/glsl-blend) like that in the ShaderMaterial used by the InstancedMesh :
  • How can I create a shader that replicates the blend mode "Add" from CanvasItemMaterial?
    1 project | /r/godot | 18 Jan 2023
  • How does this color palette change work? (different color palette for objects with a colored material) I only know how to set one color palette to everything.
    1 project | /r/godot | 30 Oct 2022
    Mostly, it's a little bit of math and throwing some of these https://github.com/jamieowen/glsl-blend together.
  • https://np.reddit.com/r/godot/comments/onafz7/parallax_3d_ice_for_plane_meshes/h616x2k/
    1 project | /r/backtickbot | 21 Jul 2021
    // Saw a few of these in Unreal Engine and Unity but no Godot :( // So I made one, check other comments for free textures and more info on the shader shader_type spatial; uniform sampler2D over_texture : hint_albedo; uniform sampler2D under_texture : hint_albedo; uniform sampler2D surface_normalmap : hint_normal; // Here's a free CC0 ice texture -> https://ambientcg.com/view?id=Ice003 // You can use that for the over_texture and surface_normalmap // Here's another CC0 ice texture -> https://ambientcg.com/view?id=Ice002 // You can use the displacement map of this texture as the under_texture uniform vec4 top_color : hint_color = vec4(0.6764, 0.980092, 1.0, 1.0); uniform float depth = 0.1; uniform float normal_depth = 2.0; uniform float roughness : hint_range(0.0, 1.0) = 0.0; uniform float metallic : hint_range(0.0, 1.0) = 0.7; uniform int method : hint_range(0, 3) = 1; uniform float refractive_angle = 0.4; uniform float refractive_index_1 = 0.4; uniform float refractive_index_2 = 0.7; // ========↓↓↓THIS PART OF THE CODE IS MIT LICENSED↓↓↓======== // GLSL Blend Overlay taken from https://github.com/jamieowen/glsl-blend/blob/master/overlay.glsl float blendOverlay_f(float base, float blend) { float branchless = step (base,0.5); return (2.0*base*blend)*branchless + (1.0-2.0*(1.0-base)*(1.0-blend))*(1.0-branchless); //This is branchless version } vec3 blendOverlay(vec3 base, vec3 blend) { return vec3(blendOverlay_f(base.r,blend.r),blendOverlay_f(base.g,blend.g),blendOverlay_f(base.b,blend.b)); } // ========↑↑↑THIS PART OF THE CODE IS MIT LICENSED↑↑↑======== varying vec3 ro; varying vec3 p; void vertex() { ro = (CAMERA_MATRIX * vec4(0.0, 0.0, 0.0, 1.0)).xyz;// Get camera position in World space coordinates p = ((WORLD_MATRIX)*vec4(VERTEX,1.0)).xyz;// Get fragment position in world space coordinates } void fragment(){ vec3 rd = normalize(p - ro) * depth; vec3 normal = texture(surface_normalmap, UV).xyz; NORMALMAP = normal; NORMALMAP_DEPTH = normal_depth; vec3 refraction; if (method == 1){ refraction = refract(rd, normal, refractive_angle); }else if (method == 2){ float r = refractive_index_1 / refractive_index_2; vec3 n_rd = normalize(rd); float c = dot(-normal, n_rd); float rc = r * c; float root = sqrt( (1.0 - pow(r, 2.0)) * (1.0 - pow(c, 2.0)) ); refraction = r * n_rd + (rc - root) * normal; }else if (method == 3){ rd = normalize(p - ro - normal * refractive_index_1) * depth; } vec3 over_color = texture(over_texture, UV).rgb; vec3 color = blendOverlay(over_color, top_color.rgb); vec2 offset = rd.xz; vec3 under_color = texture(under_texture, UV + offset + ((normal.xy)*2.0-1.0)).rgb; ALBEDO = blendOverlay(color, under_color); ROUGHNESS = roughness; METALLIC = metallic; }
  • Parallax 3D ice for plane meshes.
    1 project | /r/godot | 21 Jul 2021
    // ========↓↓↓THIS PART OF THE CODE IS MIT LICENSED↓↓↓======== // GLSL Blend Overlay taken from https://github.com/jamieowen/glsl-blend/blob/master/overlay.glsl float blendOverlay_f(float base, float blend) {
  • A note from our sponsor - SaaSHub
    www.saashub.com | 23 Apr 2024
    SaaSHub helps you find the best software and product alternatives Learn more →

Stats

Basic glsl-blend repo stats
6
993
0.0
almost 2 years ago

jamieowen/glsl-blend is an open source project licensed under MIT License which is an OSI approved license.

The primary programming language of glsl-blend is GLSL.


Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com