上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 实际完成的游戏画面