2017-01-25 2 views
0

私は自分のシーンの一部をレンダリングし、これをオブジェクトのテクスチャとして使用します。しかし今、私はこのテクスチャをイメージとしてエクスポートしたいと思います。それについてのアイデア?Three.js - テクスチャをイメージとしてエクスポートする

これは私が私のテクスチャオブジェクトを作成する方法である:

frameTexture = new THREE.WebGLRenderTarget(window.innerWidth, window.innerHeight, { minFilter: THREE.LinearFilter, magFilter: THREE.NearestFilter}); 

をそして、私は私の材料にこのテクスチャを割り当てる:

var material = new THREE.MeshBasicMaterial({map:frameTexture.texture}); 

そして、これは私がテクスチャにレンダリングする方法である:

renderer.render(frameScene,frameCamera,frameTexture); 

ここで問題は、フレームテクスチャをイメージとして保存する方法です。

答えて

0

その後、あなたは今開いているウィンドウ

window.open(dataURL, "image"); 

それとも

var img = new Image(); 
img.src = dataURL; 
document.body.appendChild(img); 
外の画像を作るようなことdataURLで物事を行うことができますtoDataURL

renderer.render(sceneThatHasASingleQuadPlaneUsingFrameTexture, camera); 
var dataURL = renderer.domElement.toDataURL(); 

を呼び出すキャンバスに画像をレンダリング

XHR経由でサーバーに送信

const xhr = new XMLHttpReqeust(); 
xhr.open('PUT', 'https://myserverthatsavesimages.com', true); 
xhr.send(dataURL); 
... 

等...良いアイデアです

+0

は、それが正常に動作します。ありがとう。 – Sam

関連する問題