文档章节

lufylegend-HTML5游戏引擎学习笔记4:绘图进阶

WolfX
 WolfX
发布于 2016/03/07 16:50
字数 206
阅读 161
收藏 1

上篇: http://my.oschina.net/wolfx/blog/632130

使用原始canvas绘图

LInit(50,"my",500,500,main);
function main(){
	var graphics = new LGraphics();
	addChild(graphics);
	graphics.add(function(coodx,coody){
		LGlobal.canvas.strokeStyle = "#000";
		LGlobal.canvas.moveTo(20,20);
		LGlobal.canvas.lineTo(200,200);
		LGlobal.canvas.stroke();
	});
}

API: http://lufylegend.com/api/zh_CN/out/classes/LGlobal.html

用形状裁剪图片

var loader;
LInit(50,"my",500,500,main);
function main(){
	loader = new LLoader();
	loader.addEventListener(LEvent.COMPLETE,loaded);
	loader.load("img/winImg.png","bitmapData");
}
function loaded(event){
	var bitmapData = new LBitmapData(loader.content);
	var layer = new LSprite();
	addChild(layer);
	layer.graphics.beginBitmapFill(bitmapData);
	layer.graphics.drawArc(1,"#000",[110,80,50,0,Math.PI*2]);
}

API: http://lufylegend.com/api/zh_CN/out/classes/LGraphics.html

扭曲变形(需矩阵知识)

var loader;
LInit(50,"my",240,240,main);
function main(){
	loader = new LLoader();
	loader.addEventListener(LEvent.COMPLETE,loaded);
	loader.load("img/winImg.png","bitmapData");
}
function loaded(event){
	var bitmapData = new LBitmapData(loader.content);
	var layer = new LSprite();
	layer.x = 0;
	addChild(layer);
	var aa = [];
	
	var vertices = [
		0,0,
		0,120,
		0,240,
		120,0,
		120,120,
		120,240,
		240,0,
		240,120,
		240,240
	],indices = [
		0,3,1,
		3,1,4,
		1,4,2,
		4,2,5,
		3,6,4,
		6,4,7,
		4,7,5,
		7,5,8
	],uvtData = [
		0,0,
		0,0.5,
		0,1,
		0.5,0,
		0.5,0.5,
		0.5,1,
		1,0,
		1,0.5,
		1,1
	];
	layer.graphics.beginBitmapFill(bitmapData);
	layer.graphics.drawTriangles(vertices,indices,uvtData);
}

例子: http://lufylegend.com/api/api/LGraphics/drawTriangles.html

© 著作权归作者所有

WolfX

WolfX

粉丝 52
博文 246
码字总数 31477
作品 0
南京
技术主管
私信 提问
25 个超棒的 HTML5 & JavaScript 游戏引擎开发库

就像在汽车中,引擎完成主要的工作,使汽车看起来不可思议。游戏引擎同理,游戏开发者完成细节的工作,使游戏看起来真实、吸引人眼球。游戏引擎负责其余的事情。早期,游戏开发者通常从草图做...

oschina
2015/02/26
12.6K
44
2014 不能错过的 10+ 个 JavaScript 游戏引擎

在过去几年里,JavaScript 变得越来越流行,现在被认为是 Github 上面最受欢迎的编程语言。JavaScript 和 HTML5 这个流行的组合和 HTML5 的最新发展催生了各种 JavaScript 游戏引擎。这个组合...

oschina
2014/03/20
6.4K
13
娱乐开发两不误,10 大开源游戏框架推荐

从角色扮演游戏到即时策略游戏,从冒险解谜游戏到动作射击游戏,甚至是只有一兆大小的迷你游戏,都有起着核心作用的技术组成部分。本文将介绍十大好用的开源游戏引擎和框架,希望能给你的游戏...

编辑部的故事
2017/10/25
10.3K
19
20 款免费的 JavaScript 游戏引擎

使用 HTML5,CSS3 和 Javascript 可以帮助面向对象开发者开发拥有各种特性的游戏,比如:3D 动画效果,Canvas,数学,颜色,声音,WebGL 等等。最明显的优势在于使用 HTML5 开发的游戏能在任...

oschina
2014/02/20
18.4K
13
广州.NET男屌求职

差不多两年的经验吧,一直是做.NET,工具当然是VS+MSSQL,偶尔做了一两个项目是用mysql的,从毕业以来一直在一间公司工作(我很忠诚的哦),下面是一些不值得一提的小项目,希望有淫能收留,...

任意球
2014/02/13
1K
25

没有更多内容

加载失败,请刷新页面

加载更多

Replugin借助“UI进程”来快速释放Dex

public static boolean preload(PluginInfo pi) { if (pi == null) { return false; } // 借助“UI进程”来快速释放Dex(见PluginFastInstallProviderProxy的说明) return PluginFastInsta......

Gemini-Lin
今天
4
0
Hibernate 5 的模块/包(modules/artifacts)

Hibernate 的功能被拆分成一系列的模块/包(modules/artifacts),其目的是为了对依赖进行独立(模块化)。 模块名称 说明 hibernate-core 这个是 Hibernate 的主要(main (core))模块。定义...

honeymoose
今天
4
0
CSS--属性

一、溢出 当内容多,元素区域小的时候,就会产生溢出效果,默认是纵向溢出 横向溢出:在内容和容器之间再套一层容器,并且内部容器要比外部容器宽 属性:overflow/overflow-x/overflow-y 取值...

wytao1995
今天
4
0
精华帖

第一章 jQuery简介 jQuery是一个JavaScript库 jQuery具备简洁的语法和跨平台的兼容性 简化了JavaScript的操作。 在页面中引入jQuery jQuery是一个JavaScript脚本库,不需要特别的安装,只需要...

流川偑
今天
7
0
语音对话英语翻译在线翻译成中文哪个方法好用

想要进行将中文翻译成英文,或者将英文翻译成中文的操作,其实有一个非常简单的工具就能够帮助完成将语音进行翻译转换的软件。 在应用市场或者百度手机助手等各大应用渠道里面就能够找到一款...

401恶户
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部