質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

Three.js

Three.jsはWebGLをサポートしているJavaScriptの3D描画用ライブラリです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

2回答

2418閲覧

Threejsのtextの大きさを動的に変更させたい

akatsuki1910

総合スコア14

JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

Three.js

Three.jsはWebGLをサポートしているJavaScriptの3D描画用ライブラリです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2019/08/27 05:42

編集2019/08/27 09:59

前提・実現したいこと

Three.jsでのtextの大きさを動的に変更させたい。boxとかと同じようにしても変化されない。

該当のソースコード

javascript

1var loader = new THREE.FontLoader(); 2var tex; 3loader.load('./optimer_regular.typeface.json', (font)=>{ 4 var geo_tex = new THREE.TextGeometry("A", { 5 font: font, 6 size: 2, 7 height: 5, 8 curveSegments: 12 9 }); 10 var mat_tex = new THREE.MeshBasicMaterial( { color: 0x00ff00} ); 11 tex = new THREE.Mesh(geo_tex,mat_tex); 12 scene.add(tex); 13 tex.position.set(0,0,0); 14 animate(); 15}); 16 17function change(){ 18 tex.scale.x=5;//変更されない 19 tex.scale.y=5;//変更されない 20 tex.scale.z=5;//変更されない 21} 22 23function animate(){ 24 requestAnimationFrame(animate); 25 change(); 26 renderer.render(stage); 27}

色々

Threejsのtextに関するサイトが少なくて困っています。みんな使うjsonもバラバラで何をしていいのかがわかりません。

補足情報(FW/ツールのバージョンなど)

threejs version 3.3.1

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

自己解決

sizeを0スタートにするとscaleは倍率で増えるため変更されない、カメラ位置や元の大きさによっては変更が目につきにくいことが原因でした。
開発中にカメラ位置を動かして確かめたりするので注意が必要でした。
お騒がせしました。

投稿2019/08/29 05:13

akatsuki1910

総合スコア14

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

前の質問と同じでコールバック関数は非同期で動作するので

js

1var loader = new THREE.FontLoader(); 2var tex; 3loader.load('./optimer_regular.typeface.json', (font)=>{ 4 var geo_tex = new THREE.TextGeometry("A", { 5 font: font, 6 size: 2, 7 height: 5, 8 curveSegments: 12 9 }); 10 var mat_tex = new THREE.MeshBasicMaterial( { color: 0x00ff00} ); 11 tex = new THREE.Mesh(geo_tex,mat_tex); 12 scene.add(tex); 13 tex.position.set(0,0,0); 14 tex.scale.x=5;//変更されない 15 tex.scale.y=5;//変更されない 16 tex.scale.z=5;//変更されない 17});

こうやって関数の中に入れてあげないと意図通りにならないと思います。

投稿2019/08/27 06:05

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

akatsuki1910

2019/08/27 09:57

すみませんそれもあるんですが今回は読み込みが終了した体で質問していました。記載不足です。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問