SetFOV
This function sets a camera's field of view (FOV). The field of view is an angle that controls how broad the visible region is on the vertical axis.
The default camera FOV is 90.0.
Syntax
Parameters
- fov: the new field of view to set.
Example
#include "Leadwerks.h"
using namespace Leadwerks;
int main(int argc, const char *argv[])
{
Leadwerks::Window* window = Leadwerks::Window::Create();
Context* context = Context::Create(window);
World* world = World::Create();
Camera* camera = Camera::Create();
camera->Move(0, 0, -3);
Light* light = DirectionalLight::Create();
light->SetRotation(35, 35, 0);
Model* model = Model::Box();
model->SetColor(0.0, 0.0, 1.0);
while (true)
{
if (window->Closed() || window->KeyDown(Key::Escape)) break;
model->Turn(0, Leadwerks::Leadwerks::Time::GetSpeed(), 0);
float deltazoom = (window->KeyDown(Key::Up) - window->KeyDown(Key::Down)) * Leadwerks::Leadwerks::Time::GetSpeed()*0.5;
float fov = camera->GetFOV() - deltazoom;
fov = Math::Clamp(fov, 5, 179);
camera->SetFOV(fov);
Leadwerks::Leadwerks::Time::Update();
world->Update();
world->Render();
context->SetBlendMode(Blend::Alpha);
context->DrawText("FOV: " + String(camera->GetFOV()), 2, 2);
context->DrawText("Zoom: " + String(camera->GetZoom()), 2, 22);
context->Sync();
}
}