我正在用JavaScript创建3D游戏,允许玩家移动。我目前正在尝试对立方体的侧面进行纹理处理,它们在2d画布上显示为四边形。我有一个函数drawImage(),它以四边形和要绘制的图像的角为参数。如何拉伸图像以适合四边形?
我尝试使用ctx.transform(),但是此方法要求我知道所绘制的四边形的角度,随着玩家转身移动,该角度在整个游戏中都在变化。我看过类似的问题,但它们的链接断开或使用3d转换(大多数浏览器不支持)。我想使用香草javascript。答案here说明了如何倾斜图像以适合梯形,但我希望能够倾斜图像以适合任何四边形
function drawImage(x1, y1, x2, y2, x3, y3, x4, y4, image) {
//code should go here
}
我可以使用drawImage()绘制矩形图像,但是无法将图像绘制为四边形。