3D Scene initial

This commit is contained in:
IlyaShurupov 2024-06-18 17:16:23 +03:00
parent 3fd3211f46
commit 55f5537a67
8 changed files with 117 additions and 77 deletions

43
3DScene/public/Scene.hpp Normal file
View file

@ -0,0 +1,43 @@
#pragma once
#include "Topology.hpp"
#include "Buffer2D.hpp"
#include "Camera.hpp"
#include <string>
namespace tp {
class GPUBuffers {
public:
GPUBuffers() = default;
virtual ~GPUBuffers() = default;
};
class Object {
public:
Object() = default;
public:
Topology mTopology;
TopologyCache mCache;
GPUBuffers* mGUPBuffers = nullptr;
};
struct PointLight {
Vec3F pos;
halnf fallOut = 1.f;
halnf intensity = 1.f;
};
class Scene {
public:
Scene() = default;
bool load(const std::string& scenePath);
public:
Buffer<Object> mObjects;
Buffer<PointLight> mLights;
Camera mCamera;
};
}