我正在嘗試構建一個使用3D進行圖像處理並返回一個全新圖像的messenger bot。我使用THREE.CanvasRenderer,我的應用程序託管在Heroku上。使用節點在THREE.js中加載紋理使用節點
當用戶/ POST附件到我的webhook時,我想採用新創建的圖像的URL並將其插入到我的3d場景中。
這是我的代碼(使用節點帆布庫):
const addTexture = (imageUrl) => {
request({
uri: imageUrl,
method: 'GET'
}, (err, res, body) => {
let image = new Canvas.Image();
image.src = body;
mesh.material.map = new THREE.Texture(image);
mesh.material.needsUpdate = true;
});
}
回調函數被運行,其實我可以console.log()
圖像的內容,但沒有在現場展示了 - 飛機我應該渲染只是變得黑色沒有任何錯誤...我在這裏錯過了什麼?
我也嘗試過其他幾種方法,沒有任何成功...
我嘗試使用THREE.TextureLoader
與jsdom修補它(模擬document
,window
)和node-xmlhttprequest
,但隨後出現的錯誤與我load
事件(事件.target沒有被定義...)就像in this example
應該如何解決這個問題?我有一個由Facebook生成的url
,我想從它下載圖像並將其放置在我的場景中?
您使用的是什麼版本的three.js? – Wilt