playcanvas
Version:
PlayCanvas WebGL game engine
26 lines (23 loc) • 897 B
JavaScript
import { LIGHTTYPE_DIRECTIONAL } from '../../constants.js';
var LitOptionsUtils = {
generateKey (options) {
return "lit" + Object.keys(options).sort().map((key)=>{
if (key === 'chunks') {
return LitOptionsUtils.generateChunksKey(options);
} else if (key === 'lights') {
return LitOptionsUtils.generateLightsKey(options);
}
return key + options[key];
}).join('\n');
},
generateLightsKey (options) {
return "lights:" + options.lights.map((light)=>{
return !options.clusteredLightingEnabled || light._type === LIGHTTYPE_DIRECTIONAL ? "" + light.key + "," : '';
}).join('');
},
generateChunksKey (options) {
var _options_chunks;
return "chunks:\n" + Object.keys((_options_chunks = options.chunks) != null ? _options_chunks : {}).sort().map((key)=>key + options.chunks[key]).join('');
}
};
export { LitOptionsUtils };