创客们的超级开源制作项目
上QQ阅读APP看书,第一时间看更新

2.3 游戏画面的绘制

设计好角色后,就可以用简单的几何图形来建模了。比如,首先根据画好的怪兽图形测量出每个定点的坐标,实现这个的方法很多,比如可以借助2D或3D软件直接生成,或者干脆在纸上画上格子数一下。由于TVout库提供了绘制直线和圆的函数,所以可以方便地直接调用。其中enmey_pos是控制怪兽移动的变量。

    TV.draw_line(enmey_pos,74, enmey_
    pos+15, 74, WHITE);
    TV.draw_line(enmey_pos+15,74, enmey_
    pos+15, 94, WHITE);
    TV.draw_line(enmey_pos,94, enmey_
    pos+15, 94, WHITE);
    TV.draw_line(enmey_pos,90, enmey_
    pos,94, WHITE);
    TV.draw_line(enmey_pos,90, enmey_
    pos+10, 87, WHITE);
    TV.draw_line(enmey_pos,84, enmey_
    pos+10, 87, WHITE);
    TV.draw_line(enmey_pos,74, enmey_
    pos,84, WHITE);
    TV.draw_circle(enmey_pos+5,79,2,
    WHITE);
    TV.draw_line(enmey_pos+3,74, enmey_
    pos+3, 68, WHITE);
    TV.draw_line(enmey_pos+6,74, enmey_
    pos+6, 68, WHITE);
    TV.draw_line(enmey_pos+9,74, enmey_
    pos+9, 68, WHITE);
    TV.draw_line(enmey_pos+12,74, enmey_
    pos+12, 68, WHITE);

在绘制角色时要注意图像缓冲区不要设置得太大,否则会导致内存溢出。经过几次尝试,我设置的是120像素×96像素大小。代码如下:

    TV.begin(PAL,120,96);

最后实际完成的游戏画面如图2.5所示。

图2.5 实际完成的游戏画面