diff options
| author | sanine-a <sanine.not@pm.me> | 2020-10-27 14:33:25 -0500 | 
|---|---|---|
| committer | sanine-a <sanine.not@pm.me> | 2020-10-27 14:33:25 -0500 | 
| commit | 3ef1112d085a101aa55d11ff894f1fb515d29c27 (patch) | |
| tree | 32095f981cdfedbf6a8791b834f8ab5c82f8646e /src/primitives | |
| parent | acc262b019206d09ce0d297f7b185862fe432601 (diff) | |
add mesh lua functions and refactor lua type names
Diffstat (limited to 'src/primitives')
| -rw-r--r-- | src/primitives/primitives.c | 356 | 
1 files changed, 178 insertions, 178 deletions
| diff --git a/src/primitives/primitives.c b/src/primitives/primitives.c index efc4a0f..0d8f209 100644 --- a/src/primitives/primitives.c +++ b/src/primitives/primitives.c @@ -1,180 +1,180 @@  #include "primitives.h" -honey_result honey_mesh_new_textured_plane(honey_mesh* mesh, -                                           float width, -                                           float height) { -  float x0 = 0; -  float y0 = 0; -  float x1 = width; -  float y1 = height; - -  float vertices[] = { -    /* position        normal        uv */ -    x0, y0, 0,         0, 0, 1,      0, 0, -    x1, y0, 0,         0, 0, 1,      1, 0, -    x0, y1, 0,         0, 0, 1,      0, 1, -    x1, y1, 0,         0, 0, 1,      1, 1 }; - -  unsigned int indices[] = { -    0, 1, 2, -    1, 2, 3 }; - -  unsigned int attrib_sizes[] = { 3, 3, 2 }; - -  honey_result result = honey_mesh_new(mesh, -                                       vertices, 4, -                                       3, attrib_sizes, -                                       indices, 6); -  return result; -} - -/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ - -honey_result honey_mesh_new_cube(honey_mesh* mesh, -                                 float width, -                                 float height, -                                 float depth) { -  float x0 = 0; -  float y0 = 0; -  float z0 = 0; - -  float x1 = width; -  float y1 = height; -  float z1 = depth; - -  float vertices[] = { -    /* position        normal     tex coord */ -    /* back face */ -    x0, y0, z0,       0, 0, -1, -    x1, y0, z0,       0, 0, -1, -    x0, y1, z0,       0, 0, -1, -    x1, y1, z0,       0, 0, -1, - -    /* front face */ -    x0, y0, z1,       0, 0, 1,  -    x1, y0, z1,       0, 0, 1,  -    x0, y1, z1,       0, 0, 1,  -    x1, y1, z1,       0, 0, 1,  - -    /* left face */ -    x0, y0, z0,       -1, 0, 0, -    x0, y1, z0,       -1, 0, 0, -    x0, y0, z1,       -1, 0, 0, -    x0, y1, z1,       -1, 0, 0, - -    /* right face */ -    x1, y0, z0,        1, 0, 0, -    x1, y1, z0,        1, 0, 0, -    x1, y0, z1,        1, 0, 0, -    x1, y1, z1,        1, 0, 0, - -    /* bottom face */ -    x0, y0, z0,       0, -1, 0, -    x1, y0, z0,       0, -1, 0, -    x0, y0, z1,       0, -1, 0, -    x1, y0, z1,       0, -1, 0, -     -    /* top face */ -    x0, y1, z0,       0,  1, 0, -    x1, y1, z0,       0,  1, 0, -    x0, y1, z1,       0,  1, 0, -    x1, y1, z1,       0,  1, 0 }; - -  unsigned int indices[] = { -    0, 1, 2, -    1, 2, 3, -    4, 5, 6, -    5, 6, 7, -    8, 9, 10, -    9, 10, 11, -    12, 13, 14, -    13, 14, 15, -    16, 17, 18, -    17, 18, 19, -    20, 21, 22, -    21, 22, 23 }; - -  unsigned int attrib_sizes[] = { 3, 3 }; - -  honey_result result = honey_mesh_new(mesh, -                                       vertices, 24, -                                       2, attrib_sizes, -                                       indices, 36); - -  return result; -} - -/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ - -honey_result honey_mesh_new_textured_cube(honey_mesh* mesh, -                                          float width, -                                          float height, -                                          float depth) { -  float x0 = 0; -  float y0 = 0; -  float z0 = 0; - -  float x1 = width; -  float y1 = height; -  float z1 = depth; - -  float vertices[] = { -    /* position        normal     tex coord */ -    /* back face */ -    x0, y0, z0,       0, 0, -1,     0, 0, -    x1, y0, z0,       0, 0, -1,     1, 0, -    x0, y1, z0,       0, 0, -1,     0, 1, -    x1, y1, z0,       0, 0, -1,     1, 1, - -    /* front face */ -    x0, y0, z1,       0, 0, 1,      0, 0, -    x1, y0, z1,       0, 0, 1,      1, 0, -    x0, y1, z1,       0, 0, 1,      0, 1, -    x1, y1, z1,       0, 0, 1,      1, 1, - -    /* left face */ -    x0, y0, z0,       -1, 0, 0,     0, 0, -    x0, y1, z0,       -1, 0, 0,     1, 0, -    x0, y0, z1,       -1, 0, 0,     0, 1, -    x0, y1, z1,       -1, 0, 0,     1, 1, - -    /* right face */ -    x1, y0, z0,        1, 0, 0,     0, 0, -    x1, y1, z0,        1, 0, 0,     1, 0, -    x1, y0, z1,        1, 0, 0,     0, 1, -    x1, y1, z1,        1, 0, 0,     1, 1, - -    /* bottom face */ -    x0, y0, z0,       0, -1, 0,     0, 0, -    x1, y0, z0,       0, -1, 0,     1, 0, -    x0, y0, z1,       0, -1, 0,     0, 1, -    x1, y0, z1,       0, -1, 0,     1, 1, -     -    /* top face */ -    x0, y1, z0,       0,  1, 0,     0, 0, -    x1, y1, z0,       0,  1, 0,     1, 0, -    x0, y1, z1,       0,  1, 0,     0, 1, -    x1, y1, z1,       0,  1, 0,     1, 1 }; - -  unsigned int indices[] = { -    0, 1, 2, -    1, 2, 3, -    4, 5, 6, -    5, 6, 7, -    8, 9, 10, -    9, 10, 11, -    12, 13, 14, -    13, 14, 15, -    16, 17, 18, -    17, 18, 19, -    20, 21, 22, -    21, 22, 23 }; - -  unsigned int attrib_sizes[] = { 3, 3, 2 }; - -  honey_result result; -  result = honey_mesh_new(mesh, vertices, 24, -                          3, attrib_sizes, -                          indices, 36); -  return result; -} +//honey_result honey_mesh_new_textured_plane(honey_mesh* mesh, +//                                           float width, +//                                           float height) { +//  float x0 = 0; +//  float y0 = 0; +//  float x1 = width; +//  float y1 = height; +// +//  float vertices[] = { +//    /* position        normal        uv */ +//    x0, y0, 0,         0, 0, 1,      0, 0, +//    x1, y0, 0,         0, 0, 1,      1, 0, +//    x0, y1, 0,         0, 0, 1,      0, 1, +//    x1, y1, 0,         0, 0, 1,      1, 1 }; +// +//  unsigned int indices[] = { +//    0, 1, 2, +//    1, 2, 3 }; +// +//  unsigned int attrib_sizes[] = { 3, 3, 2 }; +// +//  honey_result result = honey_mesh_new(mesh, +//                                       vertices, 4, +//                                       3, attrib_sizes, +//                                       indices, 6); +//  return result; +//} +// +///* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ +// +//honey_result honey_mesh_new_cube(honey_mesh* mesh, +//                                 float width, +//                                 float height, +//                                 float depth) { +//  float x0 = 0; +//  float y0 = 0; +//  float z0 = 0; +// +//  float x1 = width; +//  float y1 = height; +//  float z1 = depth; +// +//  float vertices[] = { +//    /* position        normal     tex coord */ +//    /* back face */ +//    x0, y0, z0,       0, 0, -1, +//    x1, y0, z0,       0, 0, -1, +//    x0, y1, z0,       0, 0, -1, +//    x1, y1, z0,       0, 0, -1, +// +//    /* front face */ +//    x0, y0, z1,       0, 0, 1,  +//    x1, y0, z1,       0, 0, 1,  +//    x0, y1, z1,       0, 0, 1,  +//    x1, y1, z1,       0, 0, 1,  +// +//    /* left face */ +//    x0, y0, z0,       -1, 0, 0, +//    x0, y1, z0,       -1, 0, 0, +//    x0, y0, z1,       -1, 0, 0, +//    x0, y1, z1,       -1, 0, 0, +// +//    /* right face */ +//    x1, y0, z0,        1, 0, 0, +//    x1, y1, z0,        1, 0, 0, +//    x1, y0, z1,        1, 0, 0, +//    x1, y1, z1,        1, 0, 0, +// +//    /* bottom face */ +//    x0, y0, z0,       0, -1, 0, +//    x1, y0, z0,       0, -1, 0, +//    x0, y0, z1,       0, -1, 0, +//    x1, y0, z1,       0, -1, 0, +//     +//    /* top face */ +//    x0, y1, z0,       0,  1, 0, +//    x1, y1, z0,       0,  1, 0, +//    x0, y1, z1,       0,  1, 0, +//    x1, y1, z1,       0,  1, 0 }; +// +//  unsigned int indices[] = { +//    0, 1, 2, +//    1, 2, 3, +//    4, 5, 6, +//    5, 6, 7, +//    8, 9, 10, +//    9, 10, 11, +//    12, 13, 14, +//    13, 14, 15, +//    16, 17, 18, +//    17, 18, 19, +//    20, 21, 22, +//    21, 22, 23 }; +// +//  unsigned int attrib_sizes[] = { 3, 3 }; +// +//  honey_result result = honey_mesh_new(mesh, +//                                       vertices, 24, +//                                       2, attrib_sizes, +//                                       indices, 36); +// +//  return result; +//} +// +///* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ +// +//honey_result honey_mesh_new_textured_cube(honey_mesh* mesh, +//                                          float width, +//                                          float height, +//                                          float depth) { +//  float x0 = 0; +//  float y0 = 0; +//  float z0 = 0; +// +//  float x1 = width; +//  float y1 = height; +//  float z1 = depth; +// +//  float vertices[] = { +//    /* position        normal     tex coord */ +//    /* back face */ +//    x0, y0, z0,       0, 0, -1,     0, 0, +//    x1, y0, z0,       0, 0, -1,     1, 0, +//    x0, y1, z0,       0, 0, -1,     0, 1, +//    x1, y1, z0,       0, 0, -1,     1, 1, +// +//    /* front face */ +//    x0, y0, z1,       0, 0, 1,      0, 0, +//    x1, y0, z1,       0, 0, 1,      1, 0, +//    x0, y1, z1,       0, 0, 1,      0, 1, +//    x1, y1, z1,       0, 0, 1,      1, 1, +// +//    /* left face */ +//    x0, y0, z0,       -1, 0, 0,     0, 0, +//    x0, y1, z0,       -1, 0, 0,     1, 0, +//    x0, y0, z1,       -1, 0, 0,     0, 1, +//    x0, y1, z1,       -1, 0, 0,     1, 1, +// +//    /* right face */ +//    x1, y0, z0,        1, 0, 0,     0, 0, +//    x1, y1, z0,        1, 0, 0,     1, 0, +//    x1, y0, z1,        1, 0, 0,     0, 1, +//    x1, y1, z1,        1, 0, 0,     1, 1, +// +//    /* bottom face */ +//    x0, y0, z0,       0, -1, 0,     0, 0, +//    x1, y0, z0,       0, -1, 0,     1, 0, +//    x0, y0, z1,       0, -1, 0,     0, 1, +//    x1, y0, z1,       0, -1, 0,     1, 1, +//     +//    /* top face */ +//    x0, y1, z0,       0,  1, 0,     0, 0, +//    x1, y1, z0,       0,  1, 0,     1, 0, +//    x0, y1, z1,       0,  1, 0,     0, 1, +//    x1, y1, z1,       0,  1, 0,     1, 1 }; +// +//  unsigned int indices[] = { +//    0, 1, 2, +//    1, 2, 3, +//    4, 5, 6, +//    5, 6, 7, +//    8, 9, 10, +//    9, 10, 11, +//    12, 13, 14, +//    13, 14, 15, +//    16, 17, 18, +//    17, 18, 19, +//    20, 21, 22, +//    21, 22, 23 }; +// +//  unsigned int attrib_sizes[] = { 3, 3, 2 }; +// +//  honey_result result; +//  result = honey_mesh_new(mesh, vertices, 24, +//                          3, attrib_sizes, +//                          indices, 36); +//  return result; +//} | 
