这个游戏基本上是建立在JavaScript模块化的开发基础上进行封装的,对游戏里面需要使用到的游戏场景进行了封装,分别实现了Game,Sprite,enemy,player, base,Animation 等游戏类,后续代码还可以继续优化,最终实现的效果如下: 其他的所有核心代码已经开源:https://github.com/xiugangzhang/SuperMarioGame 在线预览游戏效果: http://htmlpreview.github.io/?https://github.com…
高性能动画!HTML5 Canvas JavaScript框架KineticJS KineticJS是一款开源的HTML5 Canvas JavaScript框架,能为桌面和移动应用提供高性能动画,并具有转场效果.节点嵌套.分层.滤镜.缓存以及事件处理等更多功能.即使你的应用包含了成千上万的图形,也可以为你所绘制的东西添加事件监听器,或是对它们进行移动.缩放操作,为了支持高性能动画,还可以独立于其他图形对它们进行旋转. KineticJS的最新版已经更新至5.1.0,相较之前的版本,新版在增加新…
正统的HTML5 Canvas中如下代码 ctx.lineWidth = 1; ctx.beginPath(); ctx.moveTo(10, 100); ctx.lineTo(300,100); ctx.stroke(); 运行结果绘制出来的并不是一个像素宽度的线 感觉怎么好粗啊,跟常常见到的网页版各种绘制线效果 很不一样,难道HTML5 Canvas就没想到搞好点嘛 其实这个根本原因在于Canvas的绘制不是从中间开始的 而是从0-1,不是从0.5-1 + 0-0.5的绘制方式,所以 导致f…
Unity 2D游戏开发高速入门第1章创建一个简单的2D游戏 即使是如今,非常多初学游戏开发的同学.在谈到Unity的时候.依旧会觉得Unity仅仅能用于制作3D游戏的. 实际上.Unity在2013年公布4.3版本号的时候,就開始提供对制作2D游戏的支持了.比如.提供了一些专用于开发2D游戏的Unity工具.如今Unity已经公布了版本号4.5.对2D游戏的支持更是完好了不少. 为了说明Unity对2D游戏所提供的支持,本章会使用这些在Unity中原生的工具,开发一个简单的2D游戏. 本文选自…
/** 苏拉克尔塔游戏 * 思路: * 1.棋盘设置:使用HTML5的canvas标签绘制整个棋盘 * 2.点击事件:当页面被点击时,获取点击的x,y像素点,根据此像素点进行判断,再在合适位置绘制黑红棋子,棋子均是使用canvas绘制的 * 3.保存落子记录:将数据存入一个二维数组,x和y表是落子坐标,1为白棋,2为黑棋,0代表此处无棋子,只有没有棋子的才能落子 * 4.判断输赢:每次落子后以此坐标分别向左右,上下,右下,右上进行判断,设参数count,遇到同色棋子+1,遇到空格或不同色棋子终止…
目前已经实现的功能: V1.0 : 实现棋子的布局,画布及游戏场景的初始化V2.0 : 实现棋子的颜色改变V3.0 :实现所有象棋的走棋规则V4.0 : 实现所有棋子的吃子功能 GItHub源码下载地址:https://github.com/xiugangzhang/ChineseChess如果需要直接体验的朋友也可以直接通过这个连接体验哈:http://htmlpreview.github.io/?https://github.com/xiugangzhang/ChineseChess/blo…
看到一些曾经只会灌水的网友,在学习了前端之后,已经能写出下载量几千几万的脚本.样式,帮助大众,成为受欢迎的人,感觉满羡慕的.我也想学会前端技术,变得受欢迎呀.于是心血来潮,开始学习前端知识,并写下了这个小练习. 基本思路是这样的: 使用Canvas绘制棋盘.棋子. 用二维数组保存棋盘状态. 设置一个flag,用以标识落子顺序. 点击时,在数组中检测当前点击位置是否存在棋子,若存在,则不落子:如游戏已结束,亦不落子. 落子时,更新数组,并将当前落子所在的行.列.左上-右下列.左下-右上列四个方向的…
1.Canvas 画布 画布类 Canvas 封装了图形和图片绘制等内容,此类常用的函数说明如下: drawColor(int color) 作用:绘制颜色覆盖画布,常用于刷屏 参数:颜色值,也可用十六进制形式表示(ARGB) drawText(String text,float x,float y,Paint paint) 作用:绘制文本字符 第一个参数:文本内容 第二.三个参数:文本的X.Y坐标 第四个参数:画笔实例 drawPoint(float x,float y,Paint paint…
上一篇博文使用PhoneGap开发基于Html5应用一:PhoneGap简单介绍 中我介绍了怎样从phonegap官网上下载源代码并启动第一个应用,今天我们把phonegap的应用略微改一下,让他实现几个比較牛叉的功能: 1.启动一个网页 2.启动摄像头 3.启动定位 老规矩.在实现这几个功能之前我们先讲一下原理性的东西: 首先我们先回想一下上次说的,事实上phonegap应用中有个特别的webview,它就是CDVViewController.关于这个类我们后面再具体描写叙述,如今我们先了解这…
概述 在前端开发过程中,我们经常会遇到需要发送异步请求的情况.而使用一个功能齐全,接口完善的HTTP请求库,能够在很大程度上减少我们的开发成本,提高我们的开发效率. axios是一个在近些年来非常火的一个HTTP请求库,目前在GitHub中已经拥有了超过40K的star,受到了各位大佬的推荐. 今天,我们就来看下,axios到底是如何设计的,其中又有哪些值得我们学习的地方.我在写这边文章时,axios的版本为0.18.0.我们就以这个版本的代码为例,来进行具体的源码阅读和分析.当前axios所有…
宣传一下自己的qq群: (暗号:C#交流) 欢迎喜欢C#,热爱C#,正在学习C#,准备学习C#的朋友来这里互相学习交流,共同进步 群刚建,人不多,但是都是真正热爱C#的 我也是热爱C#的 希望大家可以一起交流,共同进步 最近公司需要用到web录音的功能 本人接手了这个任务 在网上找了一些资料 http://www.jsjtt.com/webkaifa/html5/2013-08-28/34.html http://javascript.ruanyifeng.com/bom/webrtc.html…
Android精选源码 一个动画效果的播放控件,播放,暂停,停止之间的动画 用 RxJava 实现 Android 指纹识别代码 Android仿滴滴打车(滴滴UI)源码 Android高仿哔哩哔哩动画客户端bilibili源码 android八数码拼图游戏源码 高仿最美创意的一款APP视频应用源码 android恋爱管家完整源码 仿miui自动滚动截屏.长截屏功能实现源码 android拼图游戏源码 Android打造不一样的圆盘签到效果 Android简单易用的TextView装饰库 一个超…
这里给出的demo是具备整体框架的微信公众平台源码, 所谓demo就是拿过去就可以直接演示使用的东西,  当然不会具备非常详细的具体到业务层面.数据层面的东西, 每个人都可以在此基础上自由发挥,  只要看完前6篇的也一定能开发出自己的东西. demo简单易理解,任何人都可以看明白,这里说明下demo跟我实际项目中的区别: 1.demo没有连接数据库.     demo下载可以直接使用,连接数据库并不是每个人都很方便,且第1篇中已经把完完整整的数据库开源了,包括设计时的可视化界面, 想要连接数据库…
该文章是一个系列文章,是本人在Android开发的漫漫长途上的一点感想和记录,我会尽量按照先易后难的顺序进行编写该系列.该系列引用了<Android开发艺术探索>以及<深入理解Android 卷Ⅰ,Ⅱ,Ⅲ>中的相关知识,另外也借鉴了其他的优质博客,在此向各位大神表示感谢,膜拜!!!另外,本系列文章知识可能需要有一定Android开发基础和项目经验的同学才能更好理解,也就是说该系列文章面向的是Android中高级开发工程师. 系列第六篇了,,接着上一篇说,在上一篇文章中我们上了一个小…
iOS精选源码 飞机大作战 MUPhotoPreview -简单易用的图片浏览器 LLDebugTool是一款针对开发者和测试者的调试工具,它可以帮... 多个UIScrollView.UITableView嵌套 Swift仿QQ空间可拉伸头部控件 iOS 传感器集锦 基于UICollectionView封装高性能轮播图 应用间跳转传值和强更设置 iOS优质博客 iOS实现网易云音乐右上角view跳动效果 网易云右上角动画效果View.gif网易云右上角动画效果View.gifgif跳动效果不怎…
iOS精选源码 日期时间选择器,swift Space Battle 宇宙大战 SpriteKit游戏源码 LLDebugTool - 便捷的IOS调试工具(新增截屏功能) 相机扫描or长按识别二维码.FMDB.键盘动态高度.定位等 动画,贝塞尔曲线,优酷播放按钮,跳过动画 支持图文混排的跑马灯 MUCheckbox-迷你的小控件 有了它再也不需要求UI切图了 iOS一个实时刷选控件AutoCompleteTextView 线上项目开源 -- WeAre(AR 相册) ios 本地图片合成,网络…
上一篇文章介绍了怎样快速搭建一个基于MVVMLight的程序http://www.cnblogs.com/whosedream/p/mvvmlight1.html算是简单入门了下,今天我们来做一个稍许复杂点的应用,关于这个应用我是找了个CodePlex上的小例子加以改造的. 需求大致如下 1.用户输入一定规格的数据 例如: buy car;100000 buy bike;3000 receive;20000 2.用户自定义类别,并将索引值(指用于匹配数据的关键字)关联上类别 例如: catego…
注: 源码已上传github: https://github.com/shirayner/WeiXin_QiYe_Demo 一.本节要点 1.1 授权回调域(可信域名) 在开始使用网页授权之前,需要先设置一下授权回调域.这里瞬间想到之前做JSSDK的时候,也设置过一个域名.二者本质上都是设置可信域名. 当用户授权完毕之后,请求将重定向到此域名(或者子域名)下的执行者(jsp页面或者servlet等).如何设置授权回调域,请见第二节. 1.2 获取Code https://open.weixin.…
转载请注明出处:http://www.cnblogs.com/shamoyuu/p/unity_minecraft_06.html 一.引入LibNoise 虽然Unity3D里也有一个Mathf.PerlinNoise,但是只能是2D的,这个可以生成3D的柏林噪音 https://github.com/ricardojmendez/LibNoise.Unity 二.创建GameManager对象 这个对象很简单,就是用来管理随机数种子 using System; using UnityEngi…
前言 关于本篇功能实现用到的 api 涉及类看不懂的,请参照 esri 官网的 arcgis api 3.x for js:esri 官网 api,里面详细的介绍 arcgis api 3.x 各个类的介绍,还有就是在线例子:esri 官网在线例子,这个也是学习 arcgis api 3.x 的好素材. 内容概览 基于 arcgis api 3.x 叠加 zip 压缩 SHP 图层 源代码 demo 下载 之前写过一篇前端 js 叠加 shp 图层的文章:arcgis api 3.x for j…
再学习.工作中,开发免不了要使用第三方工具.今天介绍2款反编译工具 一.dnspy 免安装.免费.可调试.可修改重新编译dll 开源项目地址:https://github.com/0xd4d/dnSpy 下载地址:https://github.com/0xd4d/dnSpy/releases 二.ILSpy 免费.开源 开源项目地址:https://github.com/icsharpcode/ILSpy 下载地址:https://github.com/icsharpcode/ILSpy/rel…
前言 leaflet-webpack 入门开发系列环境知识点了解: node 安装包下载webpack 打包管理工具需要依赖 node 环境,所以 node 安装包必须安装,上面链接是官网下载地址 webpack 配置介绍文档详细的 webpack 文档配置介绍,适合新手查看,我也是边看边学 vscode 安装包下载,我这边用 vscode工具编译开发前端项目,个人觉的这款工具还不错 leaflet api文档介绍,详细介绍 leaflet 每个类的函数以及属性等等 leaflet 在线例子 l…
在DRF官方教程的学习过程中,一个很明显的感受是框架在不断地进行封装,我们自己写框架/工具/脚本/平台也可以模仿模仿,先完成底层代码,再做多层封装,让使用者很容易就上手操作.本文是教程的最后一篇,介绍ViewSets和Routers. ViewSets 先看看之前在给User模型创建Endpoint时,我们新增的2个视图: class UserList(generics.ListAPIView): queryset = User.objects.all() serializer_class =…
首先,表明我的态度:采用 Flash 才是最优方案,不建议使用 HTML 5 的 Canvas 做一些生产/工业级的网页应用. Flash的优势一是浏览器支持好,二是代码成熟稳定.而HTML5 的 Canvas 不利用网络上开源的 JS 绘图库,你是不可能做出复制的 Canvas 应用的.而网络中的 JS 绘图库目前杂且乱,部分库没更新几个月项目就被废弃了,现在还没有像 JQuery 之于 JS一样那么流行的 Canvas 绘图库.我看好的就是 Createjs   和 Fabric.js. 其…
window.onload = function() { var canvas = document.getElementById("canvas"), context = canvas.getContext("2d"), width = canvas.width = 600, height = canvas.height = 600; context.lineCap = "round"; context.lineJoin = "mit…
不谈国内社交网站(人人.微博等)目前的盈利状况如何,facebook.twitter都已经取得了很大的成功.这一定程度上都得益于人们对社交的喜爱和投入. 目前的情况来看,也有很多人已经对直接的文字分享呈现出一种厌倦的状态.有没有想过用自己绘制的简单图片来表达自己的心情,用绘画的形式表达自己的想法,并分享给自己的朋友?这又何尝不是一种新的乐趣呢? 不多说,直接给图给功能描述. 上图中左边是一个巨大的画板,可以在右上方的工具区域选择不同的工具,选择不同的画笔颜色.画笔线宽等基本功能,绘图完毕后便可以…
第一个简单的Dapp-猜拳游戏.本智能合约的功能很简单,就是用户与电脑猜拳,用户选择出手后,电脑随机一个选项,然后调用智能合约方法把两个选项值传过去,在智能合约上进行比较,并通过区块链合约事件广播结果,本地监听事件拿到结果后展示猜拳结果. 先大体声明下几个环境跟工具: 1.没有用truffle,直接MetaMask链接以太坊Ropsten测试链后,用Remix部署合约代码 2.前端用web3.js(1.6.1版本) 下面分成几步详细说明: 一.从Ropsten上获取eth 因为调用合约需要消耗e…
一.效果图如下 上面的效果图,效果需求如下 1.还没加载图片的时候,默认显示加载图片背景图 2.刚开始进入页面,自动加载第一屏幕的图片 3.下拉界面,当一张图片容器完全显露出屏幕,即刻加载图片,替换背景图 4.加载图片的时候,有渐进显示图片效果 二.难点 1)如何Ajax请求数据 2)如何动态将json数据绑定到html中. 3)如何通过对图片的定位计算,触发图片懒加载机制 4)加分项,显示图片时有渐现的过渡动画 三.前期知识点 1)Ajax相关知识,XMLHttpRequest对象,所有现代的…
前言 openlayers4 官网的 api 文档介绍地址 openlayers4 api,里面详细的介绍 openlayers4 各个类的介绍,还有就是在线例子:openlayers4 官网在线例子,这个也是学习 openlayers4 的好素材. openlayers4 入门开发系列的地图服务基于 Geoserver 发布的,关于 Geoserver 方面操作的博客,可以参考以下几篇文章: geoserver 安装部署步骤 geoserver 发布地图服务 WMS geoserver 发布地…
form表单的校验方法is_valid() 点开我们发现这个函数里面只有两个方法方法,最终返回True or False 我们点进.is_bound属性,里面判断传输的数据不是空和上传文件不是空 点进.errors发现这是一个方法伪装成属性,用的是内置的装饰器property, 这里有个简单的逻辑判断大家都看的懂吧,判断有没有报错的信息,没有错误信息就执行self.full_clean() 我们看看执行也看看返回的 self._errors,发现开始是空,经过self.full_clean()…