
Added ability to hold shift and skip the terrain generation when loading Added ability for the perlin terrain to save a raw image of the terrain to use as a cache
46 lines
1.3 KiB
C++
46 lines
1.3 KiB
C++
#pragma once
|
|
#include "DirectXCore.h"
|
|
|
|
// The object node contains all of the methods and variables needed to move a node using pitch, yaw, roll, and the directions
|
|
// It should be inherited by another node so that it doesnt interupt with the normal rendering functions and saves us having to
|
|
// duplicate code for every time, it also allows the child classes to be accessed by the ObjectNode type when needed
|
|
class ObjectNode
|
|
{
|
|
public:
|
|
ObjectNode();
|
|
|
|
void Update(XMFLOAT4X4& currentWorldTransform);
|
|
|
|
XMVECTOR GetNodePosition();
|
|
void SetNodePosition(XMVECTOR vectorIn);
|
|
void SetNodePosition(XMFLOAT4 floatIn);
|
|
void SetNodePosition(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);
|
|
float GetLeftRight() const;
|
|
void SetForwardBack(float forwardBack);
|
|
float GetForwardBack() const;
|
|
void SetStartOrientation(FXMMATRIX originalOrientation);
|
|
|
|
protected:
|
|
XMFLOAT4 _nodeRootPosition;
|
|
|
|
float _moveLeftRight;
|
|
float _moveForwardBack;
|
|
|
|
float _nodeYaw;
|
|
float _nodePitch;
|
|
float _nodeRoll;
|
|
|
|
XMFLOAT4X4 _originalOrientation;
|
|
};
|
|
|