![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
小项目
文章平均质量分 71
woai3364
热爱技术,喜欢编程,保持初心。
展开
-
java-小游戏之计时任务、双缓冲绘图和移动背景设置
我们所看到的图像是由显示缓冲区和显示器共同完成的,两者是一起的,显示器只负责从显示缓冲区取数据显示。双缓冲原理:我们创建一个自定义缓冲区,将要画的图像先前存入该缓冲区,再将这个自定义缓冲区的数据传入显示缓冲区,这样就避免了你还没绘制完图片,显示器就从显示缓冲区取数据显示图形。不使用双缓冲我们会在窗体看到闪烁,这是因为程序还没来得及运行,显示器就将还没画好图形显示在显示器上了,你所看到的效果可能是一部分一部分地显示出来,造成闪烁。我们的窗体大小是900*900的,m为移动的像素点。我们为啥要用双缓冲绘图呢?原创 2023-03-14 18:23:25 · 331 阅读 · 0 评论 -
小球乱撞游戏
顾名思义,就是获取你需要操作的对象将它“聚焦”,例如:平时你在登陆qq界面时,有个账号输入框和密码输入框,假如你先鼠标点击了电脑桌面的app,这时聚焦点不在qq账号输入框那,你需要用鼠标点击一下(聚焦一下),才能输入。在小球类中,我们实现了小球撞墙反弹功能,在这里我们有设置小球speedX,speedY的关于x,y轴上的速度,只要当球碰撞到边界时,把速度修改为负的就好了。④我们实现小球添加是通过创建一个动态数组,点击一下“添加”就新建一个小球对象,后面画的时候再遍历它。1、用一个线程控制所有的小球对象。原创 2023-03-09 19:06:22 · 186 阅读 · 0 评论 -
多线程——飞机大战
2、接下来我们先设置飞机类,想想你的飞机有啥属性,有啥方法,首先你会想到你飞机得动吧,动的时候还得有速度吧,你的飞机有多大呢,你的飞机是怎么一个飞机(战斗机、直升机),最后可能后续才考虑到:该飞机是否还存活,换句话来说就是说这架飞机被子弹击落了没。飞机移动的,发出移动的子弹其原理就是先前设置好飞机运动规则,然后计算出其属性,再将这些计算出来的属性存入队列中,在线程每大约30ms(自己可以设置)(相当于帧)遍历一次,也就是把那个时间点的图片画出来。原创 2023-02-05 20:21:10 · 375 阅读 · 0 评论