2021-06-23 19:25:12 +02:00
|
|
|
#pragma once
|
|
|
|
#include "../include/camera.h"
|
|
|
|
#include "../include/physics.h"
|
|
|
|
#include "../include/defines.h"
|
|
|
|
|
|
|
|
// Drawing
|
2021-07-12 13:00:19 +02:00
|
|
|
void updateLight(void);
|
2021-06-23 19:25:12 +02:00
|
|
|
void transformMesh(CAMERA * camera, MESH * meshes);
|
2021-06-28 17:45:18 +02:00
|
|
|
void enlightMesh(LEVEL * curLvl, MESH * actorPtr, SVECTOR * lgtang);
|
2021-07-10 12:08:52 +02:00
|
|
|
void drawPoly(MESH * mesh, int atime, int * camMode, char ** nextpri, u_long * ot, char * db, DRAWENV * draw);
|
2021-06-25 17:01:35 +02:00
|
|
|
// Tri drawing
|
2021-07-10 12:08:52 +02:00
|
|
|
long drawTri(MESH * mesh, int atime, int * camMode, char ** nextpri, u_long * ot, char * db, DRAWENV * draw, int t, int i);
|
2021-10-13 11:53:23 +02:00
|
|
|
void set3VertexPos(MESH * mesh, long t, int atime);
|
2021-06-25 17:01:35 +02:00
|
|
|
void set3VertexLerPos(MESH * mesh, long t);
|
2021-07-29 12:04:31 +02:00
|
|
|
void set3Prism(POLY_GT3 * poly, MESH * mesh, DRAWENV * draw, char * db, int i, int t);
|
2021-06-25 17:01:35 +02:00
|
|
|
void set3Tex(POLY_GT3 * poly, MESH * mesh, DRAWENV * draw, long t, int i);
|
2021-10-13 11:53:23 +02:00
|
|
|
void interpolateTri(POLY_GT3 * poly, MESH * mesh, long t);
|
2021-06-25 17:01:35 +02:00
|
|
|
//Quad drawing
|
2021-07-10 12:08:52 +02:00
|
|
|
long drawQuad(MESH * mesh, int atime, int * camMode, char ** nextpri, u_long * ot, char * db, DRAWENV * draw, int t, int i);
|
2021-10-13 11:53:23 +02:00
|
|
|
void set4VertexPos(MESH * mesh, long t, int atime);
|
2021-06-25 17:01:35 +02:00
|
|
|
void set4VertexLerPos(MESH * mesh, long t);
|
2021-07-29 12:04:31 +02:00
|
|
|
void set4Prism(POLY_GT4 * poly4, MESH * mesh, DRAWENV * draw, char * db, int i, int t);
|
2021-06-25 17:01:35 +02:00
|
|
|
void set4Tex(POLY_GT4 * poly4, MESH * mesh, DRAWENV * draw, long t, int i);
|
2021-07-05 17:47:30 +02:00
|
|
|
int set4Subdiv(MESH * mesh, POLY_GT4 * poly4, u_long * ot, long t, int i, char ** nextpri);
|
2021-10-13 11:53:23 +02:00
|
|
|
void interpolateQuad(POLY_GT4 * poly4, MESH * mesh, long t);
|
2021-06-25 17:01:35 +02:00
|
|
|
//2D drawing
|
2021-06-23 19:25:12 +02:00
|
|
|
void drawBG(CAMANGLE * camPtr, char ** nextpri, u_long * otdisc, char * db);
|
2021-07-12 13:00:19 +02:00
|
|
|
// Rendering
|
|
|
|
void renderScene(LEVEL * curLvl, CAMERA * camera, int * camMode, char ** nextpri, u_long * ot, u_long * otdisc, char * db, DRAWENV * draw, short curCamAngle, int atime);
|
2021-09-25 19:39:49 +02:00
|
|
|
// Animation
|
|
|
|
void playAnim(MESH * mesh, VANIM * anim, int loop);
|