SkyboxBlended
(→ShaderLab - SkyboxBlended.shader: updated for Unity 5 shader menu) |
(→ShaderLab - SkyboxBlended.shader) |
||
(4 intermediate revisions by one user not shown) | |||
Line 34: | Line 34: | ||
Cull Off | Cull Off | ||
Fog { Mode Off } | Fog { Mode Off } | ||
− | Lighting Off | + | Lighting Off |
Color [_Tint] | Color [_Tint] | ||
Pass { | Pass { | ||
SetTexture [_FrontTex] { combine texture } | SetTexture [_FrontTex] { combine texture } | ||
SetTexture [_FrontTex2] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous } | SetTexture [_FrontTex2] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous } | ||
− | |||
} | } | ||
Pass { | Pass { | ||
SetTexture [_BackTex] { combine texture } | SetTexture [_BackTex] { combine texture } | ||
SetTexture [_BackTex2] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous } | SetTexture [_BackTex2] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous } | ||
− | |||
} | } | ||
Pass { | Pass { | ||
SetTexture [_LeftTex] { combine texture } | SetTexture [_LeftTex] { combine texture } | ||
SetTexture [_LeftTex2] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous } | SetTexture [_LeftTex2] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous } | ||
− | |||
} | } | ||
Pass { | Pass { | ||
SetTexture [_RightTex] { combine texture } | SetTexture [_RightTex] { combine texture } | ||
SetTexture [_RightTex2] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous } | SetTexture [_RightTex2] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous } | ||
− | |||
} | } | ||
Pass { | Pass { | ||
SetTexture [_UpTex] { combine texture } | SetTexture [_UpTex] { combine texture } | ||
SetTexture [_UpTex2] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous } | SetTexture [_UpTex2] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous } | ||
− | |||
} | } | ||
Pass { | Pass { | ||
SetTexture [_DownTex] { combine texture } | SetTexture [_DownTex] { combine texture } | ||
SetTexture [_DownTex2] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous } | SetTexture [_DownTex2] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous } | ||
− | |||
} | } | ||
} | } | ||
Line 73: | Line 67: | ||
==ShaderLab - SkyboxBlendedFog.shader== | ==ShaderLab - SkyboxBlendedFog.shader== | ||
Similar to the above shader, with the addition of a horizon fog texture channel. Can add a nice atmosphere to your scene! Author: [[User:Aubrey|Aubrey Falconer]] | Similar to the above shader, with the addition of a horizon fog texture channel. Can add a nice atmosphere to your scene! Author: [[User:Aubrey|Aubrey Falconer]] | ||
− | <syntaxhighlight lang="shaderlab">Shader " | + | <syntaxhighlight lang="shaderlab">Shader "Skybox/Blended Fog" { |
Properties { | Properties { | ||
_Tint ("Tint Color", Color) = (.5, .5, .5, .5) | _Tint ("Tint Color", Color) = (.5, .5, .5, .5) | ||
Line 98: | Line 92: | ||
Cull Off | Cull Off | ||
Fog { Mode Off } | Fog { Mode Off } | ||
− | Lighting Off | + | Lighting Off |
Color [_Tint] | Color [_Tint] | ||
Pass { | Pass { | ||
Line 131: | Line 125: | ||
} | } | ||
− | Fallback " | + | Fallback "Skybox/6 Sided", 1 |
}</syntaxhighlight> | }</syntaxhighlight> |
Latest revision as of 12:42, 18 March 2015
Author: Aras Pranckevicius
Contents |
[edit] Description
A skybox shader that blends between two sets of skybox textures. Think day and night cycle!
This shader requires a graphics card that has at least three texture blending stages (GeForce3 and up, Radeon and up). Otherwise it will fallback to the standard Skybox shader (i.e. display the first skybox texture set).
[edit] Usage
Just like standard skybox: assign the textures; and the Blend slider controls the blending.
If you want to build or animate the skybox from script, use skyboxmaterial.SetFloat("_Blend", yourBlend) to change the blending; can also use SetTexture material functions to setup or change the textures.
[edit] ShaderLab - SkyboxBlended.shader
Invalid language.
You need to specify a language like this: <source lang="html4strict">...</source>
Supported languages for syntax highlighting:
4cs, 6502acme, 6502kickass, 6502tasm, 68000devpac, abap, actionscript, actionscript3, ada, algol68, apache, applescript, apt_sources, asm, asp, autoconf, autohotkey, autoit, avisynth, awk, bascomavr, bash, basic4gl, bf, bibtex, blitzbasic, bnf, boo, c, c_loadrunner, c_mac, caddcl, cadlisp, cfdg, cfm, chaiscript, cil, clojure, cmake, cobol, coffeescript, cpp, cpp-qt, csharp, css, cuesheet, d, dcs, delphi, diff, div, dos, dot, e, ecmascript, eiffel, email, epc, erlang, euphoria, f1, falcon, fo, fortran, freebasic, fsharp, gambas, gdb, genero, genie, gettext, glsl, gml, gnuplot, go, groovy, gwbasic, haskell, hicest, hq9plus, html4strict, html5, icon, idl, ini, inno, intercal, io, j, java, java5, javascript, jquery, kixtart, klonec, klonecpp, latex, lb, lisp, llvm, locobasic, logtalk, lolcode, lotusformulas, lotusscript, lscript, lsl2, lua, m68k, magiksf, make, mapbasic, matlab, mirc, mmix, modula2, modula3, mpasm, mxml, mysql, newlisp, nsis, oberon2, objc, objeck, ocaml, ocaml-brief, oobas, oracle11, oracle8, oxygene, oz, pascal, pcre, per, perl, perl6, pf, php, php-brief, pic16, pike, pixelbender, pli, plsql, postgresql, povray, powerbuilder, powershell, proftpd, progress, prolog, properties, providex, purebasic, pycon, python, q, qbasic, rails, rebol, reg, robots, rpmspec, rsplus, ruby, sas, scala, scheme, scilab, sdlbasic, smalltalk, smarty, sql, systemverilog, tcl, teraterm, text, thinbasic, tsql, typoscript, unicon, uscript, vala, vb, vbnet, verilog, vhdl, vim, visualfoxpro, visualprolog, whitespace, whois, winbatch, xbasic, xml, xorg_conf, xpp, yaml, z80, zxbasic
Shader "Skybox/Blended" { Properties { _Tint ("Tint Color", Color) = (.5, .5, .5, .5) _Blend ("Blend", Range(0.0,1.0)) = 0.5 _FrontTex ("Front (+Z)", 2D) = "white" {} _BackTex ("Back (-Z)", 2D) = "white" {} _LeftTex ("Left (+X)", 2D) = "white" {} _RightTex ("Right (-X)", 2D) = "white" {} _UpTex ("Up (+Y)", 2D) = "white" {} _DownTex ("Down (-Y)", 2D) = "white" {} _FrontTex2("2 Front (+Z)", 2D) = "white" {} _BackTex2("2 Back (-Z)", 2D) = "white" {} _LeftTex2("2 Left (+X)", 2D) = "white" {} _RightTex2("2 Right (-X)", 2D) = "white" {} _UpTex2("2 Up (+Y)", 2D) = "white" {} _DownTex2("2 Down (-Y)", 2D) = "white" {} } SubShader { Tags { "Queue" = "Background" } Cull Off Fog { Mode Off } Lighting Off Color [_Tint] Pass { SetTexture [_FrontTex] { combine texture } SetTexture [_FrontTex2] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous } } Pass { SetTexture [_BackTex] { combine texture } SetTexture [_BackTex2] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous } } Pass { SetTexture [_LeftTex] { combine texture } SetTexture [_LeftTex2] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous } } Pass { SetTexture [_RightTex] { combine texture } SetTexture [_RightTex2] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous } } Pass { SetTexture [_UpTex] { combine texture } SetTexture [_UpTex2] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous } } Pass { SetTexture [_DownTex] { combine texture } SetTexture [_DownTex2] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous } } } Fallback "Skybox/6 Sided", 1 }
[edit] ShaderLab - SkyboxBlendedFog.shader
Similar to the above shader, with the addition of a horizon fog texture channel. Can add a nice atmosphere to your scene! Author: Aubrey Falconer
Invalid language.
You need to specify a language like this: <source lang="html4strict">...</source>
Supported languages for syntax highlighting:
4cs, 6502acme, 6502kickass, 6502tasm, 68000devpac, abap, actionscript, actionscript3, ada, algol68, apache, applescript, apt_sources, asm, asp, autoconf, autohotkey, autoit, avisynth, awk, bascomavr, bash, basic4gl, bf, bibtex, blitzbasic, bnf, boo, c, c_loadrunner, c_mac, caddcl, cadlisp, cfdg, cfm, chaiscript, cil, clojure, cmake, cobol, coffeescript, cpp, cpp-qt, csharp, css, cuesheet, d, dcs, delphi, diff, div, dos, dot, e, ecmascript, eiffel, email, epc, erlang, euphoria, f1, falcon, fo, fortran, freebasic, fsharp, gambas, gdb, genero, genie, gettext, glsl, gml, gnuplot, go, groovy, gwbasic, haskell, hicest, hq9plus, html4strict, html5, icon, idl, ini, inno, intercal, io, j, java, java5, javascript, jquery, kixtart, klonec, klonecpp, latex, lb, lisp, llvm, locobasic, logtalk, lolcode, lotusformulas, lotusscript, lscript, lsl2, lua, m68k, magiksf, make, mapbasic, matlab, mirc, mmix, modula2, modula3, mpasm, mxml, mysql, newlisp, nsis, oberon2, objc, objeck, ocaml, ocaml-brief, oobas, oracle11, oracle8, oxygene, oz, pascal, pcre, per, perl, perl6, pf, php, php-brief, pic16, pike, pixelbender, pli, plsql, postgresql, povray, powerbuilder, powershell, proftpd, progress, prolog, properties, providex, purebasic, pycon, python, q, qbasic, rails, rebol, reg, robots, rpmspec, rsplus, ruby, sas, scala, scheme, scilab, sdlbasic, smalltalk, smarty, sql, systemverilog, tcl, teraterm, text, thinbasic, tsql, typoscript, unicon, uscript, vala, vb, vbnet, verilog, vhdl, vim, visualfoxpro, visualprolog, whitespace, whois, winbatch, xbasic, xml, xorg_conf, xpp, yaml, z80, zxbasic
Shader "Skybox/Blended Fog" { Properties { _Tint ("Tint Color", Color) = (.5, .5, .5, .5) _FogTint ("Fog Tint", Color) = (.5, .5, .5, .5) _FrontTex ("Front (+Z)", 2D) = "white" {} _BackTex ("Back (-Z)", 2D) = "white" {} _LeftTex ("Left (+X)", 2D) = "white" {} _RightTex ("Right (-X)", 2D) = "white" {} _UpTex ("Up (+Y)", 2D) = "white" {} _DownTex ("Down (-Y)", 2D) = "white" {} _FrontTex2("2 Front (+Z)", 2D) = "white" {} _BackTex2("2 Back (-Z)", 2D) = "white" {} _LeftTex2("2 Left (+X)", 2D) = "white" {} _RightTex2("2 Right (-X)", 2D) = "white" {} _UpTex2("2 Up (+Y)", 2D) = "white" {} _DownTex2("2 Down (-Y)", 2D) = "white" {} _FogSide("Side FogMask", 2D) = "white" {} _FogBottom("Bottom FogMask", 2D) = "white" {} } SubShader { Tags { "Queue" = "Background" } Cull Off Fog { Mode Off } Lighting Off Color [_Tint] Pass { SetTexture [_FrontTex] { combine texture } SetTexture [_FrontTex2] { constantColor[_Tint] combine texture lerp(constant) previous } SetTexture [_FogSide] { constantColor[_FogTint] combine constant lerp (texture) previous } } Pass { SetTexture [_BackTex] { combine texture } SetTexture [_BackTex2] { constantColor[_Tint] combine texture lerp(constant) previous } SetTexture [_FogSide] { constantColor[_FogTint] combine constant lerp (texture) previous } } Pass { SetTexture [_LeftTex] { combine texture } SetTexture [_LeftTex2] { constantColor[_Tint] combine texture lerp(constant) previous } SetTexture [_FogSide] { constantColor[_FogTint] combine constant lerp (texture) previous } } Pass { SetTexture [_RightTex] { combine texture } SetTexture [_RightTex2] { constantColor[_Tint] combine texture lerp(constant) previous } SetTexture [_FogSide] { constantColor[_FogTint] combine constant lerp (texture) previous } } Pass { SetTexture [_UpTex] { combine texture } SetTexture [_UpTex2] { constantColor[_Tint] combine texture lerp(constant) previous } } Pass { SetTexture [_DownTex] { combine texture } SetTexture [_DownTex2] { constantColor[_Tint] combine texture lerp(constant) previous } SetTexture [_FogBottom] { constantColor[_FogTint] combine constant lerp (texture) previous } } } Fallback "Skybox/6 Sided", 1 }