demotool/demo.hh

49 lines
1 KiB
C++
Raw Normal View History

2017-10-02 13:51:08 +02:00
#pragma once
#include "raymarcher.hh"
#include "dof.hh"
#include "bloom.hh"
#include "combine.hh"
2017-10-05 18:35:35 +02:00
#include "fxaa.hh"
2017-10-02 13:51:08 +02:00
#include "profiling.hh"
struct T_Demo
{
T_Demo( ) = delete;
NO_COPY( T_Demo );
NO_MOVE( T_Demo );
// ---------------------------------------------------------------------
T_Demo( __rd__ const uint32_t width ,
2017-10-02 13:51:08 +02:00
__rd__ const uint32_t height );
bool initialise( );
void makeUI( );
void render( );
void handleDND(
__rd__ ImVec2 const& move ,
__rd__ const bool hasCtrl ,
__rd__ const bool hasShift ,
__rd__ const bool lmb // Left mouse button
);
void handleWheel(
__rd__ const float wheel ,
__rd__ const bool hasCtrl ,
__rd__ const bool hasShift
);
// ---------------------------------------------------------------------
const uint32_t width;
const uint32_t height;
std::unique_ptr< T_Raymarcher > raymarcher;
std::unique_ptr< T_DoFPass > dof;
std::unique_ptr< T_BloomPass > bloom;
std::unique_ptr< T_CombinePass > combine;
2017-10-05 18:35:35 +02:00
std::unique_ptr< T_FXAAPass > fxaa;
2017-10-02 13:51:08 +02:00
};