27 lines
672 B
C++
27 lines
672 B
C++
#ifndef VULKANCPPSETUP_WORLDVIEW_H
|
|
#define VULKANCPPSETUP_WORLDVIEW_H
|
|
|
|
#include "camera.h"
|
|
#include "VertexUniformBufferObject.h"
|
|
#include <QMatrix4x4>
|
|
#include <QVulkanWindow>
|
|
|
|
class WorldView {
|
|
public:
|
|
explicit WorldView();
|
|
void initializeProjectionMatrix(QVulkanWindow *window);
|
|
QVector4D multiply(const QVector4D &vector);
|
|
VertexUniformBufferObject getBufferObject();
|
|
void pitchCamera(float degrees);
|
|
void yawCamera(float degrees);
|
|
void moveCamera(float amount);
|
|
void strafeCamera(float amount);
|
|
|
|
private:
|
|
QMatrix4x4 m_modelMat{};
|
|
QMatrix4x4 m_projectionMat{};
|
|
Camera m_camera{QVector3D{0.f, 0.f, -1.f}};
|
|
};
|
|
|
|
#endif // VULKANCPPSETUP_WORLDVIEW_H
|