2019-03-05 03:59:17 +00:00
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
2019-03-05 08:21:39 +00:00
|
|
|
#include <functional>
|
|
|
|
|
2019-03-05 03:59:17 +00:00
|
|
|
#include "vulkan/system/vk_objects.h"
|
|
|
|
|
|
|
|
class FString;
|
|
|
|
|
|
|
|
class VkPostprocess
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
VkPostprocess();
|
|
|
|
~VkPostprocess();
|
|
|
|
|
|
|
|
void RenderBuffersReset();
|
|
|
|
|
|
|
|
void PostProcessScene(int fixedcm, const std::function<void()> &afterBloomDrawEndScene2D);
|
|
|
|
|
|
|
|
void AmbientOccludeScene(float m5);
|
|
|
|
void BlurScene(float gameinfobluramount);
|
|
|
|
void ClearTonemapPalette();
|
|
|
|
|
|
|
|
private:
|
|
|
|
void UpdateEffectTextures();
|
|
|
|
void CompileEffectShaders();
|
|
|
|
void RenderEffect(const FString &name);
|
|
|
|
void NextEye(int eyeCount);
|
|
|
|
void RenderScreenQuad();
|
|
|
|
};
|