(handle: f64, x: f64, y: f64, z: f64, scale: f64, r: f64, g: f64, b: f64, a: f64)
| 1455 | |
| 1456 | #[no_mangle] |
| 1457 | pub extern "C" fn bloom_draw_model(handle: f64, x: f64, y: f64, z: f64, scale: f64, r: f64, g: f64, b: f64, a: f64) { |
| 1458 | let eng = engine(); |
| 1459 | if let Some(model) = eng.models.get(handle) { |
| 1460 | let position = [x as f32, y as f32, z as f32]; |
| 1461 | let scale = scale as f32; |
| 1462 | let tint = [(r / 255.0) as f32, (g / 255.0) as f32, (b / 255.0) as f32, (a / 255.0) as f32]; |
| 1463 | let handle_bits = handle.to_bits(); |
| 1464 | if eng.renderer.cache_model_if_static(handle_bits, &model.meshes) { |
| 1465 | eng.renderer.draw_model_cached(handle_bits, position, scale, tint); |
| 1466 | } else { |
| 1467 | for mesh in &model.meshes { |
| 1468 | let tex_idx = mesh.texture_idx.unwrap_or(0); |
| 1469 | eng.renderer.draw_model_mesh_tinted(&mesh.vertices, &mesh.indices, position, scale, tint, tex_idx); |
| 1470 | } |
| 1471 | } |
| 1472 | } |
| 1473 | } |
| 1474 | |
| 1475 | #[no_mangle] |
| 1476 | pub extern "C" fn bloom_draw_model_rotated( |
nothing calls this directly
no test coverage detected