static float cam_theta = -29, cam_phi = 35;
static float cam_dist = 10;
static float cam_theta = -29, cam_phi = 35;
static float cam_dist = 10;
static const char *car_fname[2] = {"data/ldiablo.obj", 0};
static const char *cartex_fname[2] = {"data/ldiablo.png", 0};
static struct g3d_mesh mesh_car[2];
static struct pimage tex_car[2];
static const char *car_fname[2] = {"data/ldiablo.obj", 0};
static const char *cartex_fname[2] = {"data/ldiablo.png", 0};
static struct g3d_mesh mesh_car[2];
static struct pimage tex_car[2];
-
- init_bsp(&bsp_car[i]);
- if(bsp_add_mesh(&bsp_car[i], &mesh_car[i]) == -1) {
- fprintf(stderr, "failed to construct BSP tree %d\n", i);
- return -1;
- }
- bsp_build(&bsp_car[i]);
g3d_rotate(cam_phi, 1, 0, 0);
g3d_rotate(cam_theta, 0, 1, 0);
g3d_rotate(cam_phi, 1, 0, 0);
g3d_rotate(cam_theta, 0, 1, 0);
g3d_polygon_mode(G3D_TEX_GOURAUD);
for(i=0; i<sizeof mesh_car / sizeof mesh_car[0]; i++) {
if(mesh_car[i].varr) {
g3d_set_texture(tex_car[i].width, tex_car[i].height, tex_car[i].pixels);
g3d_polygon_mode(G3D_TEX_GOURAUD);
for(i=0; i<sizeof mesh_car / sizeof mesh_car[0]; i++) {
if(mesh_car[i].varr) {
g3d_set_texture(tex_car[i].width, tex_car[i].height, tex_car[i].pixels);
- if(use_bsp) {
- draw_bsp(&bsp_car[i], vdir[0], vdir[1], vdir[2]);
- } else {
- zsort_mesh(&mesh_car[i]);
- draw_mesh(&mesh_car[i]);
- }
+ zsort_mesh(&mesh_car[i]);
+ draw_mesh(&mesh_car[i]);