Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Dinges <blender@dingto.org>2013-05-01 17:21:15 +0400
committerThomas Dinges <blender@dingto.org>2013-05-01 17:21:15 +0400
commit0440d77dbc87ea8c24bf7935a0b37f54bed69188 (patch)
treeb3f30445c51cdac1ff8689a70879c45c532ec40a /release/scripts/templates_osl
parent4b0051b59c6dbb2b3cd9a41b30f6f976f7322622 (diff)
Cycles / OSL:
* Add a few more OSL templates to the Text Editor, so people can use some of the OSL only shaders and closures. * Temperature (Kelvin) to RGB converter * Wavelength to RGB converter * Ramp closure (Phong and Diffuse) * Toon closure (Diffuse and Specular)
Diffstat (limited to 'release/scripts/templates_osl')
-rw-r--r--release/scripts/templates_osl/ramp_closure.osl20
-rw-r--r--release/scripts/templates_osl/temperature_to_rgb.osl9
-rw-r--r--release/scripts/templates_osl/toon_closure.osl12
-rw-r--r--release/scripts/templates_osl/wavelength_to_rgb.osl9
4 files changed, 50 insertions, 0 deletions
diff --git a/release/scripts/templates_osl/ramp_closure.osl b/release/scripts/templates_osl/ramp_closure.osl
new file mode 100644
index 00000000000..3f5cf24146c
--- /dev/null
+++ b/release/scripts/templates_osl/ramp_closure.osl
@@ -0,0 +1,20 @@
+
+shader node_ramp_bsdf(
+ float Exponent = 10.0,
+ color Color1 = color(0.8, 0.0, 0.0),
+ color Color2 = color(0.0, 0.8, 0.0),
+ color Color3 = color(0.0, 0.0, 0.8),
+ color Color4 = 0.1,
+ color Color5 = 0.2,
+ color Color6 = 0.3,
+ color Color7 = 0.4,
+ color Color8 = 0.5,
+ normal Normal = N,
+ output closure color Phong = 0,
+ output closure color Diffuse = 0)
+{
+ color Color[8] = {Color1, Color2, Color3, Color4, Color5, Color6, Color7, Color8};
+
+ Phong = phong_ramp(Normal, Exponent, Color);
+ Diffuse = diffuse_ramp(Normal, Color);
+} \ No newline at end of file
diff --git a/release/scripts/templates_osl/temperature_to_rgb.osl b/release/scripts/templates_osl/temperature_to_rgb.osl
new file mode 100644
index 00000000000..6b91416c609
--- /dev/null
+++ b/release/scripts/templates_osl/temperature_to_rgb.osl
@@ -0,0 +1,9 @@
+
+shader temperature_to_rgb(
+ float Kelvin = 1200.0,
+ output color Color = 0.8)
+{
+ /* Kelvin to RGB */
+ Color = blackbody(Kelvin);
+}
+
diff --git a/release/scripts/templates_osl/toon_closure.osl b/release/scripts/templates_osl/toon_closure.osl
new file mode 100644
index 00000000000..ccc381288d2
--- /dev/null
+++ b/release/scripts/templates_osl/toon_closure.osl
@@ -0,0 +1,12 @@
+
+shader node_toon_bsdf(
+ color Color = 0.8,
+ float Size = 0.5,
+ float Smooth = 0.0,
+ normal Normal = N,
+ output closure color Diffuse = 0,
+ output closure color Specular = 0)
+{
+ Diffuse = Color * diffuse_toon(Normal, Size, Smooth);
+ Specular = Color * specular_toon(Normal, Size, Smooth);
+} \ No newline at end of file
diff --git a/release/scripts/templates_osl/wavelength_to_rgb.osl b/release/scripts/templates_osl/wavelength_to_rgb.osl
new file mode 100644
index 00000000000..2a605be101d
--- /dev/null
+++ b/release/scripts/templates_osl/wavelength_to_rgb.osl
@@ -0,0 +1,9 @@
+
+shader wavelength_to_rgb(
+ float Wavelength = 500.0,
+ output color Color = 0.8)
+{
+ /* Wavelength to RGB */
+ Color = wavelength_color(Wavelength);
+}
+