MCPcopy Create free account
hub / github.com/bfbbdecomp/bfbb / Subdivide

Function Subdivide

src/dolphin/src/gx/GXDraw.c:75–102  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

73}
74
75static void Subdivide(u8 depth, f32 v0[3], f32 v1[3], f32 v2[3])
76{
77 f32 v01[3];
78 f32 v12[3];
79 f32 v20[3];
80 u32 i;
81
82 if (depth == 0)
83 {
84 DumpTriangle(v0, v1, v2);
85 return;
86 }
87
88 for (i = 0; i < 3; i++)
89 {
90 v01[i] = v0[i] + v1[i];
91 v12[i] = v1[i] + v2[i];
92 v20[i] = v2[i] + v0[i];
93 }
94
95 normalize(v01);
96 normalize(v12);
97 normalize(v20);
98 Subdivide(depth - 1, v0, v01, v20);
99 Subdivide(depth - 1, v1, v12, v01);
100 Subdivide(depth - 1, v2, v20, v12);
101 Subdivide(depth - 1, v01, v12, v20);
102}
103
104static void SubDivTriangle(u8 depth, u8 i, f32 (*data)[3], u8 (*ndx)[3])
105{

Callers 1

SubDivTriangleFunction · 0.85

Calls 2

DumpTriangleFunction · 0.85
normalizeFunction · 0.85

Tested by

no test coverage detected