170 {
171 float num = rotation.X + rotation.X;
172 float num2 = rotation.Y + rotation.Y;
173 float num3 = rotation.Z + rotation.Z;
174 float num4 = rotation.W * num;
175 float num5 = rotation.W * num2;
176 float num6 = rotation.W * num3;
177 float num7 = rotation.X * num;
178 float num8 = rotation.X * num2;
179 float num9 = rotation.X * num3;
180 float num10 = rotation.Y * num2;
181 float num11 = rotation.Y * num3;
182 float num12 = rotation.Z * num3;
183 float num13 = 1f - num10 - num12;
184 float num14 = num8 - num6;
185 float num15 = num9 + num5;
186 float num16 = num8 + num6;
187 float num17 = 1f - num7 - num12;
188 float num18 = num11 - num4;
189 float num19 = num9 - num5;
190 float num20 = num11 + num4;
191 float num21 = 1f - num7 - num10;
192 float x = plane.Normal.X;
193 float y = plane.Normal.Y;
194 float z = plane.Normal.Z;
196 result.Normal.X = x * num13 + y * num14 + z * num15;
197 result.Normal.Y = x * num16 + y * num17 + z * num18;
198 result.Normal.Z = x * num19 + y * num20 + z * num21;
199 result.D = plane.D;
200 return result;
201 }
Plane(float a, float b, float c, float d)