私は現在、1つのメッシュに結合された多くの平面ジオメトリを使用するプロジェクトに取り組んでいます。
コードをデバッグしようとすると、デバッグメッセージ「THREE.PlaneGeometry:メモリフットプリントを減らすためにTHREE.PlaneBufferGeometryの使用を検討してください」が原因で、読み込み中にコンソールを開いたままにできません。 コンソールにスパムを送信し、コンソールに表示してコードの読み込みを遅くします。
他の問題が発生していますが、他の問題でページがフリーズした後、コンソールを開いてエラーを確認できません。 また、警告メッセージを出力することで読み込み時間が大幅に遅くなるため、読み込み中にコンソールを開いたままにすることはできません:P
これらのメッセージを無効にする方法はありますか? PlaneGeometryをPlaneBufferGeometryに切り替えてみましたが、コードに今は対処したくない他のエラーがスローされました。 また、私は現在、メモリについて心配していません。現在、上司に提示するために、プロジェクトの動作中の(不安定な)バージョンを数日で動作させる必要があります。
ログを無効にできるかどうかはわかりませんが、本番ビルドでは無効にしたくないので、おそらく無効にする必要があります。 (たぶん、ミニファイアがそれを処理します-わからない)
回避策として、メッシュのロード中にconsole.log
関数をオーバーライドしてから、次のようにリセットすることができます。
var oldLogFunction = console.log;
console.log = function(){}; // noop
// ... load meshes
console.log = oldLogFunction; // reset console.log
// ... perform debugging
これはうまく機能します。この場合はconsole.infoであることに注意してください:)
私はあなたが生産物について言うことに同意します。 私はこのプロジェクトで何が起こっているのかをパートナーに話しましたが、ログメッセージを無効にするオプションがないことに驚いていました
これに+1。 stdoutでPNGを出力するコマンドラインツールに取り組んでいます。 console.log
を上書きすることは問題ではありませんが、少し注意が必要です。
私が問題を抱えている特定のメッセージはこれです。 この特定のケースでは、コンストラクターにquiet
ようなオプションを追加するだけで十分なようです。 しかし、私が推測するもう少し包括的なものを持っている方が明らかに良いでしょう...
@crabmusket個人的には、メッセージは常に表示されるべきだと思います。 three.jsで構築されたコンソールとそのバージョンを見ただけで、アプリを見ている他の人が知ることは非常に便利です。 この無料のライブラリを使用するために我慢しなければならない広告のほんの少しを考えてください😉
元の問題に関しては、console.infoメッセージが表示されなくなったと思います。おそらく、この問題を解決できるでしょうか。 @mrdoob @ Mugen87
コンセンサスが得られたと思うので、この議論を続けるつもりはありませんが、私はただこう言います:
three.jsで構築されたコンソールとそのバージョンを見ただけで、アプリを見ている他の人が知ることは非常に便利です。
私はVue、Moment、jQuery、Bootstrapを使用していますが、必須メッセージをコンソールに記録する必要があるとは誰も考えていません。
最も参考になるコメント
コンセンサスが得られたと思うので、この議論を続けるつもりはありませんが、私はただこう言います:
私はVue、Moment、jQuery、Bootstrapを使用していますが、必須メッセージをコンソールに記録する必要があるとは誰も考えていません。