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
| /*
| Language: RenderMan RSL
| Author: Konstantin Evdokimenko <qewerty@gmail.com>
| Contributors: Shuen-Huei Guan <drake.guan@gmail.com>
| Website: https://renderman.pixar.com/resources/RenderMan_20/shadingLanguage.html
| Category: graphics
| */
|
| function rsl(hljs) {
| return {
| name: 'RenderMan RSL',
| keywords: {
| keyword:
| 'float color point normal vector matrix while for if do return else break extern continue',
| built_in:
| 'abs acos ambient area asin atan atmosphere attribute calculatenormal ceil cellnoise ' +
| 'clamp comp concat cos degrees depth Deriv diffuse distance Du Dv environment exp ' +
| 'faceforward filterstep floor format fresnel incident length lightsource log match ' +
| 'max min mod noise normalize ntransform opposite option phong pnoise pow printf ' +
| 'ptlined radians random reflect refract renderinfo round setcomp setxcomp setycomp ' +
| 'setzcomp shadow sign sin smoothstep specular specularbrdf spline sqrt step tan ' +
| 'texture textureinfo trace transform vtransform xcomp ycomp zcomp'
| },
| illegal: '</',
| contains: [
| hljs.C_LINE_COMMENT_MODE,
| hljs.C_BLOCK_COMMENT_MODE,
| hljs.QUOTE_STRING_MODE,
| hljs.APOS_STRING_MODE,
| hljs.C_NUMBER_MODE,
| {
| className: 'meta',
| begin: '#',
| end: '$'
| },
| {
| className: 'class',
| beginKeywords: 'surface displacement light volume imager',
| end: '\\('
| },
| {
| beginKeywords: 'illuminate illuminance gather',
| end: '\\('
| }
| ]
| };
| }
|
| module.exports = rsl;
|
|