Show & Share(tm) - your OSL shaders!

Show & Share(tm) - your OSL shaders!

madsd
Advisor Advisor
1,960 Views
10 Replies
Message 1 of 11

Show & Share(tm) - your OSL shaders!

madsd
Advisor
Advisor

I figured it could be useful to share some shaders among users.
You know, get it going 🙂

Here is my first, it's a simplex selfcontained art shader that can be used for camera projections on volumes for example to create interesting procedural forms, you may have seen examples made by Lee Griggs utilizing the technic in the online manual and as private projects.

Link to viewport render of the procedural, I set time scale quite small so large structures remain somewhat unchanged while finer stuctures move, tried to zone in on that blue river in the middle as it has some interesting development. The motion is Fractal Brownian based.
https://i.imgur.com/01ttifU.gifv


Shader is currently 152 code lines long.

Looking forward to see some of your guys shaders!

If your shader is finished, please share the code!

3445-1.jpg

3446-2.jpg

0 Likes
1,961 Views
10 Replies
Replies (10)
Message 2 of 11

zenop
Advocate
Advocate

Great idea, cool shader.

0 Likes
Message 3 of 11

giandosopaolo
Advocate
Advocate

What a great idea!

Does anyone have a Parallax Occlusion shader working for mtoa?

0 Likes
Message 4 of 11

madsd
Advisor
Advisor

Working on an OSL Curvature shader.
Using Arnold Curvature as refference.
I still have some things to solve, but it's looking better today than it did yesterday.


6980-aaaaa.png

0 Likes
Message 5 of 11

CiroCardoso3v
Advisor
Advisor

I am up to test this if you need some beta testers 😉

I use curvature a lot for my materials

Lead Enviroment Artist @Axis Studios

Arnold Discord Server


Ciro Cardoso

EESignature

0 Likes
Message 6 of 11

madsd
Advisor
Advisor

Ah, great.
Ill make sure you get your hands on it soon 🙂
I REALLY need to make a new update on the arnold converter, been putting it off for too long, got a long list of mails from people complaining about 2021 support among other things.

0 Likes
Message 7 of 11

CiroCardoso3v
Advisor
Advisor

I am just using Max 2021 now, so I can give you hand with that. I will check with you on Discord.

Lead Enviroment Artist @Axis Studios

Arnold Discord Server


Ciro Cardoso

EESignature

0 Likes
Message 8 of 11

madsd
Advisor
Advisor

Kif fractal base. 3dsmax viewport, no PBR. Displaced and diffuse colored only.

This thing can morph into all kinds of things and it's very easy to get something going from default setup.

Ill probably do some iterations on it and upload some more examples at a point and the shader of course.

7147-qwe.png

0 Likes
Message 9 of 11

madsd
Advisor
Advisor

OSL Triplanar map in the works!

Got all kinds of sub features, propegrate random instances with different random values and a pass generator, Extracting PBR data from the input.


Here is shown some practical auto things like getting rid og super bad lit texture light, as well as removing seams, making the ugly input texture a decent uniform texture almost automatically.

7148-qweqwe.gif


Slides into a PBR chain.


7149-xx.png

0 Likes
Message 10 of 11

madsd
Advisor
Advisor

Code to do a nice Albedo extraction from badly lit textures.
I had to look around for some days, until I understood the concept and had a hole through to a useful output.


This is the main blender, which is essentially a highpass filter with a lumniosity blend, the latter was what created some head scratching, but got it working.

If you want to patch in content make sure your Arnold Auto Mip is set to ON, as the texture calls needed needs to be mipable.

So you need to do a highpass filter that gets blended correctly.


Ill ship a stand alone Albedo texture generator soon.


7150-vvv.gif


color luminosity( color s, color d )
{
float dLum = dot(d, color(0.3, 0.59, 0.11));
float sLum = dot(s, color(0.3, 0.59, 0.11));
float lum = sLum - dLum;
color c = d + lum;
float minC = min(min(c[0], c[1]), c[2]);
float maxC = max(max(c[0], c[1]), c[2]);
if(minC < 0.0) return sLum + ((c - sLum) * sLum) / (sLum - minC);
else if(maxC > 1.0) return sLum + ((c - sLum) * (1.0 - sLum)) / (maxC - sLum);
else return c;

}

shader Luminosity
(
color source = 0,
color backdrop = 0,
output color Out = 0,

)
{

Out = luminosity(source,backdrop);

}


0 Likes
Message 11 of 11

madsd
Advisor
Advisor

https://github.com/gkmotu/OSL-Shaders

2 new shaders.

OSL Flakes, based on Arnold flakes.

OSL Triplanar, supports things like Tyflow particles and instances via mode.

0 Likes