MCPcopy Create free account
hub / github.com/DGVPSH/SlackOpen / generateMipMapData

Method generateMipMapData

src/main/java/net/optifine/Mipmaps.java:85–127  ·  view source on GitHub ↗
(int[] data, int width, int height, Dimension[] mipmapDimensions)

Source from the content-addressed store, hash-verified

83 }
84
85 public static int[][] generateMipMapData(int[] data, int width, int height, Dimension[] mipmapDimensions)
86 {
87 int[] aint = data;
88 int i = width;
89 boolean flag = true;
90 int[][] aint1 = new int[mipmapDimensions.length][];
91
92 for (int j = 0; j < mipmapDimensions.length; ++j)
93 {
94 Dimension dimension = mipmapDimensions[j];
95 int k = dimension.width;
96 int l = dimension.height;
97 int[] aint2 = new int[k * l];
98 aint1[j] = aint2;
99 int i1 = j + 1;
100
101 if (flag)
102 {
103 for (int j1 = 0; j1 < k; ++j1)
104 {
105 for (int k1 = 0; k1 < l; ++k1)
106 {
107 int l1 = aint[j1 * 2 + 0 + (k1 * 2 + 0) * i];
108 int i2 = aint[j1 * 2 + 1 + (k1 * 2 + 0) * i];
109 int j2 = aint[j1 * 2 + 1 + (k1 * 2 + 1) * i];
110 int k2 = aint[j1 * 2 + 0 + (k1 * 2 + 1) * i];
111 int l2 = alphaBlend(l1, i2, j2, k2);
112 aint2[j1 + k1 * k] = l2;
113 }
114 }
115 }
116
117 aint = aint2;
118 i = k;
119
120 if (k <= 1 || l <= 1)
121 {
122 flag = false;
123 }
124 }
125
126 return aint1;
127 }
128
129 public static int alphaBlend(int c1, int c2, int c3, int c4)
130 {

Callers 1

MipmapsMethod · 0.95

Calls 1

alphaBlendMethod · 0.95

Tested by

no test coverage detected