aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/newview/llcubemap.h
diff options
context:
space:
mode:
Diffstat (limited to 'linden/indra/newview/llcubemap.h')
-rw-r--r--linden/indra/newview/llcubemap.h87
1 files changed, 0 insertions, 87 deletions
diff --git a/linden/indra/newview/llcubemap.h b/linden/indra/newview/llcubemap.h
deleted file mode 100644
index 0b8cf29..0000000
--- a/linden/indra/newview/llcubemap.h
+++ /dev/null
@@ -1,87 +0,0 @@
1/**
2 * @file llcubemap.h
3 * @brief LLCubeMap class definition
4 *
5 * $LicenseInfo:firstyear=2002&license=viewergpl$
6 *
7 * Copyright (c) 2002-2008, Linden Research, Inc.
8 *
9 * Second Life Viewer Source Code
10 * The source code in this file ("Source Code") is provided by Linden Lab
11 * to you under the terms of the GNU General Public License, version 2.0
12 * ("GPL"), unless you have obtained a separate licensing agreement
13 * ("Other License"), formally executed by you and Linden Lab. Terms of
14 * the GPL can be found in doc/GPL-license.txt in this distribution, or
15 * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2
16 *
17 * There are special exceptions to the terms and conditions of the GPL as
18 * it is applied to this Source Code. View the full text of the exception
19 * in the file doc/FLOSS-exception.txt in this software distribution, or
20 * online at http://secondlifegrid.net/programs/open_source/licensing/flossexception
21 *
22 * By copying, modifying or distributing this software, you acknowledge
23 * that you have read and understood your obligations described above,
24 * and agree to abide by those obligations.
25 *
26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
30 */
31
32#ifndef LL_LLCUBEMAP_H
33#define LL_LLCUBEMAP_H
34
35#include "llgl.h"
36#include "llviewerimage.h"
37
38#include <vector>
39
40class LLVector3;
41
42// Environment map hack!
43class LLCubeMap : public LLRefCount
44{
45public:
46 LLCubeMap();
47 void init(const std::vector<LLPointer<LLImageRaw> >& rawimages);
48 void initGL();
49 void initRawData(const std::vector<LLPointer<LLImageRaw> >& rawimages);
50 void initGLData();
51
52 void bind();
53 void enable(S32 stage);
54
55 void enableTexture(S32 stage);
56 void enableTextureCoords(S32 stage);
57
58 void disable(void);
59 void disableTexture(void);
60 void disableTextureCoords(void);
61 void setMatrix(S32 stage);
62 void restoreMatrix();
63 void setReflection (void);
64
65 void finishPaint();
66
67 GLuint getGLName();
68
69 LLVector3 map(U8 side, U16 v_val, U16 h_val) const;
70 BOOL project(F32& v_val, F32& h_val, BOOL& outside,
71 U8 side, const LLVector3& dir) const;
72 BOOL project(F32& v_min, F32& v_max, F32& h_min, F32& h_max,
73 U8 side, LLVector3 dir[4]) const;
74 void paintIn(LLVector3 dir[4], const LLColor4U& col);
75 void destroyGL();
76
77protected:
78 ~LLCubeMap();
79 LLGLenum mTargets[6];
80 LLPointer<LLImageGL> mImages[6];
81 LLPointer<LLImageRaw> mRawImages[6];
82 S32 mTextureStage;
83 S32 mTextureCoordStage;
84 S32 mMatrixStage;
85};
86
87#endif