2011-12-28 9 views
5

Nie wiesz, dlaczego poniższy kod (w zasadzie wycięty & wklej z przykładu) zwraca błąd.Potrzebujesz pomocy dotyczącej THREE.js TextGeometry

var textDlaczego = nowy TRZECIA.TekstGeometria ("Dlaczego", {rozmiar: 10, wysokość: 5, curveSegments: 6, czcionka: "helvetiker", waga: "normalny", styl: "pogrubiony"});

nie można odczytać właściwość „normalne” o nieokreślonej

Jestem nowy WebGL nadzieję, że ktoś może wskazać mi rozwiązanie.

Dzięki.

Próbowałem z tym najprostszym urywkiem. Wynik jest taki sam.

<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

Spróbuj "zwykłego" zamiast "normalnego". BTW 'weight' powinno być" odważne ", a nie" stylowe ". – kirilloid

+0

dzięki za komentarze, próbowałem zmienić wagę na "zwykły" lub "pogrubiony". Oba błędy zwracania mówią, że "zwykły" lub "pogrubiony" jest niezdefiniowany. – sglai

+0

otwórz konsolę na http://mrdoob.github.com/three.js/examples/webgl_geometry_text.html i wypróbuj: var textWhy = new THREE.TextGeometry ("Why", {size: 10, height: 5, curveSegments : 6, czcionka: "helvetiker", waga: "pogrubiona", styl: "regular"}); TypeError: Nie można odczytać właściwości "rozdzielczości" niezdefiniowanej. – sglai

Odpowiedz

8

okazało się, że nie powinno się używać "kroju-0.15.js", ale tylko w helvetiker czcionki _ *. Typeface.js. Funkcja "load" jest dostępna w pliku Three.js. Powinno być:

<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

Warto wyjaśnić, że czcionki muszą być załadowane _after_ Three.js (tak, jak to masz tutaj). Zajęło mi to trochę czasu, aby to sobie uświadomić;) – Roly

+0

Proponuję również, aby PO zaakceptował twoją odpowiedź (z tym wyjaśnieniem). – Roly