createjs参数,createjs教程

本文目录一览:

如何使用Createjs来编写HTML5游戏EaselJS简介

CreateJS

CreateJS 是一套可以构建丰富交互体验的 HTML5 游戏的开源工具包,旨在降低 HTML5 项目的开发难度和成本,让开发者以熟悉的方式打造更具现代感的网络交互体验。

CreateJS 中包含:

EaselJS:用于 Sprites、动画、向量和位图的绘制,创建 HTML5 Canvas 上的交互体验(包含多点触控),同时提供 Flash 中的“显示列表”功能。

TweenJS:一个简单的用于制作类似 Flash 中“补间动画”的引擎,可生成数字或非数字的连续变化效果。

SoundJS:一个音频播放引擎,能够根据浏览器性能选择音频播放方式。将音频文件作为模块,可随时加载和卸载。

PrloadJS:帮助你简化网站资源预加载工作,无论加载内容是图形、视频、声音、JS、数据……

以上的Createjs介绍来自百度,不过通过介绍可以知道,虽然CreateJS看起来复杂,不过四个部分各有作用,其中最主要的就是EaselJS,其余三项不过是为他服务。

一.如何使用EaselJS

首先到 下载最新版的EaselJS,下载解压后可以在lib文件夹中找到easeljs-0.8.1.min.js,同时在压缩包中可以找到一个examples和tutorials目录,这两个目录中包含一些入门介绍和例子,有英语基础可以看看,DOC文件夹中包含easeljs所有的api。(同理,可以得到createjs包含的其他三项,其目录结构都与EaselJS相似)。

1.得到easeljs-0.8.1.min.js后,新建一个HTML5文件并导入之:

[html] view plain copy

script src=”easeljs-0.8.1.min.js”/script

2.入口函数和创建canvas标签

[html] view plain copy

body onload=”init();”

canvas id=”game” width=”1000″ height=”700″ style=”background-color: white”/canvas

/body

3.编写自己的javascript代码,在函数init()中首先应该使用HTML中的canvas标签来创建一个Stage,createjs中用到的所有元素,都是添加在这个stage当中的,添加后调用stage.update()方法即可使得添加的元素显示在页面上。在创建Stage时,可以直接使用Canvas的id来创建,也可以调用document.getElementById(“game”),选取canvas来创建,没有区别。

[javascript] view plain copy

script

function init(){

var stage = new createjs.Stage(“game”);

…….

stage.update();

}

/script

二.使用EaselJS创建图形和文字

最简单的游戏都是由文字和图形组成,使用EaselJS添加文字和图形非常的简单。

1.添加文字

[html] view plain copy

var txt = new createjs.Text(“HELLO”,”20px Times”,”#000″);

Createjs中所有的元素都通过调用new createjs.XXXXX来创建,Text包含三个参数分别是显示的字符,字体及大小,最后是颜色。当然在创建完成后可以随意改变txt的x,y坐标和对其,居中以及内容等等的属性。例如:

[html] view plain copy

txt.x = 100;

txt.y = 100;

txt.text = “hello, world!”

完成后记得一定要把新创建的txt添加到stage中才能正常显示

easeljs的drawrect的高度参数怎么会翻倍?

canvas id=”gameview” width=”400″ height=”400″

设置一下canvas的width和height,如果没有设置,则默认是width:300px,height:150px.

此时如果你又用css规定了canvas的宽度和高度的样式,那就会产生这种不想出现的缩放效果。

可以参考:

HTML5动画框架easeljs中setFPS函数

setFPS、getFPS是EaselJS中Ticker类用于设置和获取帧频的函数。

EaselJS中Ticker类动画机制:

1、 逐帧动画

逐帧动画,把动画(例如人物动作)进行分解,然后绘制出连续的、具有代表性的动作,连续播放形成动画,逐帧动画适用于复杂的不连续的动画。

        实现逐帧动画主要需要两个东西,动作关键帧和动起来的机制。

        “动画”机制: 使动画动起来的机制,这里使用EaselJS的一个类Ticker

createjs.Ticker.addEventListener(“tick”, tick);  

function tick(evt) {  

    //some code   

}

Ticker的几个关键方法,setFPS、getFPS设置和获取帧频,setInterval、getInterval设置和获取时间间隔,setPaused、getPaused设置和获取暂停等,这些都是静态方法。

createJS上的逐帧动画示例:

!DOCTYPE html

html lang=”en”

head

        meta charset=”UTF-8″

        meta author=”pingfan” content=”creatJSGame”

        title玩转createJS游戏/title

        link rel=”stylesheet” href=”../css/game.css”

/head

body

        canvas id=’canvas’ width=”960″ height=”400″浏览器不支持canvas,请使用现代浏览器。/canvas

        script src=”/script

        script

                var  stage=new createjs.Stage(“canvas”),

                     container=new createjs.Container(),

                     // 定义SpriteSheet 参数

                     data={

                                “animations”:{

                                        “run”: [0, 25, “jump”],

                                        //start,end,next,speed开始帧,结束帧,下一个动作,运行速度

                                        “jump”: [26, 63, “run”,1]

                                },

                             “images”: [“”],

                             “frames”:{

                                     //单个帧的高度,宽度,就是png图片里面那么多个帧一个帧的大小

                                        “height”: 292.5,

                                        “width”:165.75,

                                        //相对于原始偏移的位置

                                        “regX”: 0,

                                        “regY”: 0,

                                        //帧数

                                        “count”: 64

                                }

                     };

                //实例精灵动画集

                var move = new createjs.SpriteSheet(data);

                //SpriteSheet类设置帧和动画,里面的run为开始的动画

                var grant = new createjs.Sprite(move,”run”);

                        //设置在舞台中的位置

                         grant.x=360;

                         grant.y=100;

                // 把动画放到舞台上,创建一个间隔事件侦听,进行动画  

                container.addChild(grant);

                stage.addChild(container);

                createjs.Ticker.setFPS(60);        

                createjs.Ticker.addEventListener(“tick”,stage);

                stage.update();    

        /script        

/body

/html

2、补间动画

        补间动画,指我们给定动作的初始状态和结束状态,然后动画系统(例如动画软件)自动补齐中间状态,从而形成动画,补间动画适用于物体的移动、状态的改变等简单的动画。

        补间动画实例,让刚刚那个原地跑步的人,向前方跑动,单击时表示跳起:

!DOCTYPE html

html lang=”en”

head

        meta charset=”UTF-8″

        meta author=”pingfan” content=”creatJSGame”

        title玩转createJS游戏/title

        link rel=”stylesheet” href=”../css/game.css”

/head

body

        canvas id=’canvas’ width=”960″ height=”400″浏览器不支持canvas,请使用现代浏览器。/canvas

        button id=’btn’暂停pause/button

        script src=”/script

        script

                var  stage=new createjs.Stage(“canvas”),

                     container=new createjs.Container(),

                     // 定义SpriteSheet 参数

                     data={

                                “animations”:{

                                        “run”: [0, 25, “run”,1.5],

                                        //start,end,next,speed开始帧,结束帧,下一个动作,运行速度

                                        “jump”: [26, 63, “run”,1.5]

                                },

                             “images”: [“../img/runningGrant.png”],

                             “frames”:{

                                     //单个帧的高度,宽度,就是png图片里面那么多个帧一个帧的大小

                                        “height”: 292.5,

                                        “width”:165.75,

                                        //相对于原始偏移的位置

                                        “regX”: 0,

                                        “regY”: 0,

                                        //帧数

                                        “count”: 64

                                }

                     };

                //实例精灵动画集

                var move = new createjs.SpriteSheet(data);

                //SpriteSheet类设置帧和动画,里面的run为开始的动画

                var grant = new createjs.Sprite(move,”run”);

                        //设置在舞台中的位置

                         grant.x=20;

                         grant.y=22;

                // 把动画放到舞台上,创建一个间隔事件侦听,进行动画  

                container.addChild(grant);

                stage.addChild(container);

                createjs.Ticker.setFPS(60);

                createjs.Ticker.addEventListener(“tick”,tick);

                //speed用来做加速度

                var speed=1;

                function tick(){

                        if(!createjs.Ticker.getPaused()){

                                grant.x+=3*speed;

                                stage.update();

                                speed+=.01;

                                (grant.xstage.canvas.width)  (grant.x=0,speed=1)

                        }

                }

                //侦听鼠标事件

                stage.addEventListener(“stagemousedown”,handleClick);

                function handleClick(){

                                //alert(11);

                                grant.gotoAndPlay(“jump”);

                }

                //设置按钮暂停

                var btn=document.getElementById(“btn”);

                btn.addEventListener(“click”,toggleMove,false);

                function toggleMove(){

                        //        grant.gotoAndStop();

                        //其实实现暂停和运动就是false和true切换

                        var paused = !createjs.Ticker.getPaused();

                        createjs.Ticker.setPaused(paused);

                        btn.value=”暂停pause” ? “运动play” : “暂停pause”;

                }

                stage.update();    

        /script        

/body

/html

createjs.shape.call什么意思

call方法的第一个参数定义了this关键字在被调用方法的执行上下文中指向和对象。

每个JavaScript的代码执行上下文都提供了this关键字

而this理论上是你当前所操作的js对象。

function Shape() { this.x = 0; this.y = 0; }

function Circle() { this.radius = 0;

Shape.call(this); }

最后一行代码Shape.call(this)调用了Shape构造函数并改变了当Circle构造函数被调用时指向this的this值。

啥意思?

var c = new Circle();

新建一个对象。这行代码调用了Circle构造函数,它首先在c上绑定了一个变量radius。此时的this指向的是c。

我们接着调用Shape构造函数,然后将Shape中的this值指向当前在Circle中的this值,也就是c。Shape构造函数将x和y绑定到了当前的this上,也就是说,c现在拥有值为0的x和y属性。

如何用JS写一个chrome插件来搜索现成的网页内容并替换

input type=”button” onclick=”createjs()”/

function createjs()

{

var fso,f1

fso=new ActiveXObject(“Scripting.FileSystemObject”); 

f1=fso.CreateTextFile(“e:\\js.js”,true); //路径自行定义,也可以能过参数

f1.WriteLine(“js代码”); 

f1.WriteBlankLines(1); 

f1.Close(); 

}

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/198814.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-04 10:27
下一篇 2024-12-04 10:27

相关推荐

  • MQTT使用教程

    MQTT是一种轻量级的消息传输协议,适用于物联网领域中的设备与云端、设备与设备之间的数据传输。本文将介绍使用MQTT实现设备与云端数据传输的方法和注意事项。 一、准备工作 在使用M…

    编程 2025-04-29
  • Python3.6.5下载安装教程

    Python是一种面向对象、解释型计算机程序语言。它是一门动态语言,因为它不会对程序员提前声明变量类型,而是在变量第一次赋值时自动识别该变量的类型。 Python3.6.5是Pyt…

    编程 2025-04-29
  • Deepin系统分区设置教程

    本教程将会详细介绍Deepin系统如何进行分区设置,分享多种方式让您了解如何规划您的硬盘。 一、分区的基本知识 在进行Deepin系统分区设置之前,我们需要了解一些基本分区概念。 …

    编程 2025-04-29
  • 三星内存条参数用法介绍

    本文将详细解释三星内存条上面的各种参数,让你更好地了解内存条并选择适合自己的一款。 一、容量大小 容量大小是内存条最基本的参数,一般以GB为单位表示,常见的有2GB、4GB、8GB…

    编程 2025-04-29
  • Python3定义函数参数类型

    Python是一门动态类型语言,不需要在定义变量时显示的指定变量类型,但是Python3中提供了函数参数类型的声明功能,在函数定义时明确定义参数类型。在函数的形参后面加上冒号(:)…

    编程 2025-04-29
  • 写代码新手教程

    本文将从语言选择、学习方法、编码规范以及常见问题解答等多个方面,为编程新手提供实用、简明的教程。 一、语言选择 作为编程新手,选择一门编程语言是很关键的一步。以下是几个有代表性的编…

    编程 2025-04-29
  • Python input参数变量用法介绍

    本文将从多个方面对Python input括号里参数变量进行阐述与详解,并提供相应的代码示例。 一、基本介绍 Python input()函数用于获取用户输入。当程序运行到inpu…

    编程 2025-04-29
  • Spring Boot中发GET请求参数的处理

    本文将详细介绍如何在Spring Boot中处理GET请求参数,并给出完整的代码示例。 一、Spring Boot的GET请求参数基础 在Spring Boot中,处理GET请求参…

    编程 2025-04-29
  • Qt雷达探测教程

    本文主要介绍如何使用Qt开发雷达探测程序,并展示一个简单的雷达探测示例。 一、环境准备 在开始本教程之前,需要确保你的开发环境已经安装Qt和Qt Creator。如果没有安装,可以…

    编程 2025-04-29
  • 猿编程python免费全套教程400集

    想要学习Python编程吗?猿编程python免费全套教程400集是一个不错的选择!下面我们来详细了解一下这个教程。 一、课程内容 猿编程python免费全套教程400集包含了从P…

    编程 2025-04-29

发表回复

登录后才能评论