static struct vox_object *vox_obj;
static int vox_num_obj, vox_obj_stride;
-int vox_quality = 1;
int *projlut;
int vox_init(int xsz, int ysz, uint8_t *himg, uint8_t *cimg)
vox_height = himg;
vox_color = cimg;
+ vox_fb = 0;
+ vox_coltop = 0;
+ vox_horizon = 0;
+ vox_x = vox_y = vox_angle = 0;
+ vox_fov = 0;
+ vox_znear = vox_zfar = 0;
+ vox_nslices = 0;
+ vox_slicelen = 0;
+ vox_valid = 0;
+ projlut = 0;
+
vox_vheight = 80;
return 0;
void vox_destroy(void)
{
- free(vox_color);
- free(vox_height);
- free(vox_coltop);
- free(vox_slicelen);
+ /* XXX we rely on the screen to clear up any allocated IWRAM */
}
#define H(x, y) \
vox_begin();
- if(vox_quality) {
- for(i=0; i<vox_nslices; i++) {
- vox_render_slice(i);
- }
- } else {
- for(i=0; i<vox_nslices; i++) {
- if(i >= 10 && (i & 1) == 0) {
- continue;
- }
- vox_render_slice(i);
- }
+ for(i=0; i<vox_nslices; i++) {
+ vox_render_slice(i);
}
}