`
肉林100
  • 浏览: 14092 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

小弹球项目总结

阅读更多
    对于小弹球这个项目来说,我觉得它的难点与核心在弹球的运动算法上。所以我重点就总结算法。我刚开始的时候觉得不就是一个弹球吗,那太简单了。但是随着项目的不断深入,我发现它其实并不简单。开始的时候,我的目标是让小弹球能够撞到一个边界时能够反弹,这一步轻松过关。第二个目标就是能让弹球沿着逆时针弹,这一步在上一步的基础上也没花太多时间。不过,在这一步过后,问题时频频出现。小球弹着弹着就消失了,或者是往顺时针方向弹,自然小球不是不动了,就是消失了。然后,为了解决这个问题,我试这将小球的运动分为两类:逆时针与顺时针。但后来发现这样搞相当繁杂,自己也被搞晕了。所以我就想:能不能将小弹球的运动统一到一个规律?当然,我 made it!
算法的实现:将小球的运动分为四个方向:左上,左下,右上,右下。
            给四个边界赋值:右1,下2,左3,上4。(当小球碰到边界,move函数会返回边界相应的值)
            这样,当小球往“左下”运动时,其将只可能撞上下边界(move函数返回2)与左边界(move函数返回3)。当如果返回2时,说明小球往左下方运动是撞到了下边界,自然小球应该往左上方运动撞向左边界,就应该调用往左上方的move方法;当如果返回3时,说明小球往左下方运动是撞到了左边界,自然小球应该往右下方运动撞向下边界,就应该调用往左上方的move方法。一次类推,我们可以得到别的运动情况,而这些情况包含了所有小球运动的可能,从而实现了算法的统一,实现了弹球。
   
    另外,这项目里面使用了到了线程,所以改一下参数就可以有好多个小弹球弹。。。
     不过,我做的还比较简陋。只是一个弹过去弹过来的东东。我其实在这个项目中还有疑问和问题没有解决:小弹球有时弹到角落时(两边界交界处),就直接飞了出去,没有回弹;有时屏幕上会出现小球的“轨迹”。
     我认为,这个小弹球需要提升:能往任意方向和角度弹(我固定为45度)。
分享到:
评论

相关推荐

    射击弹球小游戏项目总结。学到了很多

    在本项目“射击弹球小游戏”中,开发者通过实践学习并掌握了多项重要的IT技术与编程概念,这将有助于深入理解游戏开发的过程以及软件工程的基本原理。以下是对该项目中涉及的知识点的详细阐述: 1. **游戏引擎基础*...

    弹球游戏总结

    【标题】:“弹球游戏总结” 在编程世界中,创建一个弹球游戏是学习物理模拟、碰撞检测和游戏开发基础的常见练习。这篇博客“弹球游戏总结”可能涵盖了从设计概念到实际代码实现的全过程,旨在帮助读者理解游戏开发...

    C#2005小弹球 桌面弹球 圆形窗体

    总结一下,"C#2005小弹球 桌面弹球 圆形窗体"项目展示了C#编程语言的强大功能,包括自定义窗体形状、处理鼠标事件、实现基本动画和碰撞检测。通过分析和学习这个项目,开发者不仅可以提升C#技能,还能掌握创建交互式...

    桌面弹球游戏代码以及个人总结

    【桌面弹球游戏代码及个人总结】 在编程领域,创建一款桌面弹球游戏是一个常见的学习项目,它能够帮助开发者理解游戏的基本机制、图形用户界面(GUI)和对象导向编程的概念。在这个项目中,作者使用Java语言进行...

    课程设计,弹球小游戏

    总结,弹球小游戏虽然看似简单,但它涵盖的编程知识广泛,包括图形界面设计、游戏逻辑实现、音效处理、异常处理等多个方面。通过完成这样一个项目,学生可以巩固基础知识,提升实际编程技能,并体验到游戏开发的乐趣...

    java 小游戏 小球弹球

    总结起来,"java小游戏弹球"项目涵盖了以下Java知识点: 1. Java Swing库的使用,创建GUI窗口。 2. 内部类的概念和事件监听机制。 3. 绘图API的运用,进行图形绘制和动画效果。 4. 对象的属性和行为,如小球类的设计...

    目标弹球小游戏(Android)

    总结,"目标弹球"小游戏是Android游戏开发的一个实例,它融合了Android UI设计、物理引擎应用、用户交互处理、资源管理和游戏逻辑等多个关键知识点,对于想要学习Android游戏开发的程序员来说,这是一个很好的学习...

    vb.net弹球小游戏

    总结来说,VB.NET弹球小游戏的开发涵盖了基础的编程概念,如事件处理、对象交互,以及一些高级的编程技术,如图形渲染和物理模拟。通过这个项目,开发者不仅可以提升VB.NET编程技能,还能对游戏开发有更深入的理解。

    C#简单弹球游戏源码

    总结起来,C#弹球游戏源码提供了一个学习C# GUI编程和游戏开发的好例子。通过对游戏的逐层解析,你可以理解控件的使用、图形绘制、事件处理、碰撞检测等核心概念。尽管源码本身没有包含计分系统,但这恰好留给我们一...

    弹球游戏分步解析(五)——阶段性总结

    在本篇【弹球游戏分步解析(五)——阶段性总结】中,我们将对一个基于Java实现的弹球游戏进行深入探讨。这个弹球游戏的源代码提供了丰富的学习材料,帮助开发者了解游戏开发的基本概念和技术。博文链接为,可以在...

    html5重力弹球附带js文件

    总结来说,"html5重力弹球附带js文件"项目是一个展示HTML5 Canvas和JavaScript能力的实例,它利用这两项技术实现了动态的重力弹球游戏。通过学习和理解这个项目,开发者可以提升对HTML5 Canvas绘图、JavaScript编程...

    DirectX编程实现弹球实例

    总结来说,通过"DirectX编程实现弹球实例"的学习,开发者不仅可以掌握DirectX的基本使用,还能深入了解游戏开发中的图形渲染、物理模拟、用户输入处理等核心概念。这将为后续更复杂的游戏开发打下坚实的基础。在实践...

    多线程实例:桌面智能弹球小游戏

    标题中的“多线程实例:桌面智能弹球小游戏”表明这是一个使用多线程技术开发的桌面应用程序,旨在提供一个互动的弹球游戏体验。在这个游戏中,小球具有一定的智能性,能够根据规则自行决策,而不仅仅是简单的物理...

    android 弹球效果

    总结起来,实现Android的弹球效果需要结合动画、物理模拟、碰撞检测等多个方面知识,通过合理的编程技巧和优化手段,可以创建出既美观又流畅的弹球游戏或交互元素。在实际项目中,可以参考现有的开源项目,如使用Box...

    弹球游戏_verilog_nexys4.rar

    总结来说,“弹球游戏_verilog_nexys4.rar”项目是一个利用Verilog语言在Xilinx FPGA开发板上实现的弹球游戏,通过硬件描述语言的运用,展示了数字逻辑设计的实用性和趣味性。无论是对于初学者还是专业开发者,这个...

    简陋android弹球游戏

    总结来说,这个项目是一个初级的Android弹球游戏,由学生开发作为学习任务。它使用了Android SDK和Java编程语言,目前处于原型阶段,期待进一步完善。游戏可能包含了一些基本的物理模拟,例如弹球的碰撞检测和运动...

    简单Windows弹球程序

    总结来说,这个“简单Windows弹球程序”的开发涵盖了Windows应用程序的基本架构,图形绘制,物理模拟,事件处理,以及软件工程的一些实践,对于初学者来说是一个很好的学习项目。通过这个项目,开发者可以深入理解...

    JAVA弹球程序

    在每次更新弹球位置后,程序可能会使用`Thread.sleep()`方法暂停一小段时间,这样可以创造出平滑的视觉效果。然而,需要注意的是,过度的延迟可能会导致UI卡顿,因此需要找到一个合适的平衡点。 总结一下,【JAVA...

    弹球Java程序

    通过上述分析,我们可以看出这是一个较为典型的Java入门级项目,涉及到了线程控制、图形界面编程等多个方面的知识。对于初学者来说,这是一个很好的实践机会,不仅可以加深对Java语言本身的理解,还能提高解决实际...

    java 写的弹球游戏+满天星星

    总结来说,这个“Java写的弹球游戏+满天星星”项目涵盖了Java编程、GUI设计、物理模拟、动画制作、用户交互等多个重要知识点。通过实际操作,开发者可以深入理解Java语言的特性,同时提升游戏开发技能。

Global site tag (gtag.js) - Google Analytics