i6engine
1.0
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
ParticleComponent.h
Go to the documentation of this file.
1
/*
2
* i6engine
3
* Copyright (2016) Daniel Bonrath, Michael Baer, All rights reserved.
4
*
5
* This file is part of i6engine; i6engine is free software; you can redistribute it and/or
6
* modify it under the terms of the GNU Lesser General Public
7
* License as published by the Free Software Foundation; either
8
* version 2.1 of the License, or (at your option) any later version.
9
*
10
* This library is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
* Lesser General Public License for more details.
14
*
15
* You should have received a copy of the GNU Lesser General Public
16
* License along with this library; if not, write to the Free Software
17
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
*/
19
25
#ifndef __I6ENGINE_MODULES_COMPONENTS_PARTICLECOMPONENT_H__
26
#define __I6ENGINE_MODULES_COMPONENTS_PARTICLECOMPONENT_H__
27
28
#include <cstdint>
29
30
#include "
i6engine/utils/i6eThreadSafety.h
"
31
32
#include "
i6engine/math/i6eVector.h
"
33
34
namespace
Ogre
{
35
class
SceneNode;
36
}
/* namespace Ogre */
37
38
namespace
i6e
{
39
namespace
modules {
40
41
class
GraphicsManager;
42
class
GraphicsNode;
43
50
class
ParticleComponent
{
51
friend
class
GraphicsNode
;
52
53
private
:
57
GraphicsManager
* _manager;
58
62
GraphicsNode
* _parent;
63
67
Ogre::SceneNode * _sceneNode;
68
72
ParticleComponent
(
GraphicsManager
* manager,
GraphicsNode
* parent,
const
int64_t goid,
const
int64_t coid,
const
std::string & emitterName,
const
Vec3
& pos);
73
77
~
ParticleComponent
();
78
82
void
particleFadeOut();
83
87
ParticleComponent
(
const
ParticleComponent
&) =
delete
;
88
92
const
ParticleComponent
& operator=(
const
ParticleComponent
&) =
delete
;
93
94
ASSERT_THREAD_SAFETY_HEADER
95
};
96
97
}
/* namespace modules */
98
}
/* namespace i6e */
99
100
#endif
/* __I6ENGINE_MODULES_COMPONENTS_PARTICLECOMPONENT_H__ */
101
i6e::modules::GraphicsNode
Saves all graphics-related data associated with one GameObject.
Definition:
GraphicsNode.h:61
i6e::modules::GraphicsManager
Definition:
GraphicsManager.h:58
i6e::math::i6eVector
Implements 3-dimensional vectors.
Definition:
i6eVector.h:48
ASSERT_THREAD_SAFETY_HEADER
#define ASSERT_THREAD_SAFETY_HEADER
Definition:
i6eThreadSafety.h:37
i6eVector.h
Ogre
Definition:
i6eQuaternion.h:39
i6e::modules::ParticleComponent
Handles all light related functionality.
Definition:
ParticleComponent.h:50
i6eThreadSafety.h
i6e
Definition:
AutoUpdater.h:34
Projekte
i6engine
libs
i6engine-modules
include
i6engine
modules
graphics
components
ParticleComponent.h
Generated on Mon May 30 2016 17:33:31 for i6engine by
1.8.9.1