-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdscs.vmt
156 lines (132 loc) · 9.58 KB
/
dscs.vmt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
"VertexLitGeneric"
{
//////////////////////////////////////////////////////////////////////////////////
// Digimon Story: CyberSleuth | LinkZ | ReArise | New Century
//
// By: Davi (Debiddo) Gooz
//////////////////////////////////////////////////////////////////////////////////
$model "1" // this texture is made for models, and not menu
$nodecal "0" // allow decals by default
$nocull "0" // render just the face frontside, set one to also render the "inside" of the mesh
$surfaceprop "flesh" // control the decal and sound on hit; Buggy in gmod since 2018
$additive "0" // like $translucent but ignore light
$translucent "0" // the true gradient
$alphatest "0" // disable the use of $basetexture alpha channel as transparency by default
$allowalphatocoverage "0" // Control AntiAliasing for alphatest
//$alphatestreference ".01" // threshold to when $alphatest is usable. Almost incompatible with everything
$basealphaenvmapmask "0" // use $basetexture Alpha channel as $envmaskmap. Only when no $bumpmap is present ||| BUG: gmod work in reverse logic. |||
$normalmapalphaenvmapmask "0" // use $bumpmap Alpha channel as $envmaskmap
$basemapluminancephongmask "0" // use luminance of the $basetexture as phong mask (not wok in gmod)
$basemapalphaphongmask "0" // use $basetexture alpha channel as phong mask
// $color and $color2 toggle
$allowdiffusemodulation "1" // allow $color $color2 tint
$blendtintcoloroverbase "0" // where to tint. 0 is under $basetexture. 1 is over the $basetexture (float 0 to 1)
$blendtintbybasealpha "0" // use $basetexture Alpha channel as $color2 mask
$ambientocclusion "1" // does see to do nothing
$diffuseexp "1.5" // l4d2 diffuse exponent
$halflambert "0" // halflambert shading
$phongdisablehalflambert "1" // force disable halflambert, use with $halflambert 0
//////////////////////////////////////////////////////////////////////////////////
// Enable / Disable tilling
//////////////////////////////////////////////////////////////////////////////////
$ClampS "1" // Clamp S/X texture coordinates by default
$ClampT "1" // Clamp T/Y texture coordinates by default
$ClampU "0" // Clamp U/Z texture coordinates by default
//////////////////////////////////////////////////////////////////////////////////
// Textures
// the basic is $BaseTexture
// all other parameters are for optimizations and use a single material
// and a trade-off of optimizations by use more memory
//////////////////////////////////////////////////////////////////////////////////
$basetexture "dev/null" // Diffuse or Albedo texture
//$bumpmap "shared/generic_normalmap" // Bump/Normal map | Alpha Channel is used for "$phong 1" mask by default (avoid use it, unless really needed)
$phongexponenttexture "shared/lightwarp_white" // phong modulator, Red channel is exponent; Green channel as $phongalbedotint modulator; Blue channel unused; Alpha channel is for "$rimlightmask 1"
$lightwarptexture "shared/lightwarp_toon_blue" // act like a diffuse color ramp
//$phongwarptexture "models/ministrider/mini_iridescence" // act like a phong color ramp (dont work on l4d2)
//////////////////////////////////////////////////////////////////////////////////
// Color modulation
//
// $color is unsupported by models unless is Left 4 Dead or Left 4 Dead 2
// they can use $color and $color2 at same time to do different things,
// it's awesome for NPR and HDR tonemap
//
// I strong reccomend use vectors to write colors because is more precisse and will be
// color corrected by the tonemap system automatically when needed
//////////////////////////////////////////////////////////////////////////////////
//$color " [ .9 .9 .9 ] " // used to tint the Albedo, " { 255 255 255 } " default
$color2 " [ .88 .88 .88 ] " // used to tint the Albedo, " { 255 255 255 } " default
//////////////////////////////////////////////////////////////////////////////////
// Self Illumination
//
// TL;DR: it ignore light
//
// There is two types of self illumination, this one is the old one. use it when
// you need a really cheap self illumination, it doesn't cast light. It is like the name say
// something that doesn't need luxels to be bright.
// Otherwise try use $detailblendmode "5" or $EmissiveBlendEnabled "1"
//////////////////////////////////////////////////////////////////////////////////
$selfillum "0" // enable and use $basetexture alpha as selfillum mask. Works as decal render layer pass
$selfillummaskscale "1.5" // multiply map computed light by this amount
$selfIllumFresnel "1" // enable/disable fresnel effect
$selfillumtint " [ 1 1 1 ] " // RGB vectors for light intensity
$selfIllumFresnelMinMaxExp " [ .337 1.8 1 ] " // Mininum, Maximum and Exponent Values for fresnel
//////////////////////////////////////////////////////////////////////////////////
// Textures
// the basic of Emissive Blend Texture
//
// all other parameters are complements to archive some effect
// they decend from VortWarp shader that is included on VertexLitGeneric
// everything here can be driven by Proxies and archive even more effects
//////////////////////////////////////////////////////////////////////////////////
$EmissiveBlendEnabled "0" // Boolean On/Off
$EmissiveBlendTexture "shared/glow_line" // a BW image pattern (where should be emissive) (I8 format reccomended)
$EmissiveBlendBaseTexture "vgui/white" // our effect in a flat 2D texture
$EmissiveBlendFlowTexture "vgui/white" // a RGB image vector
$EmissiveBlendTint " [ 1 1 1 ] " // boost the color instensity by RGB vector tint (works equal as $EnvMapTint)
$EmissiveBlendStrength ".8" // how much the effect is in place (Min:0 | Max: 1)
$EmissiveBlendScrollVector " [ 0 .0337 ] " // to animate, X and Y values to set the speed in units per second
//////////////////////////////////////////////////////////////////////////////////
// Phong
// Phong is a old specular method it's good use just a small amount for a dry skin
// it computes by a exponent that is driven by a additive $phongboot and exponencial $phongexponent
// the fresnel is same as the every fresnel, that can be boosted by $phongfresnelranges
//////////////////////////////////////////////////////////////////////////////////
$phong "1" // enable phong, set zero to disable all phong and rimlight at same time
$forcephong "1" // force phong enabled even on lowend cards
$phongboost ".8" // multiply phong by this value
$phongalbedotint "1" // use the $basetexture's RGB as tint value per textel
//$phongtint " { 83 85 122 } " // uncomment if you need a solid phong color and $phongalbedotint is 0
$phongalbedoboost "1.08" // for SFM, multiply the tint channel by this value
//$phongexponent "4" // for override the default $phongexponenttexture's Red Channel
//$phongexponent2 "5" // for CS:GO compatibles, used in specific light sources
$phongexponentfactor "1.08" // Source2013 only. Multiply the $phongexponenttexture red channel by this value
$phongfresnelranges " [ .0025 3 2 ] " // XYZ (0° 90° and 180°) fresnel values, you can use any float values
//////////////////////////////////////////////////////////////////////////////////
// Rim Light
//////////////////////////////////////////////////////////////////////////////////
$rimlight "1" // rimlight enabled
$rimmask "1" // use $phongexponenttexture Alpha Channel as mask
$rimlightboost "2.1" // multiply the rimlight by this value
$rimlightexponent "1.1" // multiply the rimlight fresnel by this value
//////////////////////////////////////////////////////////////////////////////////
// Env Map
//////////////////////////////////////////////////////////////////////////////////
//$envmap "env_cubemap" // choose the env_cubemap texture
$envmaptint " [ .0003 .0003 .0003 ] " // tune the intensity effect
$envmapfresnel "1" // fresnel is multiplied by this value
//$noenvmapmip "1" // CS:GO NoMip flag for envmap texture
//$envmapcontrast ".8" // color*color control (woks only if no phong is enabled)
//$envmaplightscale ".55" // determine how much is tinted by an light source and Cubemap (CS:GO)
//////////////////////////////////////////////////////////////////////////////////
// Detail Texture
//
// Mental Notes:
// Use with caution
// Source2013: If you use on one model's vmt, all other materials of the same mdl file should use,
// or your model will become brighter than expected at $body and $model qc parameters.
//////////////////////////////////////////////////////////////////////////////////
//$detail "shared/generic_base" // here the magic, we boost the $basetexture with $detail
$detailscale "1" // do not scale and use the original size
$detailblendmode "0" // set zero to use as "decal". RGB values higher than 127 make brighter (intense), and lower make it darker. TIP.: use to tunedown the HDR overbright.
$detailblendfactor ".337" // multiply the $detail by this value. like: how much the effect is in use.
}