summaryrefslogtreecommitdiffstats
path: root/tests/manual/deferred-renderer-cpp/gbuffer.h
blob: 27f6949339e8a98f1d01f1a4aec9fae6ddb2ccb8 (plain)
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
33
// Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB).
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only

#ifndef GBUFFER_H
#define GBUFFER_H

#include <Qt3DRender/QRenderTarget>
#include <Qt3DRender/qtexture.h>
#include <Qt3DRender/QRenderTargetOutput>

class GBuffer : public Qt3DRender::QRenderTarget
{
public:
    explicit GBuffer(Qt3DCore::QNode *parent = 0);

    enum Attachments {
        Color = 0,
        Position,
        Normal,
        Depth,
        AttachmentsCount
    };

    Qt3DRender::QAbstractTexture *colorTexture() const;
    Qt3DRender::QAbstractTexture *positionTexture() const;
    Qt3DRender::QAbstractTexture *normalTexture() const;
    Qt3DRender::QAbstractTexture *depthTexture() const;

private:
    Qt3DRender::QAbstractTexture *m_textures[AttachmentsCount];
};

#endif // GBUFFER_H