summaryrefslogtreecommitdiff
path: root/Runtime/Graphics/CubemapProcessor.h
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2019-08-14 22:50:43 +0800
committerchai <chaifix@163.com>2019-08-14 22:50:43 +0800
commit15740faf9fe9fe4be08965098bbf2947e096aeeb (patch)
treea730ec236656cc8cab5b13f088adfaed6bb218fb /Runtime/Graphics/CubemapProcessor.h
+Unity Runtime codeHEADmaster
Diffstat (limited to 'Runtime/Graphics/CubemapProcessor.h')
-rw-r--r--Runtime/Graphics/CubemapProcessor.h35
1 files changed, 35 insertions, 0 deletions
diff --git a/Runtime/Graphics/CubemapProcessor.h b/Runtime/Graphics/CubemapProcessor.h
new file mode 100644
index 0000000..b824e8d
--- /dev/null
+++ b/Runtime/Graphics/CubemapProcessor.h
@@ -0,0 +1,35 @@
+#ifndef CUBEMAPPROCESSOR_H
+#define CUBEMAPPROCESSOR_H
+
+//--------------------------------------------------------------------------------------
+// Based on CCubeMapProcessor from CubeMapGen v1.4
+// http://developer.amd.com/archive/gpu/cubemapgen/Pages/default.aspx#download
+// Class for filtering and processing cubemaps
+//
+//
+//--------------------------------------------------------------------------------------
+// (C) 2005 ATI Research, Inc., All rights reserved.
+//--------------------------------------------------------------------------------------
+
+
+#define CP_ITYPE float
+
+struct CImageSurface
+{
+ int m_Width; //image width
+ int m_Height; //image height
+ int m_NumChannels; //number of channels
+ CP_ITYPE *m_ImgData; //cubemap image data
+};
+
+// Edge fixup type (how to perform smoothing near edge region)
+#define CP_FIXUP_NONE 0
+#define CP_FIXUP_PULL_LINEAR 1
+#define CP_FIXUP_PULL_HERMITE 2
+#define CP_FIXUP_AVERAGE_LINEAR 3
+#define CP_FIXUP_AVERAGE_HERMITE 4
+
+
+void FixupCubeEdges (CImageSurface *a_CubeMap, int a_FixupType, int a_FixupWidth);
+
+#endif