を返す、私はそれを明確に、それは私が既存のプロジェクトを撮影したは、キャンバス上の画像を描画し、まずテクスチャとして
three.js &をキャンバスに来るとき、私は全くの初心者だということをしたいのですがテキストを書くのではなく、テクスチャにイメージを描画するなどのマイナーな変更を加えようとしています。私は、テクスチャに背景色を設定し、その上に透明なPNG画像を描画しようとします。
私が修正しようとしている方法は、おそらくここで説明できないほど多くのことをやっている別の関数で使うテクスチャを返します。
私はいくつかのアプローチを試みましたが、私が望む振る舞いを得ることができません。このアプローチでは
アプローチ#1
、私は背景色を取得していますが、私は、画像をいくつか行った後
var ts = calc_texture_size(size + size * 2 * margin) * 2;
canvas.width = canvas.height = ts;
context.fillStyle = back_color;
context.fillRect(0, 0, canvas.width, canvas.height);
var img = new Image();
function drawIcon() {
context.drawImage(img,0,0);
}
img.onload = drawIcon();
img.src = "img/test.png";
var texture = new THREE.Texture(canvas);
texture.needsUpdate = true;
return texture;
アプローチ#2
を表示し得ていないのです私はTextureLoaderを使うはずだったようですが、キャンバス上に色や形を描く方法を理解できませんでした。この場合、画像は背景色なしで単独で表示されます。
var imgTex = new new THREE.TextureLoader().load("img/test.png",function(t){
texture.map = imgTex;
});
texture.needsUpdate = true;
return texture;
どのように私は成功した色の背景の上に画像を描画し、他の関数で使用するためにテクスチャとしてそれを返すことができますか?
[こちら](https://jsfiddle.net/2pha/e6rbt3r4/)は、キャンバスに2つの画像を結合し、それをテクスチャとして適用した例です – 2pha