网站首页 > 网页设计教程 > Javascript教程 > JS实现2D桌球小游戏

JS实现2D桌球小游戏

  • 作者:互联网
  • 时间:2009-10-27 18:42:56

DEMO: http://cnwander.com/demo/billiards/
原文地址:http://cnwander.com/blog/?p=11

JS小游戏系列:
[JS小游戏]贪吃蛇+详细注释

先贴上代码:

http://ww***.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">http://ww***.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
http://ww***.org/1999/xhtml">http://ww***.org/1999/xhtml">


台球  by CNwander





中国人民烎起来!60周年



 



 

   

       

       

         

       

   



虽厚颜冠名桌球,其实与真实桌球还相差甚远,还有太多需要改进的地方。
具体待解决的问题:

  1. 由于浏览器上刷新频率不可能太高,可能当检测两球距离时,两球已经重叠了大部分,甚至完全越过。
    完全越过的情况先不考虑,重叠部分如果还原到精确的相切状态,运行非常缓慢,所以我只采用了计算量较少的近似值,具体问题主要体现在开球时,多球碰撞时有些诡异。
    (如果哪位有好的优化计算方法,可以拿出来与wander分享,那wander真的感激不尽)
  2. 球自身滚动与桌面摩擦力问题。如正中击球的瞬间,母球滑行状态的摩擦力会大于向前滚动时的摩擦力,小于缩杆时摩擦力等等。这个问题好解决,只是刚开始没考虑进去,之后也没添加了,具体体现在两球正撞后,撞击球将完全静止,这是不正确的。
  3. 能量损耗问题,无论与边沿碰撞还是球与球相撞,都是直接减去一个固定值,这肯定是存在很大问题的。

其它肯定还会有很多问题,担心假期把心玩油了,回头没心思继续,干脆一气呵成,赶得有些匆忙,问题回头再慢慢解决吧,先发上来,对这块有兴趣的同学一块儿探讨探讨。

大学数学基本是过场,高中的物理数学与忘得所剩无几,真正做东西才发现自己这块太薄弱,希望在这方面经验比较丰富的同学不吝赐教。