2013-12-15 103 views
10

從three.js r62Dev更新爲r64或r64Dev後,我收到以下錯誤。THREE.SpriteAlignment顯示爲undefined

var radarMaterial = new THREE.SpriteMaterial({ map: radarTexture2, useScreenCoordinates: true, alignment: THREE.SpriteAlignment.topLeft }); 

未捕獲TypeError:無法讀取未定義的屬性'topLeft'。

有沒有人經歷過這個?

回答

12

SpriteMaterial.alignmentSpriteMaterial.useScreenCoordinates已從Threejs中刪除。查看發行記錄:https://github.com/mrdoob/three.js/releases

精靈像現在任何其他物體一樣在場景中呈現。

如果您想創建平視顯示器(HUD),解決方法是疊加第二個精靈的場景,用正交相機渲染。

請參閱http://threejs.org/examples/webgl_sprites.html瞭解如何做到這一點的示例。

three.js r.64

+0

感謝您的更新。這種改變不會效率不高,因爲它現在需要額外的渲染通道來實現相同的目標? – Kahless

+0

新方法更清潔。 – WestLangley

+0

仍然在更新Three.js不應該破壞現有的代碼,如果該屬性已被棄用不會仍然有效(即使它不是首選的方法)?它似乎完全從庫中刪除,這不符合我的理解爲「已棄用」的含義 – ekcrisp