网页游戏基础
HTML 负责结构,CSS 负责样式,JavaScript 负责交互。卡牌、问答、菜单适合 HTML/CSS;精灵图和粒子适合 Canvas 2D;3D 和复杂渲染适合 WebGL。选能支持想法的简单方案。
持续动画使用 requestAnimationFrame,按经过的时间更新:
game-loop.js
let previousTime;
function frame(time) {
const delta = previousTime === undefined
? 0
: Math.min((time - previousTime) / 1000, 0.05);
previousTime = time;
update(delta);
draw();
requestAnimationFrame(frame);
}
requestAnimationFrame(frame);update 和 draw 由游戏实现。时间上限可减少后台标签页恢复时的跳变,但不是完整的计时模型。
触控目标要方便点击,合理支持键盘,不让关键操作依赖悬停。尽早验证横竖屏,优先加载第一场景素材、压缩图片、合理使用音频,并提供加载反馈。接着看项目结构。
Last updated on