2 小时开发《点球射门游戏》,动画演示思路(上),代码已开源
勇哥来 INFOQ 了、关注一下
学习小游戏开发
学习大型数据库管理软件开发
学习 IDEA 插件开发
学习微服务技术开发
还有更多内容,请期待~
~~~ 记得点赞、关注哦 ~~~
唠两句
最近被疫情关在家,时间多运动少,真的很无聊呀!也许是天意为之,居然来世界杯了,虽然这届世界杯很「冷」,但是多少还是为无聊的我们增加了一些无聊的趣事,比如勇哥在等世界杯开幕式的过程中,就无聊手写了一个 Java 版本的【点球射门游戏】,这几天把球瘾过了,今天有点时间,把这个游戏分享给大家,希望大家喜欢!
游戏有那些值得大家学习【重点】
球的瞄准轨迹线怎么实现【见下图 1】?这个在 QQ 桌球、王者荣耀、愤怒的小鸟等游戏中都用到了!
怎么画三维立体的图片【见下图 2】?
怎么实现动画【见下图 3】?
游戏界面实现思路 &代码
界面术语定义
界面分为游戏区和计分区,其中游戏区又分为:
观众区
球门区
游戏元素
射门区
观众区绘制思路 &代码
观众区用 swing 纯代码是可以绘制的,绘制的思路如下:
1、绘制一个背景矩形框
2、绘制第 2 排观众
绘制一个圆和椭圆合并成一个观众样式
绘制一个小一点的圆和椭圆合并成一个观众样式
组合并放置到第 2 排位置,并铺满整排
3、绘制第 1 排观众【与上一步一致,注意换观众的颜色】
绘制一个圆和椭圆合并成一个观众样式
绘制一个小一点的圆和椭圆合并成一个观众样式
组合并放置到第 1 排位置,并铺满整排
4、绘制两个不同颜色的矩形框,并摆放最前面遮挡第 1 排观众的‘脚’
5、绘制几根黑线,遮挡广告边缘
为方便大家理解,勇哥这次给大家上动画,赞一个吧:
参考实现代码:
草坪绘制思路 &代码
草坪区用 swing 纯代码是可以绘制的,绘制的思路如下:
1、绘制两种不同颜色的矩形
2、用两种不用颜色的矩形铺满整个屏幕
3、调整矩形的高度是从上下一次递增,呈现立体视觉
上动画,赞一个吧:
参考实现代码:
禁区三维绘制思路 &代码
禁区用 swing 纯代码是可以绘制的,绘制的思路如下:
1、绘制一个空心的圆角矩形
2、使用变换技术,让圆角矩形具有三维立体效果
3、调整禁区框的位置
4、用一个绿色矩形遮挡多于的禁区部分
上动画,赞一个吧:
参考实现代码:
注意代码实现的时候,需要绘制两个圆角矩形合并,并擦除中间不要的部分,这部分有点难,如果不理解可以留言,我给你弄视频说明。
球门球网三维绘制思路 &代码
球门球网这个是最难的,难在用平面技术画三维效果,当然 swing 也是可以的,绘制的思路如下:
1、绘制一个圆角矩形,作为球门框
2、绘制两条弯折折线,作为球门内门柱
3、绘制多条水平的三线段折线,作为球门水平球门线
4、绘制多条垂直的二线段折线,作为球门垂直球门线
这个比较复杂,必须上动画,必须赞一个:
参考实现代码:
射门区绘制思路 &代码
射门区用 swing 纯代码是可以绘制的,绘制的思路如下:
1、绘制两种不同颜色的扇形
2、叠加两个扇形
3、配上高逼格文字
简单吧,也必上动画,也必须赞一个:
参考实现代码:
计分区绘制思路 &代码
计分区区用 swing 纯代码是可以绘制的,绘制的思路如下:
1、绘制两种不同颜色的矩形
2、用两种不用颜色的矩形铺满整个屏幕
3、调整矩形的高度是从上下一次递增,呈现立体视觉
上动画,赞一个吧:
参考实现代码:
守门员 &球绘制思路 &代码
守门员 &球绘 &石头这里就直接用图片了,绘制的思路如下:
1、加载图片
2、把图片摆放到对应位置
上动画,赞一个吧:
参考实现代码:
版权声明: 本文为 InfoQ 作者【非喵鱼】的原创文章。
原文链接:【http://xie.infoq.cn/article/5de7998dfaa9b031b3e33d0f3】。文章转载请联系作者。
评论