58 lines
1.9 KiB
Plaintext
58 lines
1.9 KiB
Plaintext
|
|
|
||
|
|
/**
|
||
|
|
* Debug drawing of shapes.
|
||
|
|
*/
|
||
|
|
|
||
|
|
#pragma BLENDER_REQUIRE(common_debug_draw_lib.glsl)
|
||
|
|
#pragma BLENDER_REQUIRE(common_shape_lib.glsl)
|
||
|
|
|
||
|
|
void drw_debug(Box shape, vec4 color)
|
||
|
|
{
|
||
|
|
drw_debug_quad(shape.corners[0], shape.corners[1], shape.corners[2], shape.corners[3], color);
|
||
|
|
drw_debug_line(shape.corners[0], shape.corners[4], color);
|
||
|
|
drw_debug_line(shape.corners[1], shape.corners[5], color);
|
||
|
|
drw_debug_line(shape.corners[2], shape.corners[6], color);
|
||
|
|
drw_debug_line(shape.corners[3], shape.corners[7], color);
|
||
|
|
drw_debug_quad(shape.corners[4], shape.corners[5], shape.corners[6], shape.corners[7], color);
|
||
|
|
}
|
||
|
|
void drw_debug(Box shape)
|
||
|
|
{
|
||
|
|
drw_debug(shape, drw_debug_default_color);
|
||
|
|
}
|
||
|
|
|
||
|
|
void drw_debug(Frustum shape, vec4 color)
|
||
|
|
{
|
||
|
|
drw_debug_quad(shape.corners[0], shape.corners[1], shape.corners[2], shape.corners[3], color);
|
||
|
|
drw_debug_line(shape.corners[0], shape.corners[4], color);
|
||
|
|
drw_debug_line(shape.corners[1], shape.corners[5], color);
|
||
|
|
drw_debug_line(shape.corners[2], shape.corners[6], color);
|
||
|
|
drw_debug_line(shape.corners[3], shape.corners[7], color);
|
||
|
|
drw_debug_quad(shape.corners[4], shape.corners[5], shape.corners[6], shape.corners[7], color);
|
||
|
|
}
|
||
|
|
void drw_debug(Frustum shape)
|
||
|
|
{
|
||
|
|
drw_debug(shape, drw_debug_default_color);
|
||
|
|
}
|
||
|
|
|
||
|
|
void drw_debug(Pyramid shape, vec4 color)
|
||
|
|
{
|
||
|
|
drw_debug_line(shape.corners[0], shape.corners[1], color);
|
||
|
|
drw_debug_line(shape.corners[0], shape.corners[2], color);
|
||
|
|
drw_debug_line(shape.corners[0], shape.corners[3], color);
|
||
|
|
drw_debug_line(shape.corners[0], shape.corners[4], color);
|
||
|
|
drw_debug_quad(shape.corners[1], shape.corners[2], shape.corners[3], shape.corners[4], color);
|
||
|
|
}
|
||
|
|
void drw_debug(Pyramid shape)
|
||
|
|
{
|
||
|
|
drw_debug(shape, drw_debug_default_color);
|
||
|
|
}
|
||
|
|
|
||
|
|
void drw_debug(Sphere shape, vec4 color)
|
||
|
|
{
|
||
|
|
drw_debug_sphere(shape.center, shape.radius, color);
|
||
|
|
}
|
||
|
|
void drw_debug(Sphere shape)
|
||
|
|
{
|
||
|
|
drw_debug(shape, drw_debug_default_color);
|
||
|
|
}
|