adjust default view transform
This commit is contained in:
parent
25817f7780
commit
43cf90f55a
@ -61,7 +61,6 @@ void main()
|
|||||||
input::init();
|
input::init();
|
||||||
graphics::init();
|
graphics::init();
|
||||||
texture::init();
|
texture::init();
|
||||||
printf("texture init\n");
|
|
||||||
|
|
||||||
interrupt_init();
|
interrupt_init();
|
||||||
system.IML6NRM = istnrm::end_of_render_tsp
|
system.IML6NRM = istnrm::end_of_render_tsp
|
||||||
|
@ -90,11 +90,11 @@ namespace font {
|
|||||||
return offset;
|
return offset;
|
||||||
}
|
}
|
||||||
|
|
||||||
void face::draw_float(ta_parameter_writer& writer,
|
int face::draw_float(ta_parameter_writer& writer,
|
||||||
const vec3& p,
|
const vec3& p,
|
||||||
float num,
|
float num,
|
||||||
uint32_t base_color,
|
uint32_t base_color,
|
||||||
int length) const
|
int length) const
|
||||||
{
|
{
|
||||||
char s[20];
|
char s[20];
|
||||||
int offset = format_float(s, num);
|
int offset = format_float(s, num);
|
||||||
@ -104,6 +104,28 @@ namespace font {
|
|||||||
x += hori_advance * (length - offset);
|
x += hori_advance * (length - offset);
|
||||||
}
|
}
|
||||||
draw_string(writer, {x, p.y, p.z}, s, base_color);
|
draw_string(writer, {x, p.y, p.z}, s, base_color);
|
||||||
|
return length >= offset ? length : offset;
|
||||||
|
}
|
||||||
|
|
||||||
|
void face::draw_mat4(ta_parameter_writer& writer,
|
||||||
|
const vec3& p,
|
||||||
|
const mat4x4& mat,
|
||||||
|
uint32_t base_color,
|
||||||
|
int value_length) const
|
||||||
|
{
|
||||||
|
int len;
|
||||||
|
vec3 pos = p;
|
||||||
|
for (int row = 0; row < 4; row++) {
|
||||||
|
len = draw_float(writer, pos, mat[row][0], base_color, value_length);
|
||||||
|
pos.x += hori_advance * len;
|
||||||
|
len = draw_float(writer, pos, mat[row][1], base_color, value_length);
|
||||||
|
pos.x += hori_advance * len;
|
||||||
|
len = draw_float(writer, pos, mat[row][2], base_color, value_length);
|
||||||
|
pos.x += hori_advance * len;
|
||||||
|
len = draw_float(writer, pos, mat[row][3], base_color, value_length);
|
||||||
|
pos.x = p.x;
|
||||||
|
pos.y += height;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const face ter_u12n = {
|
const face ter_u12n = {
|
||||||
|
@ -37,11 +37,17 @@ namespace font {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void draw_float(ta_parameter_writer& writer,
|
int draw_float(ta_parameter_writer& writer,
|
||||||
const vec3& p,
|
const vec3& p,
|
||||||
float num,
|
float num,
|
||||||
uint32_t base_color,
|
uint32_t base_color,
|
||||||
int length = 0) const;
|
int length = 0) const;
|
||||||
|
|
||||||
|
void draw_mat4(ta_parameter_writer& writer,
|
||||||
|
const vec3& p,
|
||||||
|
const mat4x4& mat,
|
||||||
|
uint32_t base_color,
|
||||||
|
int value_length) const;
|
||||||
};
|
};
|
||||||
|
|
||||||
extern const face ter_u12n;
|
extern const face ter_u12n;
|
||||||
|
@ -95,14 +95,12 @@ namespace graphics {
|
|||||||
void draw()
|
void draw()
|
||||||
{
|
{
|
||||||
font::ter_u12n.global(writer);
|
font::ter_u12n.global(writer);
|
||||||
font::ter_u12n.draw_glyph(writer, vec3(10, 10, 10), 'a', 0xffffffff);
|
//font::ter_u12n.draw_mat4(writer, vec3(10, 22, 10), view_trans, 0xffffffff, 12);
|
||||||
font::ter_u12n.draw_float(writer, vec3(10, 22, 10), 1.234, 0xffffffff, 7);
|
|
||||||
font::ter_u12n.draw_float(writer, vec3(10, 34, 10), -50.234, 0xffffffff, 7);
|
|
||||||
|
|
||||||
writer.append<ta_global_parameter::end_of_list>() =
|
writer.append<ta_global_parameter::end_of_list>() =
|
||||||
ta_global_parameter::end_of_list(para_control::para_type::end_of_list);
|
ta_global_parameter::end_of_list(para_control::para_type::end_of_list);
|
||||||
|
|
||||||
draw_axis(writer, view_trans);
|
draw_axis(writer, view_trans * scale(0.5f));
|
||||||
|
|
||||||
b.draw(writer, view_trans * scale(0.05f));
|
b.draw(writer, view_trans * scale(0.05f));
|
||||||
|
|
||||||
@ -133,6 +131,8 @@ namespace graphics {
|
|||||||
0xc5f7c5f7);
|
0xc5f7c5f7);
|
||||||
|
|
||||||
framebuffer::spg_set_mode_640x480_vga();
|
framebuffer::spg_set_mode_640x480_vga();
|
||||||
|
//framebuffer::spg_set_mode_720x480_vga();
|
||||||
|
//framebuffer::init(720, 480,
|
||||||
framebuffer::init(640, 480,
|
framebuffer::init(640, 480,
|
||||||
texture_memory_alloc.framebuffer[0].start);
|
texture_memory_alloc.framebuffer[0].start);
|
||||||
core_param_init(texture_memory_alloc.region_array.start,
|
core_param_init(texture_memory_alloc.region_array.start,
|
||||||
@ -160,7 +160,10 @@ namespace graphics {
|
|||||||
view_trans
|
view_trans
|
||||||
= scale(vec3(s, s, 1))
|
= scale(vec3(s, s, 1))
|
||||||
* translate(vec3(0, 0, 10))
|
* translate(vec3(0, 0, 10))
|
||||||
|
* rotate_x(pi / 4)
|
||||||
|
* rotate_y(pi / 4)
|
||||||
* scale(vec3(-1, -1, 1));
|
* scale(vec3(-1, -1, 1));
|
||||||
|
view_trans = view_trans * translate(vec3(0, 0, -0.9));
|
||||||
}
|
}
|
||||||
|
|
||||||
void view_transform()
|
void view_transform()
|
||||||
@ -186,7 +189,7 @@ namespace graphics {
|
|||||||
}
|
}
|
||||||
last_a[port_ix] = a;
|
last_a[port_ix] = a;
|
||||||
|
|
||||||
view_trans = view_trans * rotate_x(dx) * rotate_y(dy);
|
//view_trans = view_trans * rotate_x(dx) * rotate_y(dy);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user