Project

General

Profile

SO3Engine
SO3CompositorPass.h
Go to the documentation of this file.
1/*
2-----------------------------------------------------------------------------
3This source file is part of OpenSpace3D
4For the latest info, see http://www.openspace3d.com
5
6Copyright (c) 2012 I-maginer
7
8This program is free software; you can redistribute it and/or modify it under
9the terms of the GNU Lesser General Public License as published by the Free Software
10Foundation; either version 2 of the License, or (at your option) any later
11version.
12
13This program is distributed in the hope that it will be useful, but WITHOUT
14ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
15FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
16
17You should have received a copy of the GNU Lesser General Public License along with
18this program; if not, write to the Free Software Foundation, Inc., 59 Temple
19Place - Suite 330, Boston, MA 02111-1307, USA, or go to
20http://www.gnu.org/copyleft/lesser.txt
21
22-----------------------------------------------------------------------------
23*/
24
29#ifndef __SO3_COMPOSITOR_PASS_H__
30#define __SO3_COMPOSITOR_PASS_H__
31
34
35namespace SO3
36{
37
39{
40 SO3_COMPOSITOR_PASS_CLEAR = Ogre::CompositionPass::PT_CLEAR, // Clear target to one colour
41 SO3_COMPOSITOR_PASS_STENCIL = Ogre::CompositionPass::PT_STENCIL, // Set stencil operation
42 SO3_COMPOSITOR_PASS_RENDERSCENE = Ogre::CompositionPass::PT_RENDERSCENE, // Render the scene or part of it
43 SO3_COMPOSITOR_PASS_RENDERQUAD = Ogre::CompositionPass::PT_RENDERQUAD, // Render a full screen quad
44 SO3_COMPOSITOR_PASS_RENDER_CUSTOM = Ogre::CompositionPass::PT_RENDERCUSTOM // Render a custom sequence
45};
46
47class _SO3_Export SCompositorPass : public SData
48{
49public:
50protected:
51private:
52 SCompositorTarget* parentTarget;
53 Ogre::CompositionPass* ogreCompositorPass;
54
55public:
58 SCompositorPass(SCompositorTarget* target, Ogre::CompositionPass* ogrePassRef, int passId);
59
63
66 SCompositorPassType GetType() const;
67
70 SMaterial* GetMaterial() const;
71protected:
72private:
77};
78
79}
80
81#endif
librairies include
@ SO3_COMPOSITOR_PASS_STENCIL
@ SO3_COMPOSITOR_PASS_CLEAR
@ SO3_COMPOSITOR_PASS_RENDERQUAD
@ SO3_COMPOSITOR_PASS_RENDERSCENE
@ SO3_COMPOSITOR_PASS_RENDER_CUSTOM