easeljs如何使用createjs来编写html5游戏
easeljs 时间:2021-07-02 阅读:(
)
animate cc 用什么语言
的语言可以用AS3,EaselJS,HTML5
这里说下,如果你是HTML5,需要不断的优化,测试,至少要测试5-6个浏览器,并且兼容代码,这个工作量可能是制作的10几倍,所以并非完全按照原始代码,而是利用了引擎平台,其中JS是EaselJS引擎代码,这个你不能直接写JS而是要看EaselJS支持哪些。
同样HTML5是canvas标签内的,超出的API可能不支持。
相对AS3的话还是和以前一样,不过AS3其实就是ISO标准的JS。
所以ADOBE实际是把常用的API已经给你做好,这样可以减少工作量。
startup.js是什么
一个javascript文件...
里面有一些网页文件需要的代码..
-----
你是用户么...如果是用户。
javasciprt是安全的。
javasciprt没有访问操作系统的权限。
所以不能操作文件啊,删除文件啊,改注册表之类的。
而且浏览器安全性也越来越好,像常用操作如“弹出窗口”,也开始被限制。
如果你是服务器端,编写网站滴.. 小弟不才 = = ||| 暂时不了解。
如何使用createjs来编写html5游戏
createJs的由来,基础什么的就不说了,就直接说createJs的用法吧。
首先到createJs官网下载,createJs分成easelJs(图形动画)、preloadJs(文件加载)、soundJs(音频控制)以及tweenJs(补间动画)四部分,大家下载的时候,建议下载两个文件,一个是压缩版文件,用于项目中的引用,再下载个源码文件,用于查看用法、API、demo等。
因为楼主目前只用了easelJs和preloadJs,所以暂时就只说这两个,其实就这两个已经非常够用了。
接下来开始分析代码:
首先引入js文件
<script src="easeljs-0.7.1.min.js"></script>
<script src="preloadjs-0.4.1.min.js"></script>
然后进行舞台初始化操作:
function init(){
stage = new createjs.Stage("cas");
C_W = stage.canvas.width;
C_H = stage.canvas.height;
var manifest = [
{src:"image/man.png" , id:"man"},
{src:"image/ground.png" , id:"ground"},
{src:"image/bg.png" , id:"bg"},
{src:"image/high.jpg" , id:"high"},
{src:"image/coins.png" , id:"coin"}
]
loader = new createjs.LoadQueue(false);
loader.addEventListener(&plete" , handleComplete);
loader.loadManifest(manifest);
drawLoading();
}
上面就用到了preloadJs中的方法,实例化一个loader,把需要加载的图片文件放在manifest里面,进行加载,加载完成后调用回调handleCompelete函数:
function handleComplete(){ //当图片素材load完后执行该方法
var manImage = loader.getResult("man"),
lowground = loader.getResult("ground"),
highground = loader.getResult("high"),
bgImage = loader.getResult("bg"),
coins = loader.getResult("coin");
sky = new createjs.Shape();
sky.graphics.bf(bgImage).drawRect(0,0,C_W,C_H);
sky.setTransform(0, 0, 1 , C_H/bgImage.height);
stage.addChild(sky);
man = createMan(200,326,manImage);
//该框为判定角色的判定区域
kuang = new createjs.Shape();
kuang.graphics.beginStroke("rgba(255,0,0,0.5)").drawRect(0 , 0 , man.size().w , man.picsize().h*1.5);
// stage.addChild(kuang);
mapHandle(lowground , highground , coins);
createjs.Ticker.timingMode = createjs.Ticker.RAF;//设置循环方法,可以是requestAnimationFrame或者是setTimeout
createjs.Ticker.setFPS(30);//舞台帧率控制
createjs.Ticker.addEventListener("tick", tick);//绑定舞台每一帧的逻辑发生函数
window.addEventListener("keydown" , function(event){
event = event||window.event;
if(event.keyCode===32&&man.jumpNum<man.jumpMax){
man.jump();
}
})
}
获得加载完成后端的图片数据就直接用loader.getResult就可以获取了,跑酷游戏需要一个背景,所以,我们实例化一个sky,然后进行位图绘制,bf方法是beginBitmapFill的缩写,该方法就是开始绘制位图,后面的drawRect是位图的绘制区域,区域当然是整个画布啦,所以就是drawRect(0,0,C_W,C_H)。
实例化出来sky后就直接添加到舞台stage里面就行了。
接下来是实例化一个角色,createMan方法后面有说,是自己封装的。
然后进行舞台循环设置,上面有注释了,就不说了。
关于Linode,这是一家运营超过18年的VPS云主机商家,产品支持随时删除(按小时计费),可选包括美国、英国、新加坡、日本、印度、加拿大、德国等全球十多个数据中心,最低每月费用5美元($0.0075/小时)起。目前,注册Linode的新用户添加付款方式后可以获得100美元赠送,有效期为60天,让更多新朋友可以体验Linode的产品和服务。Linode的云主机产品分为几类,下面分别列出几款套餐配置...
hosteons当前对美国洛杉矶、达拉斯、纽约数据中心的VPS进行特别的促销活动:(1)免费从1Gbps升级到10Gbps带宽,(2)Free Blesta License授权,(3)Windows server 2019授权,要求从2G内存起,而且是年付。 官方网站:https://www.hosteons.com 使用优惠码:zhujicepingEDDB10G,可以获得: 免费升级10...
GigsGigsCloud商家在之前介绍的还是比较多的,因为之前我一直有几台机器在使用,只是最近几年网站都陆续转型删除掉不少的网站和闲置域名,包括今年也都减少网站开始转型自媒体方向。GigsGigsCloud 商家产品还是比较有特色的,有提供香港、新加坡等亚洲机房的云服务器、VPS和独立服务器等。第一、新春优惠活动优惠码:CNY2022-15OFF截止到正月初二,我们可以使用上述优惠码在购买指定G...
easeljs为你推荐
wmiprvsewmiprvse.exe能禁用吗settimermfc里SetTimer和Sleep有什么区别settimervc++6.0 settimer函数是怎么用的啊,能给个例子在讲解一下行么知识库管理系统急求一款电子文档管理系统,有好用的推荐下~?foxmail邮箱注册如何注册FOXMAIL邮箱的帐号啊?qq号查询现成的qq号和密码查询rdlregardless是什么意思jqlJQL JINQILIN注册过商标吗?还有哪些分类可以注册?vipjrvipjr英语怎么样?靠谱吗?问卷星登陆你好,如果之前用微信登录了问卷星小程序,以后每次回答都不需要微信登录了吗?回答了会被知道个人信息吗
vps是什么意思 美国加州vps godaddy域名解析 香港托管 美国主机论坛 http500内部服务器错误 三拼域名 免费个人空间申请 183是联通还是移动 佛山高防服务器 网络空间租赁 免费高速空间 爱奇艺vip免费领取 web服务器安全 申请网页 国外ip加速器 网购分享 备案空间 阿里云邮箱登陆 广东主机托管 更多