Files
directx-plane-game/Graphics2/Camera.h
iDunnoDev 03329d30ce Added more models
Fixed issue with material only parts of meshs not being rendered
2022-05-14 20:13:55 +01:00

50 lines
1.2 KiB
C++

#pragma once
#include "core.h"
#include "DirectXCore.h"
#include "SharedMethods.h"
#include "ObjectNode.h"
class Camera
{
public:
Camera();
~Camera();
void Update();
XMMATRIX GetViewMatrix();
XMVECTOR GetCameraPosition();
void SetCameraPosition(XMVECTOR vectorIn);
void SetCameraPosition(XMFLOAT4 floatIn);
void SetCameraPosition(float x, float y, float z);
void SetPitch(float pitch);
void SetTotalPitch(float pitch);
float GetPitch() const;
void SetYaw(float yaw);
void SetTotalYaw(float yaw);
float GetYaw() const;
void SetRoll(float roll);
void SetTotalRoll(float roll);
float GetRoll() const;
void SetLeftRight(float leftRight);
void SetForwardBack(float forwardBack);
void SetFollowNode(shared_ptr<ObjectNode> nodeFollowed, XMFLOAT3 followOffset, bool positionOnly);
private:
XMFLOAT4 _cameraPosition;
XMFLOAT4X4 _viewMatrix;
float _moveLeftRight;
float _moveForwardBack;
float _cameraYaw;
float _cameraYawPrev;
float _cameraPitch;
float _cameraRoll;
shared_ptr<ObjectNode> _nodeFollowed;
XMFLOAT3 _followOffset;
bool _followPositionOnly;
};