Assert Style

This commit is contained in:
PedroEdiaz
2024-11-30 22:33:28 -06:00
parent df5ae70aa2
commit ee144f2286
5 changed files with 140 additions and 139 deletions

View File

@@ -72,7 +72,6 @@ void __key_callback_input(
break; break;
} }
return; return;
} }
@@ -175,7 +174,8 @@ end:
if (0) if (0)
{ {
printf("QUAT: %2.5f %2.5f %2.5f %2.5f\n", q[0], q[1], q[2], q[3]); printf("QUAT: %2.5f %2.5f %2.5f %2.5f\n", q[0], q[1], q[2], q[3]);
printf("PROY: %3d %3d %3d (%3d)\n", projection.x, projection.y, projection.z, projection.w ); printf("PROY: %3d %3d %3d (%3d)\n", projection.x, projection.y,
projection.z, projection.w);
printf("\n"); printf("\n");
} }
return q; return q;

View File

@@ -80,8 +80,6 @@ static inline
} }
} }
clean_context(); clean_context();
#ifndef DEBUG #ifndef DEBUG
@@ -97,7 +95,6 @@ static inline
load_mdl_matrix(shader_plain, 0, 3); load_mdl_matrix(shader_plain, 0, 3);
draw_mesh(m_surface, 1); draw_mesh(m_surface, 1);
} }
int main(void) int main(void)
@@ -172,7 +169,6 @@ int main(void)
projection.mesh = m_surface; projection.mesh = m_surface;
set_projection_mesh(projection); set_projection_mesh(projection);
free(n_surface); free(n_surface);
free(d_surface); free(d_surface);
} }

Binary file not shown.

View File

@@ -29,7 +29,6 @@ void riemman(float *d_surface, int * coords, int grid_size)
d_surface[3] = cimag(eq); d_surface[3] = cimag(eq);
} }
void cube(float *d_surface, int *coord, int grid_size) void cube(float *d_surface, int *coord, int grid_size)
{ {
unsigned char i; unsigned char i;
@@ -148,8 +147,6 @@ float *generate_data_surface(int grid_size, unsigned char *s)
return d_surface; return d_surface;
} }
static void __calculate_normal( static void __calculate_normal(
float *p1, float *p2, float *p3, float *normal, unsigned char n) float *p1, float *p2, float *p3, float *normal, unsigned char n)
{ {
@@ -169,26 +166,30 @@ static void __calculate_normal(
Calculate a normal vector of a plain using Gram-Schmidt process Calculate a normal vector of a plain using Gram-Schmidt process
*/ */
{ {
for (i = 0; i < n; ++i) { for (i = 0; i < n; ++i)
{
v1[i] = p2[i] - p1[i]; v1[i] = p2[i] - p1[i];
v2[i] = p3[i] - p1[i]; v2[i] = p3[i] - p1[i];
v3[i] = p1[i]; v3[i] = p1[i];
} }
for (i = 0; i < n; ++i) { for (i = 0; i < n; ++i)
{
u1[i] = v1[i]; u1[i] = v1[i];
} }
{ {
float proj[n]; float proj[n];
float dot_v2_u1 = 0.0f, dot_u1_u1 = 0.0f; float dot_v2_u1 = 0.0f, dot_u1_u1 = 0.0f;
for (i = 0; i < n; ++i) { for (i = 0; i < n; ++i)
{
dot_v2_u1 += v2[i] * u1[i]; dot_v2_u1 += v2[i] * u1[i];
dot_u1_u1 += u1[i] * u1[i]; dot_u1_u1 += u1[i] * u1[i];
} }
alpha = dot_v2_u1 / dot_u1_u1; alpha = dot_v2_u1 / dot_u1_u1;
for (i = 0; i < n; ++i) { for (i = 0; i < n; ++i)
{
proj[i] = u1[i] * alpha; proj[i] = u1[i] * alpha;
u2[i] = v2[i] - proj[i]; u2[i] = v2[i] - proj[i];
} }
@@ -199,31 +200,37 @@ static void __calculate_normal(
float dot_v3_u1 = 0.0f, dot_u1_u1 = 0.0f; float dot_v3_u1 = 0.0f, dot_u1_u1 = 0.0f;
float dot_v3_u2 = 0.0f, dot_u2_u2 = 0.0f; float dot_v3_u2 = 0.0f, dot_u2_u2 = 0.0f;
for (i = 0; i < n; ++i) { for (i = 0; i < n; ++i)
{
dot_v3_u1 += v3[i] * u1[i]; dot_v3_u1 += v3[i] * u1[i];
dot_u1_u1 += u1[i] * u1[i]; dot_u1_u1 += u1[i] * u1[i];
} }
for (i = 0; i < n; ++i) { for (i = 0; i < n; ++i)
{
proj1[i] = u1[i] * (dot_v3_u1 / dot_u1_u1); proj1[i] = u1[i] * (dot_v3_u1 / dot_u1_u1);
} }
for (i = 0; i < n; ++i) { for (i = 0; i < n; ++i)
{
dot_v3_u2 += v3[i] * u2[i]; dot_v3_u2 += v3[i] * u2[i];
dot_u2_u2 += u2[i] * u2[i]; dot_u2_u2 += u2[i] * u2[i];
} }
for (i = 0; i < n; ++i) { for (i = 0; i < n; ++i)
{
proj2[i] = u2[i] * (dot_v3_u2 / dot_u2_u2); proj2[i] = u2[i] * (dot_v3_u2 / dot_u2_u2);
u3[i] = v3[i] - proj1[i] - proj2[i]; u3[i] = v3[i] - proj1[i] - proj2[i];
} }
} }
float magnitude = 0.0f; float magnitude = 0.0f;
for (i = 0; i < n; ++i) { for (i = 0; i < n; ++i)
{
magnitude += u3[i] * u3[i]; magnitude += u3[i] * u3[i];
} }
magnitude = sqrtf(magnitude); magnitude = sqrtf(magnitude);
for (i = 0; i < n; ++i) { for (i = 0; i < n; ++i)
{
normal[i] = u3[i] / magnitude; normal[i] = u3[i] / magnitude;
} }
@@ -237,7 +244,6 @@ static void __calculate_normal(
} }
} }
float *generate_normals_surface(float *d, unsigned char m) float *generate_normals_surface(float *d, unsigned char m)
{ {
float *n; float *n;
@@ -250,7 +256,6 @@ float *generate_normals_surface(float *d, unsigned char m)
for (int i = 0; i < *d; i += 3 * m) for (int i = 0; i < *d; i += 3 * m)
{ {
__calculate_normal( __calculate_normal(
(d + 1) + i, (d + 1) + i + m, (d + 1) + i + 2 * m, norm_vec, m); (d + 1) + i, (d + 1) + i + m, (d + 1) + i + 2 * m, norm_vec, m);
glm_vec3_copy(norm_vec, (n + 1) + i); glm_vec3_copy(norm_vec, (n + 1) + i);