2011-12-28 138 views
5

不知道为什么下面的代码(基本上是从示例粘贴的&粘贴)返回错误。 var textWhy = new THREE.TextGeometry(“Why”,{size:10,height:5,curveSegments:6,font:“helvetiker”,weight:“normal”,style:“bold”});}};需要关于THREE.js的帮助TextGeometry

无法读取的不确定

财产“正常”我是新来的WebGL,希望有人能指点一个解决方案。

谢谢。

试着用这个最简单的代码片段。结果是一样的。

<html> 
<head> 
<title>Three.js Why Text</title> 
<script src="typeface-0.15.js"></script> 
<script src="helvetiker_regular.typeface.js"></script> 
<script src="helvetiker_bold.typeface.js"></script> 
<script type="text/javascript" src="Three.min.js"></script> 
<script type="text/javascript" src="jquery-1.7.1.js"></script> 
<script type="text/javascript"> 
    $(document).ready(function(){ 
     textWhy = new THREE.TextGeometry("Why", { size: 10, height: 5, curveSegments: 6, font: "helvetiker", weight: "normal", style: "normal" }); 
    }); 
</script> 
</head> 
<body> 
</body> 
</html> 
+0

尝试'正常',而不是'正常'。顺便说一下'重量'应该是'大胆',而不是'风格'。 – kirilloid 2011-12-28 13:33:27

+0

感谢您的意见,我尝试将体重改为“常规”或“粗体”。两个返回的错误说“常规”或“粗体”是未定义的。 – sglai 2011-12-28 13:46:10

+0

在http://mrdoob.github.com/three.js/examples/webgl_geometry_text.html上打开控制台并尝试: var textWhy = new THREE.TextGeometry(“Why”,{size:10,height:5,curveSegments :6,font:“helvetiker”,weight:“bold”,style:“regular”}); TypeError:无法读取未定义的属性'resolution' – sglai 2011-12-28 13:59:32

回答

8

发现我不应该使用 “字样,0.15.js”,但只有字体helvetiker _ *。typeface.js。 Three.js提供了'load'函数。所以它应该是:

<html> 
<head> 
<title>Three.js Why Text</title> 
<script type="text/javascript" src="Three.min.js"></script> 
<script src="helvetiker_regular.typeface.js"></script> 
<script src="helvetiker_bold.typeface.js"></script> 
... 
+4

值得澄清的是字体必须加载_after_ Three.js(正如您在此处所见)。花了我一段时间才意识到这一点;) – Roly 2013-09-26 12:30:21

+0

另外我建议OP接受你的答案(与此澄清)。 – Roly 2013-09-26 12:31:09