You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.6 KiB
49 lines
1.6 KiB
/* |
|
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;
|
|
|