2003-01-22 00:54:13 +00:00
|
|
|
/* $Id: interp.h,v 1.4 2003-01-22 00:54:13 btb Exp $ */
|
2003-01-02 23:13:21 +00:00
|
|
|
/*
|
|
|
|
*
|
|
|
|
* took out functions declarations from include/3d.h
|
|
|
|
* which are implemented in 3d/interp.c
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef _INTERP_H
|
|
|
|
#define _INTERP_H
|
|
|
|
|
|
|
|
#include "fix.h"
|
|
|
|
//#include "vecmat.h" //the vector/matrix library
|
|
|
|
#include "gr.h"
|
|
|
|
#include "cfile.h"
|
2003-01-02 23:31:50 +00:00
|
|
|
#include "3d.h"
|
2003-01-02 23:13:21 +00:00
|
|
|
|
|
|
|
//Object functions:
|
|
|
|
|
|
|
|
//gives the interpreter an array of points to use
|
|
|
|
void g3_set_interp_points(g3s_point *pointlist);
|
|
|
|
|
|
|
|
//calls the object interpreter to render an object. The object renderer
|
|
|
|
//is really a seperate pipeline. returns true if drew
|
|
|
|
bool g3_draw_polygon_model(void *model_ptr,grs_bitmap **model_bitmaps,vms_angvec *anim_angles,fix light,fix *glow_values);
|
|
|
|
|
|
|
|
//init code for bitmap models
|
|
|
|
void g3_init_polygon_model(void *model_ptr);
|
|
|
|
|
|
|
|
//un-initialize, i.e., convert color entries back to RGB15
|
|
|
|
void g3_uninit_polygon_model(void *model_ptr);
|
|
|
|
|
|
|
|
//alternate interpreter for morphing object
|
|
|
|
bool g3_draw_morphing_model(void *model_ptr,grs_bitmap **model_bitmaps,vms_angvec *anim_angles,fix light,vms_vector *new_points);
|
|
|
|
|
|
|
|
//this remaps the 15bpp colors for the models into a new palette. It should
|
|
|
|
//be called whenever the palette changes
|
|
|
|
void g3_remap_interp_colors(void);
|
|
|
|
|
2003-01-22 00:51:49 +00:00
|
|
|
#ifdef WORDS_BIGENDIAN
|
2003-01-22 00:54:13 +00:00
|
|
|
// routine to convert little to big endian in polygon model data
|
2003-01-22 00:51:49 +00:00
|
|
|
void swap_polygon_model_data(ubyte *data);
|
|
|
|
#endif
|
|
|
|
|
2003-01-02 23:13:21 +00:00
|
|
|
#endif //_INTERP_H
|