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

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();
}
}