[Web前端] Canvas做游戏实践分享(七)
4.2 加速度
加速度是改变速度大小及方向的一个属性,在物体受力的过程中,会产生加速度来改变速度的大小及方向。加速度的处理与速度的处理非常类似。
一维坐标系统下的加速度
一维坐标系统下加速度的实现很简单,我们仍然使用小球系统来模拟,为小球对象添加X轴与Y轴上的加速度属性。实现起来有两步:初始化加速度值,在每一帧开始时为速度增加加速度的值。如下:
ball.ax=INITIAL ...
[Web前端] Canvas做游戏实践分享(六)
4.1速度
运动最基本的属性就是速度。注意这里的速度是物理中所说的速度(Velocity),它包括大小及方向两部分组成。在动画中,如果我们已知当前一帧对象的位置以及速度,那在下一帧我们就能计算出物体所在的位置。在大多数情况下,速度的大小是按像素/帧为单位的,但实际运行中,由于浏览器的帧率不稳定性,会出现小的差别。如果应用对于统一帧率要求很严格,可以使用其它的方式来处理,之后我们会介绍这 ...
[Web前端] Canvas做游戏实践分享(五)
3.5 渐变
Canvas的渐变有两各路 ,线性或径向。在使用gradient时,注意使用createLinearGradient与createRadiusGradient所创建的fillStyle均只在其指定的矩形/圆环区域内生效,如果要fill的图形处于gradient对象之后,则 ...
[Web前端] Canvas做游戏实践分享(四)
3.4 使用quadraticCurveTo绘制二次贝赛尔曲线
Canvas提供了一系列的方法来绘制曲线,比如quadraticCurveTo(通过起始两个点以及一个控制点来绘制,前两个参数为控制点横纵坐标,后两个参数为终点横纵坐标,使用的是数学上的二次贝赛尔方程)。下面我们来看一下常见的一些使用。
固定控制点
如下程序,我们实现了一个固定起始点,使用鼠标 ...
[Web前端] Canvas做游戏实践分享(三)
3. Canvas 常见用法
3.1 canvas中的色彩
对于canvas中色彩的表示,主要沿用CSS的四种方式:
#RRGGBB 十六进制表示法
#RGB 上述十六进制中特殊色彩的简写表达,两种表示法的对应关系为复制R,G,B位上的数值,如#0bf是#00bbff的简写表达方式
rgb(R,G,B) 函数式的表达方式,各色彩取值为0~255
rgba(R ...
[Web前端] SenchTouch 使用scriptTagProxy 代理读取json数据
SenchaTouch 是一个应用于移动平台的HTML5框架,它提供了在手机移动平台上快速开发基于web的应用程序,现在介绍一下新手普遍头疼的数据访问问题。
SenchaTouch的数据访问很方便,只要声明好了数据存储类,然后配置数据地址,senchatouch的代理工具会将下载下来的json数据自动填充到本地数据存储里面。
这里我们讲一下以jsonp的方式请求远程数 ...
[Web前端] 浏览器前端与服务器持续通信技术回顾
最近想做一个基于web的在线聊天室的程序,刚好某童靴发了一个在线客服程序,于是引起了 一番关于服务器与浏览器通信技术的争论。而且我发现自己可耻的OUT了。
关于服务器与浏览器端通信,下面是我的原话,而且我也一直这么认为:
因为http是无状态协议,不支持推送,地球人都知道。替代方案就是浏览器不停的发请求 (AJAX)获得返回值,但这样服务器表示鸭梨很大。
然后有人提出了服务器推送技术, ...
[Web前端] Canvas做游戏实践分享(二)
2.游戏中的数学知识
在游戏的开发中,数学知识特别是其中的三角函数使用特别广泛
2.1 角度
在使用canvas来制作动画的过程中,我们使用到的角度都是以弧度为单位的,角度与弧度之间的换算单位如下:
radians=degrees*Math.PI/180
同时,在canvas中的坐标系是以右上角为原点(0,0),向左为x轴增加方向,向下为y轴增加方向。因此,需 ...
[Web前端] Adobe CQ5 CMS 安装 学习 培训 实战 步步高【不断更新】
CQ5 Web Content Management (WCM) is a platform for delivering engaging, multi-channel customer experiences
to drive online business success.
首先最全的CQ5的官方documents http://dev.day.com/content/docs/e ...
[Web前端] [原创] HTML5 基础教程
今天上网找 HTML5 的教程时,发现了一个英文基础教程:
http://www.html-5-tutorial.com
讲的还是相当的不错的,结合了 SEO,讲的很生动。不过这个教程看来确实是“基础教程”(对于有一定 HTML 基础的人来说,这个教程还是有些简单)。
我想说的是,吸引我的并不是它所讲的 HTML5 知识,而是作者讲解的方式及所用的词汇。
我想大家对于英文的技术网站肯定是看多了 ...
[移动开发] Phone Gap开发二:开发一个Phone Gap插件
快过年回家了,为了不阉割phonegap开发的介绍,在今天完成phonegap的最后一个介绍,在上一篇中提到过的如何开发phonegap的插件。
目前PhoneGap虽然提供了很多的API,但是我们也很容易发现,他有很多地方不能满足我们的需求,比如发短信。我也将介绍如何开发一个针对PhoneGap发短信的Plugin。(Android 版本)。
1、创建一个Android工程,创建之后的 ...
[Web前端] HTML5/CSS3翻转动画(二)
上一篇我们制作了两行文字的翻转效果,他们是同步进行的,当然不同步也可以设置时间不同。而有时我们想时间上是相同的,但是翻转效果是不同的,这点也不难做,我们再编写一组翻转动画CSS即可:
@-webkit-keyframes flip2 {
0% {
-webkit-transform: rotateY(0deg) scale(1,1);
color: white;
} ...
[Web前端] HTML5/CSS3翻转动画(一)
翻转动画效果,就是将页面的元素(文字,图片)加入围绕坐标轴翻转的效果,在Webkit内核的浏览器中,很容易实现。而其它内核暂时支持不是很好。首先,我们创建页面:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="tex ...
[Web前端] 玩转HTML5应用实战:灵活拖拉文件
本人原创作品,原文发表在:
http://tech.it168.com/a2011/1207/1285/000001285230_all.shtml
转载请注明出处
在HTML5中,出现了众多的新的技术和特性,而本文将介绍的是目前HTML5标准中,对如何将用户客户端的文件拖拉到浏览器这一特性进行初步的讲解。在HTML5中的标准中,提到了希望能在新一代浏览器中,支持用户直接将客户端桌面的文件拖放到浏 ...
[移动开发] [翻译介绍]jquerymobile页面(page)分解
Jquery Mobile"page"结构是优化的用于支持单页面和在一个页面中本身内部(local internal)的链接页。
mobile page structure手机页面结构:
一个Jquery mobile ...
[移动开发] Sencha-touch之TabPanel的Tab在点击时执行事件
前面一直很忙,忙了快有一年了,学习了很多东西,也没有系统的整理一下,现在开始逐渐的将自己的一些学习的心得一点一点的记录下来。
Sencha-touch的前身是ExtJs,前几年我一直在做ExtJs的方面的扩展开发,现在由于自己的项目,做移动端的跨平台开发,因此用到了Sencha-touch。
Sencha-touch中TabPanel的使用频率应该是很高的了,一般的应用应该都会用到, ...
[互联网] HTML5 WebSocket做聊天室(服务器端基于Jetty8)
早就厌倦了Ajax轮询,一直想试试Web Socket.这次终于体验了一把
这次用的浏览器是Chrome,IE不用提了,不支持,FireFox据说是支持的,但是实际试下来不支持.估计是有自己的API,下次再研究....(以上提到的浏览器都是最新稳定版Chrome15,IE9,Firefox8.0)
开发环境:Eclipse3.7,Jetty8.04
[2012/4/6日更新: ...
[Web前端] html5新特性介绍之PageVisibility API
在HTML5的众多新特性中,有的新特性可能容易被人忽视,又或者不是主流新
特性,但不可忽略,因为估计以后越来越多浏览器支持.今天要介绍的,就是
chrome和ie 10都支持的一个很好的新特性:HTML5中的PageVisibility API,下面例
子讲解下.
比如在web中,有的时候,用户会经常切换页面,把某个页面最小化后,可能很久时间都不打开某个页面了,要过很久再打开.又或者比如 ...
[Web前端] Chrome中canvas上drawImage无法画出image的解决办法
在自己写demo的过程中 碰到了这样一个问题 发现drawImage方法没有达到预期的效果 图片没办法显示 而fillRect等画图形的方法却工作良好
大概的代码如下:
$(function() {
var $my_canvas=$("#my_canvas");
var my_canvas=$my_canvas[0];
var context=my_canv ...
[Web前端] html5音乐播放器(chrome测试通过)
html5出来已经很久了,众所周知html5支持播放音乐和视频,作为一个html5网页的开发者,一直都想做一个html5的音乐播放器,同时也增加对javascript的认识,我利用空闲的一段时间开发了一个javascript版本的html5播放器,由于马上又有事情做,这个版本只具备的一部分的功能,欢迎大家一起交流,完成所有的功能。
靠,发现我太唐僧了,不说废话直接上代码了
<!DOCTYP ...
小组成员3111人 浏览681961次 成员列表