adjust default view transform
This commit is contained in:
parent
25817f7780
commit
43cf90f55a
@ -61,7 +61,6 @@ void main()
|
||||
input::init();
|
||||
graphics::init();
|
||||
texture::init();
|
||||
printf("texture init\n");
|
||||
|
||||
interrupt_init();
|
||||
system.IML6NRM = istnrm::end_of_render_tsp
|
||||
|
@ -90,11 +90,11 @@ namespace font {
|
||||
return offset;
|
||||
}
|
||||
|
||||
void face::draw_float(ta_parameter_writer& writer,
|
||||
const vec3& p,
|
||||
float num,
|
||||
uint32_t base_color,
|
||||
int length) const
|
||||
int face::draw_float(ta_parameter_writer& writer,
|
||||
const vec3& p,
|
||||
float num,
|
||||
uint32_t base_color,
|
||||
int length) const
|
||||
{
|
||||
char s[20];
|
||||
int offset = format_float(s, num);
|
||||
@ -104,6 +104,28 @@ namespace font {
|
||||
x += hori_advance * (length - offset);
|
||||
}
|
||||
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 = {
|
||||
|
@ -37,11 +37,17 @@ namespace font {
|
||||
}
|
||||
}
|
||||
|
||||
void draw_float(ta_parameter_writer& writer,
|
||||
const vec3& p,
|
||||
float num,
|
||||
uint32_t base_color,
|
||||
int length = 0) const;
|
||||
int draw_float(ta_parameter_writer& writer,
|
||||
const vec3& p,
|
||||
float num,
|
||||
uint32_t base_color,
|
||||
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;
|
||||
|
@ -95,14 +95,12 @@ namespace graphics {
|
||||
void draw()
|
||||
{
|
||||
font::ter_u12n.global(writer);
|
||||
font::ter_u12n.draw_glyph(writer, vec3(10, 10, 10), 'a', 0xffffffff);
|
||||
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);
|
||||
//font::ter_u12n.draw_mat4(writer, vec3(10, 22, 10), view_trans, 0xffffffff, 12);
|
||||
|
||||
writer.append<ta_global_parameter::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));
|
||||
|
||||
@ -133,6 +131,8 @@ namespace graphics {
|
||||
0xc5f7c5f7);
|
||||
|
||||
framebuffer::spg_set_mode_640x480_vga();
|
||||
//framebuffer::spg_set_mode_720x480_vga();
|
||||
//framebuffer::init(720, 480,
|
||||
framebuffer::init(640, 480,
|
||||
texture_memory_alloc.framebuffer[0].start);
|
||||
core_param_init(texture_memory_alloc.region_array.start,
|
||||
@ -160,7 +160,10 @@ namespace graphics {
|
||||
view_trans
|
||||
= scale(vec3(s, s, 1))
|
||||
* translate(vec3(0, 0, 10))
|
||||
* rotate_x(pi / 4)
|
||||
* rotate_y(pi / 4)
|
||||
* scale(vec3(-1, -1, 1));
|
||||
view_trans = view_trans * translate(vec3(0, 0, -0.9));
|
||||
}
|
||||
|
||||
void view_transform()
|
||||
@ -186,7 +189,7 @@ namespace graphics {
|
||||
}
|
||||
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