void Geometry::render() { sp_.use(); sp_.get_uniform<Eigen::Matrix4f>("proj").set(mainCamera()->projection()); sp_.get_uniform<Eigen::Matrix4f>("view").set(mainCamera()->view()*pose_); sp_.get_uniform<Eigen::Vector3f>("material").set(material_); va_.bind(); mesh_.render(); }
void MyScene::yaw(pfloat32 deltaAngle) { deltaAngle = deltaAngle * P_PI / 180.0f; PCamera *camera = mainCamera(); pfloat32 x = camera->transform().rotationX(); camera->transform().setRotationX(x + deltaAngle); }
void MyScene::pan(pfloat32 deltaAngle) { deltaAngle = deltaAngle * P_PI / 180.0f; PCamera *camera = mainCamera(); pfloat32 y = camera->transform().rotationY(); camera->transform().setRotationY(y + deltaAngle); }