cgmath frustum culling
Small frustum culling crate meant to be used alongside the cgmath
crate.
Usage
extern crate cgmath;
extern crate cgmath_culling;
use cgmath::{PerspectiveFov, Rad};
use cgmath_culling::{FrustumCuller, Intersection};
let per = PerspectiveFov { fovy: Rad(3.1415_f32 / 2.0),
aspect: 1.0,
near: 0.1,
far: 100.0 }.into();
let culling = FrustumCuller::from_perspective_fov(per);
match culling.intersect_aab(Vector3::new(0.0, 0.0, -7.0), Vector3::new(1.0, 1.0, -5.0)) {
Intersection::Inside => println!("I'm inside"),
Intersection::Outside => println!("I'm outside"),
Intersection::Partial => println!("I'm partially inside"),
}
License
MIT
Disclaimer
- Reference implementation: JOML