Provisional light culling
This commit is contained in:
@@ -27,6 +27,14 @@ Scene::Scene(Gfx::PGraphics graphics)
|
||||
lightEnv.pointLights[i].positionWS = Vector4(frand() * 200-100, frand(), frand() * 200-100, 1);
|
||||
}
|
||||
lightEnv.numPointLights = MAX_POINT_LIGHTS;
|
||||
|
||||
BulkResourceData lightInit;
|
||||
StructuredBufferCreateInfo structuredInfo;
|
||||
lightInit.size = sizeof(LightEnv);
|
||||
lightInit.data = (uint8*)&lightEnv;
|
||||
structuredInfo.resourceData = lightInit;
|
||||
structuredInfo.bDynamic = false;
|
||||
lightBuffer = graphics->createStructuredBuffer(structuredInfo);
|
||||
}
|
||||
|
||||
Scene::~Scene()
|
||||
|
||||
@@ -46,13 +46,14 @@ public:
|
||||
|
||||
const Array<PPrimitiveComponent>& getPrimitives() const { return primitives; }
|
||||
const Array<MeshBatch>& getStaticMeshes() const { return staticMeshes; }
|
||||
const LightEnv& getLightEnvironment() const { return lightEnv; }
|
||||
const Gfx::PStructuredBuffer& getLightBuffer() const { return lightBuffer; }
|
||||
UPSceneUpdater& getSceneUpdater() { return updater; }
|
||||
private:
|
||||
Array<MeshBatch> staticMeshes;
|
||||
Array<PActor> rootActors;
|
||||
Array<PPrimitiveComponent> primitives;
|
||||
LightEnv lightEnv;
|
||||
Gfx::PStructuredBuffer lightBuffer;
|
||||
Gfx::PGraphics graphics;
|
||||
UPSceneUpdater updater;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user