banner
banner
banner
NEWS LETTER

JS-运动与游戏开发

Scroll down

通过循环不断使用 js 代码来改变元素的位置,样式,动画等

具备要素

  • canvas 元素(画布):用于渲染游戏画面
  • audio 元素(音频):用于添加音效和背景音乐
  • image 元素(图像):用于加载游戏图像并在 canvas 中显示
  • 浏览器中的计时函数和循环函数:用于实现动画

Canvas(关键)

  • 步骤:开始路径 - 绘制路径 - 关闭路径 - 设置颜色 - 填充

API

方法 描述
fill() 填充路径
stroke() 描边
arc() 创建圆弧
rect() 创建矩形
fillRect() 绘制矩形路径区域
strokeRect() 绘制矩形路径描边
clearRect() 在给定的矩形内清除指定的像素
arcTo() 创建两切线之间的弧/曲线
beginPath() 起始一条路径,或重置当前路径
moveTo() 把路径移动到画布中的指定点,不创建线条
lineTo() 添加一个新点,然后在画布中创建从该点到最后指定点的线条
closePath() 创建从当前点回到起始点的路径
clip() 从原始画布剪切任意形状和尺寸的区域
quadraticCurveTo() 创建二次方贝塞尔曲线
bezierCurveTo() 创建三次方贝塞尔曲线
isPointInPath() 如果指定的点位于当前路径中,则返回 true,否则返回 false
  • context.arc(圆心 x 的坐标,圆心 y 的坐标, 半径, 起始角 sSingle,结束角 eSingle,false 顺时针 true 逆时针绘图)

改变样式

属性 描述
fillStyle 设置或返回用于填充绘画的颜色、渐变或模式
strokeStyle 设置或返回用于笔触的颜色、渐变或模式
shadowColor 设置或返回用于阴影的颜色
shadowBlur 设置或返回用于阴影的模糊级别
shadowOffsetX 设置或返回阴影距形状的水平距离
shadowOffsetY 设置或返回阴影距形状的垂直距离

直线添加样式

样式 描述
lineCap 设置或返回线条的结束端点样式
lineJoin 设置或返回两条线相交时,所创建的拐角类型
lineWidth 设置或返回当前的线条宽度
miterLimit 设置或返回最大斜接长度

设置渐变

方法 描述
createLinearGradient() 创建线性渐变(用在画布内容上)
createPattern() 在指定的方向上重复指定的元素
createRadialGradient() 创建放射状/环形的渐变(用在画布内容上)
addColorStop() 规定渐变对象中的颜色和停止位置

图形转换

方法 描述
scale() 缩放当前绘图至更大或更小
rotate() 旋转当前绘图
translate() 重新映射画布上的 (0,0) 位置
transform() 替换绘图的当前转换矩阵
setTransform() 将当前转换重置为单位矩阵,然后运行  transform()

图像绘制

  • drawImage():向画布上绘制图像、画布或视频
  • context.drawImage(img,sx?,sy?,swidth?,sheight?,x,y,width?,height?);
  • img:规定要使用的图像、画布或视频
  • sx:可选。开始剪切的 x 坐标位置
  • sy:可选。开始剪切的 y 坐标位置
  • swidth:可选。被剪切图像的宽度
  • sheight:可选。被剪切图像的高度
  • x:在画布上放置图像的 x 坐标位置
  • y:在画布上放置图像的 y 坐标位置
  • width:可选。要使用的图像的宽度(伸展或缩小图像)
  • height:可选。要使用的图像的高度(伸展或缩小图像)
其他文章
cover
实现h5小游戏基本步骤
  • 24/10/31
  • 11:05
  • JavaScript
cover
案例-常用例子
  • 24/10/31
  • 11:05
  • JavaScript
目录导航 置顶
  1. 1. 具备要素
  2. 2. Canvas(关键)
    1. 2.1. API
    2. 2.2. 改变样式
    3. 2.3. 直线添加样式
    4. 2.4. 设置渐变
    5. 2.5. 图形转换
    6. 2.6. 图像绘制
请输入关键词进行搜索