V-Gears 0
Free Final Fantasy VII engine.
VGearsTile.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2022 The V-Gears Team
3 *
4 * This file is part of V-Gears
5 *
6 * V-Gears is free software: you can redistribute it and/or modify it under
7 * terms of the GNU General Public License as published by the Free Software
8 * Foundation, version 3.0 (GPLv3) of the License.
9 *
10 * V-Gears 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
13 * GNU General Public License for more details.
14 */
15
16#pragma once
17
18#include <Ogre.h>
19#include "common/TypeDefine.h"
20
21namespace VGears{
22
24
29
34
39 };
40
44 struct KeyFrame{
45
49 Ogre::Real time;
50
54 Ogre::Vector4 uv;
55 };
56
57 typedef std::vector<KeyFrame> KeyFrameList;
58
62 struct Animation{
63
69 Ogre::Real length;
70
75 };
76
77 typedef std::map<String, Animation> AnimationMap;
78
82 struct Tile{
83
87 int width;
88
92 int height;
93
97 Ogre::Vector2 destination;
98
102 Ogre::Vector4 uv;
103
107 Ogre::Real depth;
108
113
118 };
119}
120
Definition: FF7NameLookup.h:24
std::map< String, Animation > AnimationMap
Definition: VGearsTile.h:77
std::vector< KeyFrame > KeyFrameList
Definition: VGearsTile.h:57
Blending
Definition: VGearsTile.h:23
@ B_ALPHA
Tile blending mode: Alpha.
Definition: VGearsTile.h:28
@ B_SUBTRACT
Tile blending mode: Substract.
Definition: VGearsTile.h:38
@ B_ADD
Tile blending mode: Add.
Definition: VGearsTile.h:33
A tile animation.
Definition: VGearsTile.h:62
KeyFrameList key_frames
List of key frames of the animation.
Definition: VGearsTile.h:74
Ogre::Real length
Animation length.
Definition: VGearsTile.h:69
A tile key frame.
Definition: VGearsTile.h:44
Ogre::Real time
Key frame timestamp.
Definition: VGearsTile.h:49
Ogre::Vector4 uv
Key frame movement coordinates.
Definition: VGearsTile.h:54
A tile.
Definition: VGearsTile.h:82
int height
Tile hecight.
Definition: VGearsTile.h:92
AnimationMap animations
List of animations associated to the tile.
Definition: VGearsTile.h:117
Ogre::Vector4 uv
Definition: VGearsTile.h:102
Ogre::Vector2 destination
Tile destination coordinates in the background.
Definition: VGearsTile.h:97
Ogre::Real depth
Tile depth.
Definition: VGearsTile.h:107
int width
Tile width.
Definition: VGearsTile.h:87
Blending blending
Tile blending type.
Definition: VGearsTile.h:112