Add infos into target window
[ryzomcore.git] / ryzom / client / src / sky_material_setup.h
blobdec860a846e91fb1900a4d7286a93ce2021e4ef7
1 // Ryzom - MMORPG Framework <http://dev.ryzom.com/projects/ryzom/>
2 // Copyright (C) 2010 Winch Gate Property Limited
3 //
4 // This program is free software: you can redistribute it and/or modify
5 // it under the terms of the GNU Affero General Public License as
6 // published by the Free Software Foundation, either version 3 of the
7 // License, or (at your option) any later version.
8 //
9 // This program is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 // GNU Affero General Public License for more details.
14 // You should have received a copy of the GNU Affero General Public License
15 // along with this program. If not, see <http://www.gnu.org/licenses/>.
20 #ifndef CL_SKY_MATERIAL_SETUP
21 #define CL_SKY_MATERIAL_SETUP
25 namespace NL3D
27 class UInstance;
30 // setup of material for night or day
31 struct CSkyMaterialSetup
33 struct CTexInfo
35 uint MatNum;
36 std::string TexName;
38 std::vector<CTexInfo> Setup;
40 /** Build a setup of texture for the given stage.
41 * \param instance The instance from which setup must be built
42 * \param stage stage at which the setup must be taken. Must be 0 or 1
44 void buildFromInstance(NL3D::UInstance instance, uint stage);
46 /** Apply a setup of texture at the given stage
47 * You can also ask to skip first material, as it is used for the skydome
49 void applyToInstance(NL3D::UInstance instance, uint stage, bool skipFirstMaterial = false);
53 #endif