Made entire pipeline class based.

This commit is contained in:
2021-09-26 01:45:07 -07:00
parent 00ea49ed74
commit ef021aa200
8 changed files with 145 additions and 46 deletions

View File

@ -3,6 +3,6 @@
// This software is released under the MIT License.
// https://opensource.org/licenses/MIT
declare function assetShaderLoad(shader:Shader, vert:string, frag:string):void;
declare function assetShaderLoad(shader:CShader, vert:string, frag:string):void;
declare function assetTextureLoad(texture:Texture, file:string):void;
declare function assetTextureLoad(texture:CTexture, file:string):void;

View File

@ -1,71 +1,71 @@
type Primitive = Pointer<'PRIMITIVE'>;
type Camera = Pointer<'CAMERA'>;
type Shader = Pointer<'SHADER'>;
type Texture = Pointer<'TEXTURE'>;
type CPrimitive = Pointer<'PRIMITIVE'>;
type CCamera = Pointer<'CAMERA'>;
type CShader = Pointer<'SHADER'>;
type CTexture = Pointer<'TEXTURE'>;
////////////////////////////////////////////////////////////////////////////////
declare function primitiveCreate():Primitive;
declare function primitiveCreate():CPrimitive;
declare function primitiveInit(
primitive:Primitive, verticeCount:number, indiceCount:number
primitive:CPrimitive, verticeCount:number, indiceCount:number
):void;
declare function primitiveDraw(
primitive:Primitive, start:number, end:number
primitive:CPrimitive, start:number, count:number
):void;
declare function primitiveDispose(primitive:Primitive):void;
declare function primitiveDispose(primitive:CPrimitive):void;
declare function quadInit(primitive:Primitive, z:number,
declare function quadInit(primitive:CPrimitive, 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 cameraCreate():CCamera;
declare function cameraLookAt(camera:Camera,
declare function cameraLookAt(camera:CCamera,
x:number, y:number, z:number,
lookX:number, lookY:number, lookZ:number
):void;
declare function cameraLook(camera:Camera,
declare function cameraLook(camera:CCamera,
x:number, y:number, z:number,
pitch:number, yaw:number, roll:number
):void;
declare function cameraPerspective(camera:Camera,
declare function cameraPerspective(camera:CCamera,
fov:number, aspect:number, near:number, far:number
):void;
declare function cameraOrtho(camera:Camera,
declare function cameraOrtho(camera:CCamera,
left:number, right:number, bottom:number, top:number, near:number, far:number
):void;
declare function cameraDispose(camera:Camera):void;
declare function cameraDispose(camera:CCamera):void;
////////////////////////////////////////////////////////////////////////////////
declare function shaderCreate():Shader;
declare function shaderCreate():CShader;
declare function shaderInit(shader:Shader, vert:string, frag:string):void;
declare function shaderInit(shader:CShader, vert:string, frag:string):void;
declare function shaderDispose(shader:Shader):void;
declare function shaderDispose(shader:CShader):void;
declare function shaderUse(shader:Shader):void;
declare function shaderUse(shader:CShader):void;
declare function shaderUseTexture(shader:Shader, texture:Texture):void;
declare function shaderUseTexture(shader:CShader, texture:CTexture):void;
declare function shaderUseCamera(shader:Shader, camera:Camera):void;
declare function shaderUseCamera(shader:CShader, camera:CCamera):void;
declare function shaderUsePosition(shader:Shader,
declare function shaderUsePosition(shader:CShader,
x:number, y:number, z:number,
pitch:number, yaw:number, roll:number
):void;
declare function shaderUsePositionAndScale(shader:Shader,
declare function shaderUsePositionAndScale(shader:CShader,
x:number, y:number, z:number,
pitch:number, yaw:number, roll:number,
sx:number, sy:number, sz:number
@ -73,6 +73,6 @@ declare function shaderUsePositionAndScale(shader:Shader,
////////////////////////////////////////////////////////////////////////////////
declare function textureCreate():Texture;
declare function textureCreate():CTexture;
declare function textureDispose(texture:Texture):void;
declare function textureDispose(texture:CTexture):void;