molstar
Version:
A comprehensive macromolecular library.
121 lines (120 loc) • 6.24 kB
TypeScript
/**
* Copyright (c) 2018-2023 mol* contributors, licensed under MIT, See LICENSE file for more info.
*
* @author Alexander Rose <alexander.rose@weirdbyte.de>
*/
import { Renderable, RenderableState } from '../renderable';
import { WebGLContext } from '../webgl/context';
import { Transparency } from '../webgl/render-item';
import { AttributeSpec, ElementsSpec, DefineSpec, Values, ValueSpec, UniformSpec } from './schema';
export declare const MeshSchema: {
readonly aGroup: AttributeSpec<"float32">;
readonly aPosition: AttributeSpec<"float32">;
readonly aNormal: AttributeSpec<"float32">;
readonly elements: ElementsSpec<"uint32">;
readonly dVaryingGroup: DefineSpec<"boolean">;
readonly dFlatShaded: DefineSpec<"boolean">;
readonly uDoubleSided: UniformSpec<"b">;
readonly dFlipSided: DefineSpec<"boolean">;
readonly dIgnoreLight: DefineSpec<"boolean">;
readonly dCelShaded: DefineSpec<"boolean">;
readonly dXrayShaded: DefineSpec<"string">;
readonly dTransparentBackfaces: DefineSpec<"string">;
readonly uBumpFrequency: UniformSpec<"f">;
readonly uBumpAmplitude: UniformSpec<"f">;
readonly meta: ValueSpec<"unknown">;
readonly dLightCount: DefineSpec<"number">;
readonly dColorMarker: DefineSpec<"boolean">;
readonly dClipObjectCount: DefineSpec<"number">;
readonly dClipVariant: DefineSpec<"string">;
readonly uClipObjectType: UniformSpec<"i[]">;
readonly uClipObjectInvert: UniformSpec<"b[]">;
readonly uClipObjectPosition: UniformSpec<"v3[]">;
readonly uClipObjectRotation: UniformSpec<"v4[]">;
readonly uClipObjectScale: UniformSpec<"v3[]">;
readonly uClipObjectTransform: UniformSpec<"m4[]">;
readonly aInstance: AttributeSpec<"float32">;
readonly aTransform: AttributeSpec<"float32">;
readonly uAlpha: UniformSpec<"f">;
readonly uMetalness: UniformSpec<"f">;
readonly uRoughness: UniformSpec<"f">;
readonly uBumpiness: UniformSpec<"f">;
readonly uEmissive: UniformSpec<"f">;
readonly uDensity: UniformSpec<"f">;
readonly uVertexCount: UniformSpec<"i">;
readonly uInstanceCount: UniformSpec<"i">;
readonly uGroupCount: UniformSpec<"i">;
readonly uInvariantBoundingSphere: UniformSpec<"v4">;
readonly uLod: UniformSpec<"v4">;
readonly drawCount: ValueSpec<"number">;
readonly instanceCount: ValueSpec<"number">;
readonly alpha: ValueSpec<"number">;
readonly matrix: ValueSpec<"m4">;
readonly transform: ValueSpec<"float32">;
readonly extraTransform: ValueSpec<"float32">;
readonly hasReflection: ValueSpec<"boolean">;
readonly instanceGranularity: ValueSpec<"boolean">;
readonly boundingSphere: ValueSpec<"sphere">;
readonly invariantBoundingSphere: ValueSpec<"sphere">;
readonly instanceGrid: ValueSpec<"instanceGrid">;
readonly uClippingTexDim: UniformSpec<"v2">;
readonly tClipping: import("./schema").TextureSpec<"image-uint8">;
readonly dClipping: DefineSpec<"boolean">;
readonly dClippingType: DefineSpec<"string">;
readonly uSubstanceTexDim: UniformSpec<"v2">;
readonly tSubstance: import("./schema").TextureSpec<"image-uint8">;
readonly dSubstance: DefineSpec<"boolean">;
readonly uSubstanceGridDim: UniformSpec<"v3">;
readonly uSubstanceGridTransform: UniformSpec<"v4">;
readonly tSubstanceGrid: import("./schema").TextureSpec<"texture">;
readonly dSubstanceType: DefineSpec<"string">;
readonly uSubstanceStrength: UniformSpec<"f">;
readonly uEmissiveTexDim: UniformSpec<"v2">;
readonly tEmissive: import("./schema").TextureSpec<"image-uint8">;
readonly dEmissive: DefineSpec<"boolean">;
readonly emissiveAverage: ValueSpec<"number">;
readonly uEmissiveGridDim: UniformSpec<"v3">;
readonly uEmissiveGridTransform: UniformSpec<"v4">;
readonly tEmissiveGrid: import("./schema").TextureSpec<"texture">;
readonly dEmissiveType: DefineSpec<"string">;
readonly uEmissiveStrength: UniformSpec<"f">;
readonly uTransparencyTexDim: UniformSpec<"v2">;
readonly tTransparency: import("./schema").TextureSpec<"image-uint8">;
readonly dTransparency: DefineSpec<"boolean">;
readonly transparencyAverage: ValueSpec<"number">;
readonly transparencyMin: ValueSpec<"number">;
readonly uTransparencyGridDim: UniformSpec<"v3">;
readonly uTransparencyGridTransform: UniformSpec<"v4">;
readonly tTransparencyGrid: import("./schema").TextureSpec<"texture">;
readonly dTransparencyType: DefineSpec<"string">;
readonly uTransparencyStrength: UniformSpec<"f">;
readonly uOverpaintTexDim: UniformSpec<"v2">;
readonly tOverpaint: import("./schema").TextureSpec<"image-uint8">;
readonly dOverpaint: DefineSpec<"boolean">;
readonly uOverpaintGridDim: UniformSpec<"v3">;
readonly uOverpaintGridTransform: UniformSpec<"v4">;
readonly tOverpaintGrid: import("./schema").TextureSpec<"texture">;
readonly dOverpaintType: DefineSpec<"string">;
readonly uOverpaintStrength: UniformSpec<"f">;
readonly uMarker: UniformSpec<"f">;
readonly uMarkerTexDim: UniformSpec<"v2">;
readonly tMarker: import("./schema").TextureSpec<"image-uint8">;
readonly markerAverage: ValueSpec<"number">;
readonly markerStatus: ValueSpec<"number">;
readonly dMarkerType: DefineSpec<"string">;
readonly uColor: UniformSpec<"v3">;
readonly uColorTexDim: UniformSpec<"v2">;
readonly uColorGridDim: UniformSpec<"v3">;
readonly uColorGridTransform: UniformSpec<"v4">;
readonly uPaletteDomain: UniformSpec<"v2">;
readonly uPaletteDefault: UniformSpec<"v3">;
readonly tColor: import("./schema").TextureSpec<"image-uint8">;
readonly tPalette: import("./schema").TextureSpec<"image-uint8">;
readonly tColorGrid: import("./schema").TextureSpec<"texture">;
readonly dColorType: DefineSpec<"string">;
readonly dUsePalette: DefineSpec<"boolean">;
readonly dGeometryType: DefineSpec<"string">;
};
export type MeshSchema = typeof MeshSchema;
export type MeshValues = Values<MeshSchema>;
export declare function MeshRenderable(ctx: WebGLContext, id: number, values: MeshValues, state: RenderableState, materialId: number, transparency: Transparency): Renderable<MeshValues>;