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
|