@takram/three-atmosphere
Version:
A Three.js and R3F implementation of Precomputed Atmospheric Scattering
34 lines (33 loc) • 1.82 kB
TypeScript
import { Vector2, Vector3, Camera } from 'three';
import { NodeBuilder } from 'three/webgpu';
import { Ellipsoid } from '@takram/three-geospatial';
import { AtmosphereContextBase } from './AtmosphereContextBase';
import { AtmosphereLUTNode } from './AtmosphereLUTNode';
import { AtmosphereParameters } from './AtmosphereParameters';
export declare class AtmosphereContext extends AtmosphereContextBase {
lutNode: AtmosphereLUTNode;
matrixWorldToECEF: import('three/webgpu').UniformNode<import('three').Matrix4>;
matrixECIToECEF: import('three/webgpu').UniformNode<import('three').Matrix4>;
sunDirectionECEF: import('three/webgpu').UniformNode<Vector3>;
moonDirectionECEF: import('three/webgpu').UniformNode<Vector3>;
matrixMoonFixedToECEF: import('three/webgpu').UniformNode<import('three').Matrix4>;
scatteringSampleCount: import('three/webgpu').UniformNode<Vector2>;
matrixECEFToWorld: import('three/webgpu').UniformNode<import('three').Matrix4>;
cameraPositionECEF: import('three/webgpu').UniformNode<Vector3>;
altitudeCorrectionECEF: import('three/webgpu').UniformNode<Vector3>;
cameraHeight: import('three/webgpu').UniformNode<number>;
cameraPositionUnit: import('three/webgpu').VarNode;
altitudeCorrectionUnit: import('three/webgpu').VarNode;
camera?: Camera;
ellipsoid: Ellipsoid;
correctAltitude: boolean;
constrainCamera: boolean;
showGround: boolean;
accurateShadowScattering: boolean;
raymarchScattering: boolean;
constructor(parameters?: AtmosphereParameters, lutNode?: AtmosphereLUTNode);
dispose(): void;
}
/** @deprecated Use AtmosphereContext instead. */
export declare const AtmosphereContextNode: typeof AtmosphereContext;
export declare function getAtmosphereContext(builder: NodeBuilder): AtmosphereContext;