Dawn/src/script/api/display.d.ts

70 lines
2.0 KiB
TypeScript

type Primitive = Pointer<'PRIMITIVE'>;
type Camera = Pointer<'CAMERA'>;
type Shader = Pointer<'SHADER'>;
type Texture = Pointer<'TEXTURE'>;
////////////////////////////////////////////////////////////////////////////////
declare function primitiveCreate():Primitive;
declare function primitiveInit(
primitive:Primitive, verticeCount:number, indiceCount:number
):void;
declare function primitiveDraw(
primitive:Primitive, start:number, end:number
):void;
declare function primitiveDispose(primitive:Primitive):void;
declare function quadInit(primitive:Primitive, z:number,
x0:number, y0:number, u0:number, v0:number,
x1:number, y1:number, u1:number, v1:number
):void;
////////////////////////////////////////////////////////////////////////////////
declare function cameraCreate():Camera;
declare function cameraLookAt(camera:Camera,
x:number, y:number, z:number,
lookX:number, lookY:number, lookZ:number
):void;
declare function cameraLook(camera:Camera,
x:number, y:number, z:number,
pitch:number, yaw:number, roll:number
):void;
declare function cameraPerspective(camera:Camera,
fov:number, aspect:number, near:number, far:number
):void;
declare function cameraOrtho(camera:Camera,
left:number, right:number, bottom:number, top:number, near:number, far:number
):void;
declare function cameraDispose(camera:Camera):void;
////////////////////////////////////////////////////////////////////////////////
declare function shaderCreate():Shader;
declare function shaderInit(shader:Shader, vert:string, frag:string):void;
declare function shaderDispose(shader:Shader):void;
declare function shaderUse(shader:Shader):void;
declare function shaderUseCamera(shader:Shader, camera:Camera):void;
declare function shaderUsePosition(shader:Shader,
x:number, y:number, z:number,
pitch:number, yaw:number, roll:number
):void;
declare function shaderUsePositionAndScale(shader:Shader,
x:number, y:number, z:number,
pitch:number, yaw:number, roll:number,
sx:number, sy:number, sz:number
):void;