add second demo
This commit is contained in:
33
src/main.jai
33
src/main.jai
@@ -21,11 +21,12 @@ main :: () {
|
|||||||
|
|
||||||
fill_entire_screen(screen, BLANK_PIXEL);
|
fill_entire_screen(screen, BLANK_PIXEL);
|
||||||
|
|
||||||
|
// cool_demo_2(screen, offset, theta);
|
||||||
cool_demo_1(screen, offset, theta);
|
cool_demo_1(screen, offset, theta);
|
||||||
|
|
||||||
annoying_color_effect(screen, offset);
|
annoying_color_effect(screen, offset);
|
||||||
|
|
||||||
draw_text(screen, .{10, 10}, "[ TEXT-BASED RENDERING DEMO ]");
|
draw_text(screen, .{10, 40}, "[ TEXT-BASED RENDERING DEMO ]");
|
||||||
|
|
||||||
swap_buffer(screen);
|
swap_buffer(screen);
|
||||||
sleep_milliseconds(20);
|
sleep_milliseconds(20);
|
||||||
@@ -55,20 +56,19 @@ cool_demo_1 :: (screen: *Screen, offset: s64, theta: s64) {
|
|||||||
translate(.{50, 20}, *t1);
|
translate(.{50, 20}, *t1);
|
||||||
rotate(theta, get_triangle_centroid(t1), *t1);
|
rotate(theta, get_triangle_centroid(t1), *t1);
|
||||||
|
|
||||||
draw_triangle(screen, t1, #char "%");
|
draw_triangle(screen, t1, #char ")");
|
||||||
|
|
||||||
t2 := t1;
|
t2 := t1;
|
||||||
|
|
||||||
scale(.{0.2, 0.2}, *t1);
|
scale(.{0.2, 0.2}, *t1);
|
||||||
|
|
||||||
draw_triangle(screen, t1, #char "%");
|
draw_triangle(screen, t1, #char "%");
|
||||||
|
|
||||||
// draw centroid lines
|
// draw centroid lines
|
||||||
// draw_line(screen, get_triangle_centroid(t1), get_triangle_centroid(t2), #char ".");
|
draw_line(screen, get_triangle_centroid(t1), get_triangle_centroid(t2), #char ".");
|
||||||
|
|
||||||
// draw_line(screen, get_triangle_centroid(t1), t1.p1, #char ".");
|
// draw_line(screen, get_triangle_centroid(t1), t1.p1, #char ".");
|
||||||
// draw_line(screen, get_triangle_centroid(t1), t1.p2, #char ".");
|
// draw_line(screen, get_triangle_centroid(t1), t1.p2, #char ".");
|
||||||
// draw_line(screen, get_triangle_centroid(t1), t1.p3, #char ".");
|
// draw_line(screen, get_triangle_centroid(t1), t1.p3, #char ".");18
|
||||||
|
|
||||||
// draw_line(screen, get_triangle_centroid(t2), t2.p1, #char ".");
|
// draw_line(screen, get_triangle_centroid(t2), t2.p1, #char ".");
|
||||||
// draw_line(screen, get_triangle_centroid(t2), t2.p2, #char ".");
|
// draw_line(screen, get_triangle_centroid(t2), t2.p2, #char ".");
|
||||||
// draw_line(screen, get_triangle_centroid(t2), t2.p3, #char ".");
|
// draw_line(screen, get_triangle_centroid(t2), t2.p3, #char ".");
|
||||||
@@ -82,13 +82,26 @@ cool_demo_1 :: (screen: *Screen, offset: s64, theta: s64) {
|
|||||||
|
|
||||||
cool_demo_2 :: (screen: *Screen, offset: s64, theta: s64) {
|
cool_demo_2 :: (screen: *Screen, offset: s64, theta: s64) {
|
||||||
q1 := make_quad_from_rect(
|
q1 := make_quad_from_rect(
|
||||||
.{100, 10},
|
.{50, 10},
|
||||||
.{110, 20}
|
.{60, 20}
|
||||||
);
|
);
|
||||||
|
|
||||||
rotate(-theta, .{100, 10}, *q1);
|
rotate(-theta * 4, .{55, 15}, *q1);
|
||||||
|
translate(.{-30, 0}, *q1);
|
||||||
|
draw_quad(screen, q1);
|
||||||
|
|
||||||
draw_quad(screen, q1, #char "-");
|
q2 := q1;
|
||||||
|
|
||||||
|
scale(.{3, 3}, *q1);
|
||||||
|
// rotate(theta, .{60, 15}, *q1);
|
||||||
|
|
||||||
|
rotate(theta, .{60, 15}, *q1);
|
||||||
|
draw_quad(screen, q1);
|
||||||
|
|
||||||
|
draw_line(screen, q1.p1, q2.p1, #char ".");
|
||||||
|
draw_line(screen, q1.p2, q2.p2, #char ".");
|
||||||
|
draw_line(screen, q1.p3, q2.p3, #char ".");
|
||||||
|
draw_line(screen, q1.p4, q2.p4, #char ".");
|
||||||
}
|
}
|
||||||
|
|
||||||
#import "Console_Render";
|
#import "Console_Render";
|
||||||
|
|||||||
Reference in New Issue
Block a user