updated camera blend functionality

This commit is contained in:
turanszkij
2018-05-25 17:39:13 +01:00
parent 873cf6f2bf
commit 44efb14c81
15 changed files with 359 additions and 12 deletions
+16 -1
View File
@@ -17,7 +17,7 @@ CameraWindow::CameraWindow(wiGUI* gui) :GUI(gui)
orbitalCamTarget = new Transform;
cameraWindow = new wiWindow(GUI, "Camera Window");
cameraWindow->SetSize(XMFLOAT2(400, 420));
cameraWindow->SetSize(XMFLOAT2(600, 420));
GUI->AddWidget(cameraWindow);
float x = 200;
@@ -85,6 +85,7 @@ CameraWindow::CameraWindow(wiGUI* gui) :GUI(gui)
proxyButton->SetPos(XMFLOAT2(x, y += inc * 2));
proxyButton->OnClick([&](wiEventArgs args) {
Camera* cam = new Camera(*wiRenderer::getCamera());
cam->name = "ProxyCam";
wiRenderer::Add(cam);
@@ -92,6 +93,18 @@ CameraWindow::CameraWindow(wiGUI* gui) :GUI(gui)
});
cameraWindow->AddWidget(proxyButton);
proxyNameField = new wiTextInputField("Proxy Name: ");
proxyNameField->SetSize(XMFLOAT2(140, 30));
proxyNameField->SetPos(XMFLOAT2(x + 200, y));
proxyNameField->OnInputAccepted([&](wiEventArgs args) {
if (proxy != nullptr)
{
proxy->name = args.sValue;
}
});
cameraWindow->AddWidget(proxyNameField);
followCheckBox = new wiCheckBox("Follow Proxy: ");
followCheckBox->SetPos(XMFLOAT2(x, y += inc));
followCheckBox->SetCheck(false);
@@ -130,11 +143,13 @@ void CameraWindow::SetProxy(Camera* camera)
{
followCheckBox->SetEnabled(true);
followSlider->SetEnabled(true);
proxyNameField->SetValue(proxy->name);
}
else
{
followCheckBox->SetCheck(false);
followCheckBox->SetEnabled(false);
followSlider->SetEnabled(false);
proxyNameField->SetValue("Proxy Name: ");
}
}