-
Notifications
You must be signed in to change notification settings - Fork 62
/
Copy pathSampleScene.h
32 lines (24 loc) · 1.06 KB
/
SampleScene.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
/***************************************************************************
# Copyright (c) 2021-2022, NVIDIA CORPORATION. All rights reserved.
#
# NVIDIA CORPORATION and its licensors retain all intellectual property
# and proprietary rights in and to this software, related documentation
# and any modifications thereto. Any use, reproduction, disclosure or
# distribution of this software and related documentation without an express
# license agreement from NVIDIA CORPORATION is strictly prohibited.
**************************************************************************/
#pragma once
#include <donut/engine/Scene.h>
class SampleScene : public donut::engine::Scene
{
public:
using Scene::Scene;
void BuildMeshBLASes(nvrhi::IDevice* device);
void BuildTopLevelAccelStruct(nvrhi::ICommandList* commandList);
nvrhi::rt::IAccelStruct* GetTopLevelAS() const;
private:
nvrhi::rt::AccelStructHandle m_topLevelAS;
std::vector<nvrhi::rt::InstanceDesc> m_tlasInstances;
bool m_canUpdateTLAS = false;
double m_wallclockTime = 0;
};