2022-07-11 12:09:36 +00:00
|
|
|
#pragma once
|
|
|
|
#include <cstdint>
|
2022-10-21 18:50:03 +00:00
|
|
|
#include "cdc/dtp/postprocessing.h"
|
2022-07-11 12:09:36 +00:00
|
|
|
|
2022-07-11 17:47:45 +00:00
|
|
|
namespace cdc {
|
|
|
|
|
|
|
|
class CommonDepthBuffer;
|
|
|
|
class CommonRenderTarget;
|
2022-10-21 18:50:03 +00:00
|
|
|
struct RenderViewport;
|
2022-07-11 17:47:45 +00:00
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
class PPTexture;
|
|
|
|
class PPVariable;
|
|
|
|
|
|
|
|
struct RTs {
|
|
|
|
cdc::CommonRenderTarget *rt0;
|
|
|
|
cdc::CommonDepthBuffer *db;
|
|
|
|
cdc::CommonRenderTarget *rt8;
|
|
|
|
cdc::CommonRenderTarget *rtC;
|
|
|
|
};
|
|
|
|
|
2022-07-11 12:09:36 +00:00
|
|
|
class PPPass {
|
|
|
|
public:
|
2022-10-21 18:50:03 +00:00
|
|
|
dtp::PPPassBlob *blob = nullptr;
|
2022-07-11 17:47:45 +00:00
|
|
|
PPTexture *textures = nullptr; // 8
|
|
|
|
uint32_t numTextures = 0; // C
|
|
|
|
PPVariable *variables = nullptr; // 10
|
|
|
|
uint32_t numVariables = 0; // 14
|
|
|
|
uint8_t byte18 = 0;
|
2022-07-11 12:09:36 +00:00
|
|
|
|
|
|
|
virtual ~PPPass() = default;
|
2022-07-11 17:47:45 +00:00
|
|
|
|
2022-10-21 18:50:03 +00:00
|
|
|
bool init(dtp::PPPassBlob *a2, PPTexture *textures, uint32_t numTextures, PPVariable *variables, uint32_t numVariables);
|
|
|
|
void createScene(cdc::CommonRenderTarget*, RTs *rts, cdc::RenderViewport *a4, uint32_t pppassMask, bool, uint32_t texturesMask);
|
2022-07-11 12:09:36 +00:00
|
|
|
};
|