planettech
Version:
Toolkit for creating real 3D planets that can be transtioned from ground to sky.
64 lines (60 loc) • 2.1 kB
JavaScript
//import renderer from '../render.js';
import * as glslFunctions from './glslFunctions.js';
import * as wgslFunctions from './wgslFunctions.js';
let defualtLight;
let snoise3D;
let snoise3Dfbm
let displacementFBM
let snoise3DDisplacementNormalFBM
let pattern
let displacementNoiseFBMWarp
let displacementNormalNoiseFBMWarp
let blackToWhiteGradient
let whiteToBlackGradient
let RGBMod
let uvTransforms
let customNoiseNormal
let lambertian
const ENV = 'WebGL' //todo
if (ENV==='WebGL') {
console.log('WebGL');
defualtLight = glslFunctions.defualtLight;
snoise3D = glslFunctions.snoise3D;
snoise3Dfbm = glslFunctions.snoise3Dfbm;
snoise3DDisplacementNormalFBM = glslFunctions.snoise3DDisplacementNormalFBM;
displacementNoiseFBMWarp = glslFunctions.displacementNoiseFBMWarp
displacementNormalNoiseFBMWarp = glslFunctions.displacementNormalNoiseFBMWarp
pattern = glslFunctions.pattern
displacementFBM = glslFunctions.displacementFBM
blackToWhiteGradient = glslFunctions.blackToWhiteGradient
whiteToBlackGradient = glslFunctions.whiteToBlackGradient
RGBMod = glslFunctions.RGBMod
uvTransforms = glslFunctions.uvTransforms
customNoiseNormal = glslFunctions.customNoiseNormal
lambertian = glslFunctions.Lambertian
} else if (ENV === 'WebGPU') {
//console.log('WebGPU');
//defualtLight = wgslFunctions.defualtLight;
//snoise3D = wgslFunctions.snoise3D;
//snoise3DDisplacementNormalFBM = wgslFunctions.snoise3DDisplacementNormalFBM;
//displacementNoiseFBMWarp = wgslFunctions.displacementNoiseFBMWarp
//displacementNormalNoiseFBMWarp = wgslFunctions.displacementNormalNoiseFBMWarp
//pattern = wgslFunctions.pattern
//displacementFBM = wgslFunctions.displacementFBM
}
export {
defualtLight,
snoise3D,
snoise3Dfbm,
displacementFBM,
snoise3DDisplacementNormalFBM,
pattern,
displacementNoiseFBMWarp,
displacementNormalNoiseFBMWarp,
blackToWhiteGradient,
whiteToBlackGradient,
RGBMod,
uvTransforms,
customNoiseNormal,
lambertian
};