X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Fvoxscape.h;h=da726a66c66b120ee30af80c84fbca347f993778;hb=9cec32e4cf5833bcfe1e6d617d35634c4ab0881a;hp=863aaa33124c75dfcf839c5377bd3606055cfede;hpb=c52a5978823a77da3570cb73b985b928bb8358d9;p=gbajam22 diff --git a/src/voxscape.h b/src/voxscape.h index 863aaa3..da726a6 100644 --- a/src/voxscape.h +++ b/src/voxscape.h @@ -8,8 +8,6 @@ enum { VOX_LINEAR }; -struct voxscape; - struct vox_object { int x, y, px, py; int offs; @@ -18,31 +16,22 @@ struct vox_object { extern int vox_quality; -struct voxscape *vox_create(int xsz, int ysz, uint8_t *himg, uint8_t *cimg); -void vox_free(struct voxscape *vox); - -/* data argument can be null */ -uint8_t *vox_texture(struct voxscape *vox, uint8_t *data); -uint8_t *vox_heightmap(struct voxscape *vox, uint8_t *data); - -void vox_fog(struct voxscape *vox, int zstart, uint8_t color); -int vox_height(struct voxscape *vox, int32_t x, int32_t y); - -void vox_filter(struct voxscape *vox, int hfilt, int cfilt); +int vox_init(int xsz, int ysz, uint8_t *himg, uint8_t *cimg); +void vox_destroy(void); -void vox_framebuf(struct voxscape *vox, int xres, int yres, void *fb, int horizon); +void vox_framebuf(int xres, int yres, void *fb, int horizon); /* negative height for auto at -h above terrain */ -void vox_view(struct voxscape *vox, int32_t x, int32_t y, int h, int32_t angle); -void vox_proj(struct voxscape *vox, int fov, int znear, int zfar); +void vox_view(int32_t x, int32_t y, int h, int32_t angle); +void vox_proj(int fov, int znear, int zfar); -void vox_render(struct voxscape *vox); +void vox_render(void); -void vox_begin(struct voxscape *vox); -void vox_render_slice(struct voxscape *vox, int n); +void vox_begin(void); +void vox_render_slice(int n); -void vox_sky_solid(struct voxscape *vox, uint8_t color); -void vox_sky_grad(struct voxscape *vox, uint8_t chor, uint8_t ctop); +void vox_sky_solid(uint8_t color); +void vox_sky_grad(uint8_t chor, uint8_t ctop); -void vox_objects(struct voxscape *vox, struct vox_object *ptr, int count, int stride); +void vox_objects(struct vox_object *ptr, int count, int stride); #endif /* VOXSCAPE_H_ */