OGRE
1.8
Object-Oriented Graphics Rendering Engine
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
OgreColourInterpolatorAffector.h
Go to the documentation of this file.
1
/*
2
-----------------------------------------------------------------------------
3
This source file is part of OGRE
4
(Object-oriented Graphics Rendering Engine)
5
For the latest info, see http://www.ogre3d.org/
6
7
Copyright (c) 2000-2013 Torus Knot Software Ltd
8
9
Permission is hereby granted, free of charge, to any person obtaining a copy
10
of this software and associated documentation files (the "Software"), to deal
11
in the Software without restriction, including without limitation the rights
12
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
copies of the Software, and to permit persons to whom the Software is
14
furnished to do so, subject to the following conditions:
15
16
The above copyright notice and this permission notice shall be included in
17
all copies or substantial portions of the Software.
18
19
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25
THE SOFTWARE.
26
-----------------------------------------------------------------------------
27
*/
28
#ifndef __ColourInterpolatorAffector_H__
29
#define __ColourInterpolatorAffector_H__
30
31
#include "
OgreParticleFXPrerequisites.h
"
32
#include "
OgreParticleAffector.h
"
33
#include "
OgreStringInterface.h
"
34
#include "
OgreColourValue.h
"
35
36
namespace
Ogre {
37
38
39
class
_OgreParticleFXExport
ColourInterpolatorAffector
:
public
ParticleAffector
40
{
41
public
:
42
// this is something of a hack..
43
// needs to be replaced with something more..
44
// ..elegant
45
enum
{ MAX_STAGES = 6 };
46
47
49
class
CmdColourAdjust
:
public
ParamCommand
50
{
51
public
:
52
size_t
mIndex
;
53
54
public
:
55
String
doGet(
const
void
* target)
const
;
56
void
doSet(
void
* target,
const
String
& val);
57
};
58
60
class
CmdTimeAdjust
:
public
ParamCommand
61
{
62
public
:
63
size_t
mIndex
;
64
65
public
:
66
String
doGet(
const
void
* target)
const
;
67
void
doSet(
void
* target,
const
String
& val);
68
};
69
71
ColourInterpolatorAffector
(
ParticleSystem
* psys);
72
74
void
_affectParticles(
ParticleSystem
* pSystem,
Real
timeElapsed);
75
76
void
setColourAdjust(
size_t
index,
ColourValue
colour);
77
ColourValue
getColourAdjust(
size_t
index)
const
;
78
79
void
setTimeAdjust(
size_t
index,
Real
time);
80
Real
getTimeAdjust(
size_t
index)
const
;
81
82
83
static
CmdColourAdjust
msColourCmd[MAX_STAGES];
84
static
CmdTimeAdjust
msTimeCmd[MAX_STAGES];
85
86
protected
:
87
ColourValue
mColourAdj[MAX_STAGES];
88
Real
mTimeAdj[MAX_STAGES];
89
90
};
91
92
93
}
94
95
96
#endif
97
Ogre::ParticleSystem
Class defining particle system based special effects.
Definition:
OgreParticleSystem.h:67
Ogre::ColourInterpolatorAffector::CmdTimeAdjust
Command object for red adjust (see ParamCommand).
Definition:
OgreColourInterpolatorAffector.h:60
Ogre::Real
float Real
Software floating point type.
Definition:
OgrePrerequisites.h:75
Ogre::ColourInterpolatorAffector::CmdColourAdjust::mIndex
size_t mIndex
Definition:
OgreColourInterpolatorAffector.h:52
Ogre::ColourValue
Class representing colour.
Definition:
OgreColourValue.h:57
Ogre::ColourInterpolatorAffector
Definition:
OgreColourInterpolatorAffector.h:39
OgreStringInterface.h
OgreParticleFXPrerequisites.h
Ogre::ColourInterpolatorAffector::CmdTimeAdjust::mIndex
size_t mIndex
Definition:
OgreColourInterpolatorAffector.h:63
_OgreParticleFXExport
#define _OgreParticleFXExport
Definition:
OgreParticleFXPrerequisites.h:43
Ogre::ColourInterpolatorAffector::CmdColourAdjust
Command object for red adjust (see ParamCommand).
Definition:
OgreColourInterpolatorAffector.h:49
Ogre::ParticleAffector
Abstract class defining the interface to be implemented by particle affectors.
Definition:
OgreParticleAffector.h:64
OgreParticleAffector.h
Ogre::String
_StringBase String
Definition:
OgrePrerequisites.h:466
OgreColourValue.h
Ogre::ParamCommand
Abstract class which is command object which gets/sets parameters.
Definition:
OgreStringInterface.h:78
Plugins
ParticleFX
include
OgreColourInterpolatorAffector.h
Generated on Fri Jun 20 2014 00:48:08 for OGRE by
1.8.7