Added Horde3D terrain (still untextured).
[openstranded.git] / src / eal / horde3d / extensions / extensions.hh
blobad92e743f3a707690d1fff005cf282b253c39620
1 /*
2 * Horde3D extensions
4 * Copyright (C) 2009 Mathias Gottschlag
6 * This file is part of OpenStranded
8 * OpenStranded is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation, either version 3 of the License, or
11 * (at your option) any later version.
13 * OpenStranded is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
18 * You should have received a copy of the GNU General Public License
19 * along with OpenStranded. If not, see <http://www.gnu.org/licenses/>.
22 #ifndef STRANDED_HORDE3DEXTENSIONS_H
23 #define STRANDED_HORDE3DEXTENSIONS_H
25 #include <horde3d/Horde3D.h>
27 namespace eal
29 namespace horde3d
31 void installExtensions();
32 // Island scene node: simple terrain, with edges extended horizontally
33 static const int SNT_IslandNode = 300;
34 struct IslandNodeParams
36 enum List
38 MaterialRes = 10000,
39 MeshQuality,
40 SizeX,
41 SizeZ,
42 HeightData
45 namespace Island
47 NodeHandle addIslandNode(NodeHandle parent, const char *name, int sizeX, int sizeZ, ResHandle materialRes);
49 void setSize(NodeHandle island, int sizeX, int sizeZ);
51 float *getData(NodeHandle island);
52 void invalidate(NodeHandle island, int x, int z, int sizeX, int sizeZ);
57 #endif