就像在汽车中,引擎完成主要的工作,使汽车看起来不可思议。游戏引擎同理,游戏开发者完成细节的工作,使游戏看起来真实、吸引人眼球。游戏引擎负责其余的事情。早期,游戏开发者通常从草图做起,花费高昂,且不容易获利。为了让游戏开发更加简单容易,主要的开发者开始授权他们的基本游戏引擎,如 Unreal。而且,随着手机和平板游戏的出现,所需预算比以前更少,对 JAVASCRIPT 和HTML5 游戏引擎的需求大增。
如果你是一个游戏开发者,并且正在寻找一个可以与 JavaScript 和 HTML5 无缝工作的游戏引擎。尽管市面上有很多免费和付费的游戏引擎,让专业的游戏开发者满意的游戏引擎肯定需要包含独特的东西。游戏开发者对完美游戏引擎的追求永远不会停止。
下面将介绍最好的html5和javascript游戏引擎列表,每个游戏引擎有每个人想要的特性。每个游戏引擎有他自己的优缺点,这样你可以根据你自己的需求做选择,我确定这个列表中有你在寻找的游戏引擎
1) Canvas Engine
Canvas Engine 提供创建html5视频游戏的平台,创建html5游戏,它会运行在所有的现代浏览器,平板电脑和智能手机上。
2)HTML5 Quintus
Quintus 是另一个容易使用,适用于移动设备和桌面的javascript html5游戏引擎。 Quintus有一个模块引擎,通过它你可以仅仅引用你需要的模块,并在,在一个页面上,可以运行多个实例。
3)Turbulenz
Trubulenz 是一个开源的用来创建使用高级技术和web服务的HTML5游戏引擎。引擎库使用支持游戏代码数据快速迭代的优化后的javascritp实现。
4)Squarepig
这是一个非常容易使用的游戏引擎,它适合新手去创建他们第一个web 游戏,也适合有经验的程序猿创建示例和原型。
5)Akihabara
Akihabara 是一个html5游戏引擎,同样也是一组用javascript创建运行在浏览器中的不依赖falsh技术的马赛克风格的8/16位游戏的库和工具。
6)GoGoMakePlay
GMP 是免费的、快速的Javascript游戏引擎,它轻巧而简便易懂。 如果你想要做一些基于精灵的2-D游戏,GMP是很棒的选择。它可以很容易的进行大多数复古风格的游戏设计。它也可以像sudoku一样制作拼图游戏。
7)Traffic Cone
Traffic Cone支持多人游戏,目前只提供客户端支持,所以你需要提供自己的服务器。为了在不久之后提供更多支持,我们正积极致力于Traffic Cone服务端的开发工作。
8)Collie
Collie是一个Javascript库,它有助于让HTML5创建高度优化的动画和游戏。 Collie可以在PC 和移动平台上运行HTML 5 canvas 和 DOM。
Collie可以稳定地使用渲染管线处理多个对象,并且支持一些有益的特性包括动画精灵和用户事件。它稳定支持iOS和Android,并且为每一个平台优化渲染。 视网膜屏幕也可以轻易地响应。
9)Gamejs
GameJs是一个基于HTMLcanvas元素的轻量级库。特别值得一提的是,它的绘画函数为游戏开发者提供各种各样的有用模块,并且还在不断扩充之中。
10)Atom
11)Jest
Jest 是另一个强大的javascript游戏框架,它使用画布元素来创建基于javascript HTML5的游戏。
使用画布元素来创建基于javascript HTML5的游戏
12)Jawsjs
Jawsjs是一个由HGTML5驱动的2D游戏库,最初只支持画布,而目前它已经可以通过相同的API支持基于精灵的普通DOM
13)Objects.js
objects.js是一个用来创建高性能(和大型)游戏和应用的框架,使用。
14)Play Craftlabs
Playcraft具备了一个完整的HTML5游戏引擎工作集,提供了你在建立游戏并直接发布到市场上的每一件工具。这是一个独一无二的引擎,当编写游戏时你可以轻松地将其转换到许多不同平台上,包括Facebook,简朴的老式网站,以及一些本机化的Android和iOS应用。
15)Gladiusjs
Gladius是一个3D游戏引擎,全部用JavaScript编写,设计于在浏览器上跑的。该引擎包括了一个功能核心集,这对于所有游戏是通用的,并且还模拟了游戏回环、消息、任务、定时器等。像空间变换这样的通用组件也在内核中提供了。而绘图和物理学这样的特殊功能也作为游戏扩展封装起来并设计于运行在内核之上。一个通用的扩展集将作为工程的一部分被维护着,并且该引擎的一个强大设计目标就是支持第三方扩展。
16)Impactjs
Impact 提供炫酷的方式来创建javascript 和HTML5游戏,且支持桌面和移动端浏览器。Impact 运行于所有支持HTML5的浏览器: Firefox, Chrome, Safari, Opera 并且(瞧!) 甚至是IE9(译者注:我也是醉了)。当然也包括爱疯、爱破的塔尺和艾派德。
17)Craftyjs
Crafty是另一个javascript上的有用的库。
18)Enchantjs
另一个用的很多的用于建立HTML5游戏和APP的javascript框架。其用于在HTML5和JS上开发简单游戏和应用。
19)Doodle-js
一个用于HTML5 Canvas上的JavaScript动漫库
20)Frozen
Froze是一个开源 HTML5游戏引擎,其通过工具化模块化实现易用、快速开发。
21)Withpulse
Withplus用于建立 2D 游戏和绘图引擎。定期使用最新的HTML5 技术扩展建立。
22)Melonjs
melonJS 诞生于我们对Javascript的一腔热血以及过去诸多实验之中, 并且当时苦于没有一个简单、免费、独立的库来支持游戏开发。虽然这个引擎还在开发中,但是已经允许大家轻松地创建一些好玩的哟西了。
23)GameQueryjs
gameQuery 是一个易于使用的jQuery插件版引擎,通过增加一些简单的游戏相关类来帮助js游戏开发。如果你懂得使用jQuery那么你几乎不用问怎么使用gameQuery!
24)jsGamesoup
一个使用Javascript和开放网页技术来制作游戏的免费软件框架。
25)Clay
通过clay.io创建HTML5游戏将非常简单。
CrazyWing:Python自动化运维开发实战 二十一、html标签用法平推式
导语:
上一章我们说到了html标签里的格式化手法,今天我们继续其他标签
引用(Quotation)
quote 美音 /kwot/
<q>
定义短的引用,浏览器会为 <q> 元素添加双引号:
<p>WWF 的目标是:<q>构建人与自然和谐共存的世界。q>p>
<blockquote>
定义被引用的节,用于长引用。被<blockquote> 元素引用的节会进行缩进处理:
<p>以下内容引用自 WWF 的网站:p>
<blockquote cite="http://www.worldwildlife.org/who/index.html">
五十年来,WWF 一直致力于保护自然界的未来。
世界领先的环保组织,WWF 工作于 100 个国家,
并得到美国一百二十万会员及全球近五百万会员的支持。
blockquote>
<abbr>
定义缩写或首字母缩略语:
当鼠标移动到被标记的缩写词的时候,会显示被缩写的文本
<p><abbr title="World Health Organization">WHOabbr> 成立于 1948 年。p>
效果如下:
<dfn>
定义缩写。
<p><dfn title="World Health Organization">WHOdfn> 成立于 1948 年。p>
效果如下:
效果根abbr非常类似,直接使用使用 代替。
<address>
定义文档或文章的联系信息(作者/拥有者)。
此元素以斜体显示,大多数浏览器会在此元素前后添加折行。
<address>
Written by Donald Duck.<br>
Visit us at:<br>
Example.com<br>
Box 564, Disneyland<br>
USA
address>
<cite>
定义著作的标题
浏览器会以斜体显示 <cite> 元素。
<p><cite>The Screamcite> by Edward Munch. Painted in 1893.p>
<bdo>
定义双流向覆盖(bi-directional override),也就是上下左右做反向显示文本
<bdo dir="rtl">This text will be written from right to leftbdo>
效果如下:
HTML 计算机代码格式
通常,HTML 使用可变的字母尺寸,以及可变的字母间距,在显示计算机代码时,并不需要如此。
, , 以及 元素全都支持固定的字母尺寸和间距。
<kbd>
定义键盘输入:
<p>To open a file, select:p>
<p><kbd>File | Open...kbd>p>
<samp>
定义计算机输出
<samp>
demo.example.com login: Apr 12 09:10:17
Linux 2.6.10-grsec+gg3+e+fhs6b+nfs+gr0501+++p3+c4a+gr2b-reslog-v6.189
samp>
<code>
定义编程代码,但是不保留多余的空格和折行:
<code>
var person = {
firstName:"Bill",
lastName:"Gates",
age:50,
eyeColor:"blue"
}
code>
<pre>
如需解决上面<code>的问题,必须在 <pre> 元素中包围代码:
<code>
<pre>
var person = {
firstName:"Bill",
lastName:"Gates",
age:50,
eyeColor:"blue"
}
pre>
code>
<var>
定义数学变量:
<p><var>E = m c<sup>2sup>var>p>
HTML中的样式
wing提示:本节只是简单演示样式,在脑子里有一个样式的大概印象,如果想深入学习样式需要专门花时间在CSS上.
所有的格式化代码均可移出 HTML 文档,然后移入一个独立的样式表。
当浏览器读到这个样式表,它就会按照这个样式表来对文档进行格式化。
一句话:所谓样式就是事先统一定义每个标签所使用的文本格式化方式
插入样式表的三种姿势: 内部样式表
当单个文件需要特别样式时,就可以使用内部样式表。在 head 部分通过 标签定义内部样式表。
<head>
<style type="text/css">
body {background-color: red}
p {margin-left: 20px}
style>
head>
例:使用添加到 部分的样式信息对 HTML 进行格式化。
<head>
<style type="text/css">
h1 {color: red}
p {color: blue}
style>
head>
<body>
<h1>header 1h1>
<p>A paragraph.p>
body>
内联样式
当特殊的样式需要应用到个别元素时,就可以使用内联样式。 使用内联样式的方法是在相关的标签中使用样式属性。样式属性可以包含任何 CSS 属性。
比如:改变段落的颜色和左外边距
<p style="color: red; margin-left: 20px">
This is a paragraph
p>
例:使用样式属性做一个没有下划线的链接
<a href="http://fklinux.blog.51cto.com" style="text-decoration:none">
这是一个链接!
a>
外部样式表
当样式需要被应用到很多页面时使用外部样式表,就可通过更改一个文件来改变整个站点的外观。
每个页面使用 标签链接到样式表。
<link> 标签在(文档的)头部:
<head>
<link rel="stylesheet" type="text/css" href="mystyle.css">
head>
浏览器会从文件 mystyle.css 中读到样式表,并根据它来格式文档。
文件不能包含任何的 html 标签,以 .css 扩展名进行保存。
比如:
# vim mystyle.css
hr {color:sienna;}
p {margin-left:20px;}
body {background-image:url("images/girl1.gif");}
属性值与单位之间不能有空格。假如你使用 “margin-left: 20 px” 而不是 “margin-left: 20px” ,它仅在 IE 6 中有效,但是在 Mozilla/Firefox 或 Netscape 中却无法正常工作。
标签的rel属性:
规定当前文档与被链接文档之间的关系。
值:stylesheet
文档的外部样式表。
只有 rel 属性的 "stylesheet" 值得到了所有浏览器的支持。其他值只得到了部分地支持。
HTML 表格
<table> 标签定义表格:
每个表格均有若干行,由 <tr> 标签定义.
每行被分割为若干单元格,由 <td> 标签定义.
字母 td 指表格数据(table data),即数据单元格的内容.
数据单元格可以包含文本、图片、列表、段落、表单、水平线、表格等等.
border属性:
指定表格边框宽度,用于<table>.
cellpadding属性:
中文翻译为:补白
用于指定<td>内表格内容到边框间的间距,也就是单元格边距.在<table>内使用.
cellspacing属性:
中文翻译为:单元格间距
用于指定表格边框和边框之间的间距.也就是单元格间距.在<table>内使用.
bgcolor属性:
指定表格背景颜色.在<table>内使用.也可用于<th>和<td>给单元格添加背景色.
background属性:
指定表格背景图片,注意会覆盖背景色.在<table>内使用.也可用于<th>和<td>给单元格添加背景图片.
align属性:
用于指定内容在单元格中的位置,在<td>内使用.
<caption>标签:
用于指定一个表格的标题.
<th>标签:
指定表头内容(类似于数据库表中的字段名称),浏览器会把表头显示为粗体居中的文本.
no-breaking space
空格,用于占位.由于没有内容的表格边框不显示,用空格占位来解决.
colspan属性:
用于跨行或者跨列,在<th>或<td>内使用
<body>
<table border="1" cellpadding="10" cellspacing="10" bgcolor="red" background="images/girl2.gif">
<caption>表格标题caption>
<tr>
<th>table head1th>
<th>table head2th>
<th colspan="2">电话th>
tr>
<tr>
<td align="left">1td>
<td align="right">2td>
<td> td>
tr>
<tr>
<td>4td>
<td>5td>
<td>6td>
tr>
<tr>
<th>姓名th>
<td>7td>
tr>
<tr>
<td>
<p>this is a parap>
<p>this is anothor parap>
td>
<td>
<ul>
<li>this is a listli>
<li>this is a listli>
ul>
td>
tr>
table>
body>
frame属性
框架属性,控制围绕表格的边框。
注释:frame 属性无法在 Internet Explorer 中正确地显示。
<table frame="box">
<tr>
<th>Monthth>
<th>Savingsth>
tr>
<tr>
<td>Januarytd>
<td>$100td>
tr>
table>
效果:
效果:
效果:
效果:
效果:
HTML 支持有序、无序和定义列表 HTML无序列表
无序列表是一个项目的列表,此列项目使用粗体圆点(典型的小黑圆圈)进行标记。
无序列表使用
例2:
<dl>
<dt>计算机dt>
<dd>用来计算的仪器 ... ...dd>
<dt>显示器dt>
<dd>以视觉方式显示信息的装置 ... ...dd>
dl>
效果如下:
计算机
用来计算的仪器 ... ...
显示器
以视觉方式显示信息的装置 ... ...
标签的type属性
不同类型的无序列表
type="disc"> 效果如下:
• 苹果
• 香蕉
• 柠檬
• 桔子
type="circle">效果如下:
°苹果
°香蕉
°柠檬
°桔子
type="square">效果如下:
苹果
香蕉
柠檬
桔子
square [skweə(r)] 方格
不同类型的有序列表
数字列表:
<ol>
<li>苹果li>
<li>香蕉li>
<li>柠檬li>
<li>桔子li>
ol>
字母列表:
<ol type="A">
<li>苹果li>
<li>香蕉li>
<li>柠檬li>
<li>桔子li>
ol>
小写字母列表:
<ol type="a">
罗马字母列表:
<ol type="I">
小写罗马字母列表:
<ol type="i">
嵌套列表
例1:
<ul>
<li>咖啡li>
<li>茶
<ul>
<li>红茶li>
<li>绿茶li>
ul>
li>
<li>牛奶li>
ul>
例2: <ul> <li>咖啡li> <li>茶 <ul> <li>红茶li> <li>绿茶 <ul> <li>中国茶li> <li>非洲茶li> ul> li> ul> li> <li>牛奶li>
ul>
本文转自 CrazyWing 51CTO博客,原文链接:
http://blog.51cto.com/fklinux/2054706