js在游戏行业的应用

一.思路(重要部分)

1.飞机和子弹的构造函数缺一不可

2.考虑飞机,子弹的移动(包括速度和方向)

3.碰撞判断(包括飞机与飞机的碰撞和敌机与子弹的碰撞)

4.通过按钮的开始函数(最重要的函数,包括创建本机,敌机,子弹,控制速度,判断碰撞...)

5.判断子弹和飞机是否移出边界函数

6.在子弹和敌机碰撞之后的血量计算

 

二.注意点和总结点汇总:

1.在不同状态显示不同游戏界面,不同界面之间的切换可以通过控制display:none来完成

注意点:visibility=hidden, opacity=0,display:none 之间的区别:

  1. 空间占据方面:display:none隐藏后不占据额外空间,它会产生回流和重绘,而visibility:hidden和opacity:0元素虽然隐藏了,但它们仍然占据着空间,它们俩只会引起页面重绘。
  2. 子元素继承:display:none不会被子元素继承,父元素都不在了,子元素自然也就不会显示了,visibility:hidden 会被子元素继承,可以通过设置子元素visibility:visible 使子元素显示出来opacity: 0 也会被子元素继承,但是不能通过设置子元素opacity: 0使其重新显示

2.在写js过程中,要注意call,apply和bind之间的区别

三者都可以改变指针的指向,call中的参数为参数列表,apply中的参数是参数数组,bind()的作用与call()和apply()一样,都是可以改变函数运行时上下文,区别是call()和apply()在调用函数之后会立即执行,而bind()方法调用并改变函数运行时上下文后,返回一个新的函数,供我们需要时再调用。

3.构造函数和new

New函数被调用,然后新创建一个对象,并且成了函数的上下文(也就是此时函数内部的this是指向该新创建的对象,这意味着我们可以在构造器函数内部通过this参数初始化值),最后返回该新对象的引用

4.讲究this和prototype之间的区别:

This和prototype之间的区别:

  1. 在于属性访问的顺序;
  2. 占用空间不同,this在开辟的时候就占用了变量和方法的内存

 

三.遇到的问题:

1.对于不规则图形,怎么判断两个飞机碰撞?

在该游戏中,我为了简化,将不规则的飞机形状设置为长方形进行判断

2.在子弹飞出的过程中,子弹发出的位置一直错误,感觉完全没问题,呜呜呜

啊啊啊啊啊,最后终于发现了问题!!!!!!

一定一定要注意!!!!!

top和left:css的left和top属性指的是距最近的一个position属性为relative或者absolute的父级元素的左边或上边的距离,所以当要设置css的top和left的属性时,一定要确保定义position为absolute或者relative;

然鹅我在写代码的过程中完全忘记了这一点(无奈脸)

 

具体实现代码链接:https://pan.baidu.com/s/1nJZb3z_qXR6mPYSiOcybGQ

提取码:kock

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Cesium.js是一个基于WebGL的JavaScript 3D地球可视化引擎,主要用于创建高质量的地球和空间场景。在水利行业,Cesium.js具有以下应用场景: 1. 水文模拟:Cesium.js可以用于水文模拟应用,例如创建水文模型、水文可视化等。 2. 水利工程设计:Cesium.js可以用于水利工程设计应用,例如创建水闸模型、水库模型等。 3. 河流治理:Cesium.js可以用于河流治理应用,例如创建河流模型、水域环境保护等。 4. 水资源管理:Cesium.js可以用于水资源管理应用,例如创建水资源模型、水资源管理系统等。 5. 水利教育:Cesium.js可以用于水利教育应用,例如创建水利教育游戏、水利教育动画等。 Cesium.js可以通过创建高质量的3D地球场景来展示水利行业的各种应用场景,帮助用户更好地理解和掌握水利工程的运行原理和操作方法。同时,Cesium.js还支持多种数据格式和数据源,可以方便地进行数据的导入和处理,满足不同行业的需求。 例如,在水文模拟方面,Cesium.js可以将各种水文数据转换为3D地球场景,包括水文地形、水位、流量、水质等,帮助用户更好地理解水文过程和变化趋势。在水利教育方面,Cesium.js可以创建丰富的游戏和动画效果,帮助学生更好地理解和掌握水利知识。 综上所述,Cesium.js在水利行业应用场景主要包括水文模拟、水利工程设计、河流治理、水资源管理和水利教育等方面,可以为水利行业的设计、演示和操作提供强有力的支持。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值