Я пытаюсь сопоставить изображение с сеткой "3d", которая имитирует ткань с использованием strokeStyle и холста, у меня есть изображение, но оно в настоящее время действует как фоновое изображение и фактически не течет с "тканью", как рябь, IE изображение статично по мере того, как сетка течет. здесь jsfiddle, который сам объясняет (работает только в Chrome). Буду признателен за любую оказанную помощь. вот javascript, который отображает изображение в фоновом режиме. Как прекратить рендеринг в качестве фонового изображения и только заполнить его?:
function update() {
var img = new Image();
img.src = 'http://free-textures.got3d.com/architectural/free-stone-wall- textures/images/free-stone-wall-texture-002.jpg';
img.onload = function() {
// create pattern
var ptrn = ctx.createPattern(img, 'repeat');
ctx.clearRect(0, 0, canvas.width, canvas.height);
physics.update();
ctx.strokeStyle = ptrn;
ctx.beginPath();
var i = points.length;
while (i--) points[i].draw();
ctx.stroke();
requestAnimFrame(update);
}
}
У него исходный codepen Я работаю. `updated fiddle с изображением вне функции update():
В настоящее время он фактически заполняет ячейки, а также применяет их в качестве фонового изображения. есть ли способ остановить его превращение в фоновое изображение и применять его только для заполнения сетки? Я пробовал это:
ctx.fillStyle = ptrn;
и удаление строки 260:
ctx.strokeStyle = ptrn;
но похоже, что фоновое изображение просто отображает его как черную сетку... еще раз спасибо за терпение