ThingJS を使用すると、雨、雪(雨や雪のサイズを制御可能)、水しぶき、炎の効果などのパーティクル効果をすばやくプログラムできます。サードパーティのデータに接続することで(たとえば、天気インターフェースに接続することで)、3 次元シーンの効果をリアルタイムで制御することもできます。 1. パーティクルエフェクトThingJS は、パーティクル効果を実装するための ParticleSystem オブジェクト クラスを提供します。パーティクルエフェクトを自分で作るには、画像処理、コード作成、3Dレンダリングが必要です。これは非常に骨の折れる作業であり、多くの3Dアルゴリズムの知識とシェーダー言語を習得する必要があります。 ThingJS はパーティクル エフェクトの実装方法をカプセル化し、コード量と開発投資を削減し、3D 開発初心者の間で人気が高まっています。クエリ API インターフェイスを直接使用して、シーンに炎のエフェクトを追加できます。 ThingJS には、直接呼び出すことができるパーティクル エフェクトがいくつか組み込まれています。[オンライン開発] をクリックし、コード ブロックを選択して呼び出すことができます。 2. シーンを読み込むCampusBuilder (ModelBuilder とも呼ばれます) がシーンの構築を完了したら、二次開発のために ThingJS に URL を直接読み込みます。 // シーンコードをロード var app = new THING.App({ url: 'https://www.thingjs.com/static/models/storehouse' // シーンアドレス}); 3. さまざまな粒子効果の実現火の効果 コードは次のとおりです。 /** * 炎の効果を実現するためのパーティクルを作成する */ 関数createFire() { すべてリセット(); // パーティクルを作成する var particles = app.create({ id: 'fire01', タイプ: 'ParticleSystem'、 名前: '火'、 親: app.query('car01')[0], URL: 'https://model.3dmomoda.com/models/19061018snbajhvuzrheq9sbgwdoefuk/0/particles', localPosition: [0, 0, 0] // 親オブジェクトに対するパーティクルの位置を設定します }); } 雪の効果 コードは次のとおりです。 /** * 雪が降る効果を実現するパーティクルを作成する*/ 関数createSnow() { すべてリセット(); // 雪の効果を作成する var particlesSnow = app.create({ タイプ: 'ParticleSystem'、 id: 'No1234567', 名前: 「スノー」 URL: 'https://model.3dmomoda.com/models/18112014q3t8aunaabahzxbxcochavap/0/particles', 位置: [0, 50, 0] }); } 水しぶき効果 コードは次のとおりです。 /** * 水しぶき効果を実現するパーティクルを作成する */ 関数createWater() { すべてリセット(); // 水しぶき効果を作成する var particles = app.create({ id: 'water01', タイプ: 'ParticleSystem'、 名前: 「水」 URL: 'https://model.3dmomoda.com/models/19081611ewlkh7xqy71uzixefob8uq1x/0/particles', 位置: [0, 0, 5] }); } 降雨効果 コードは次のとおりです。 /** * 降雨効果を実現するパーティクルを作成する */ 関数createByParticle() { すべてリセット(); // パーティクルを作成する var particles = app.create({ タイプ: 'ParticleSystem'、 名前: 「レイン」 URL: 'https://model.3dmomoda.com/models/18112113d4jcj4xcoyxecxehf3zodmvp/0/particles', 位置: [0, 300, 0], 完了: 関数 (ev) { ev.object.scale = [10, 10, 10]; } }); // 最大粒子密度を設定します。particle.setGroupAttribute('maxParticleCount', 1000); // 最小粒子密度を設定します。particle.setParticleAttribute('particleCount', 500); } 雨や雪の天候はパーティクルイメージレンダリングによって実現されます。パーティクル数の最大密度と最小密度を制御して、降雨量と降雪量を実現できます。 クリアなパーティクルエフェクト function resetAll() { // 現在作成されているパーティクルを取得します var particles = app.query('.ParticleSystem'); // 現在作成されているパーティクルがあるかどうかを判断します if (particle) { // ある場合は、作成されたパーティクルを削除します particles.destroy(); } } エンディング:ThingJS は、モノのインターネット向けの 3D 視覚化開発プラットフォームです。強力なモノのインターネット開発ロジックを備えています。ThingJS は、視覚化アプリケーション向けのシンプルで豊富な機能を提供します。始めるには、基本的な JavaScript 開発経験のみが必要です。プラットフォーム API にアクセスすることで、ユーザーは 3D 視覚化インターフェース、シーン構築 - オンライン開発 - データ ドッキング - プロジェクトの展開を簡単に統合でき、開発の効率が向上します。 上記は、ワンクリックで雨や雪のエフェクトを実現する ThingJS パーティクルエフェクトの詳細な内容です。雨や雪のエフェクトを実現する ThingJS の詳細については、123WORDPRESS.COM の他の関連記事に注目してください。 以下もご興味があるかもしれません:
|
<<: MySQL 5.7 の同時レプリケーションにおける暗黙のバグの分析
>>: CenterOS7 インストールおよび構成環境 jdk1.8 チュートリアル
この記事では、例を使用して、MySQL の日付と時刻の間隔計算について説明します。ご参考までに、詳細...
Web ページを作成するときに、テーブルの幅が揃っていないという問題に遭遇することがよくあります。 ...
目次序文プロトタイプ継承アドバンテージ欠点コンストラクタの継承アドバンテージ欠点組み合わせ継承寄生的...
位置 / { インデックス index.jsp; proxy_next_upstream http...
目次背景1. クエリ条件に「or」が含まれているため、インデックスが失敗する可能性があります。 2....
tomcat の containerID を見つけて、tomacat ディレクトリに入ります。 [r...
title: vue は vue-meta-info を使用して各ページのタイトルとメタ情報を設定...
コードは次のようになります。 <!DOCTYPE html> <html lang...
Vue での img の動的スプライシングを見てみましょう。src 画像アドレス、具体的な内容は次の...
Code Cloud を使用して Git コード ストレージ ウェアハウスを構築するhttps://...
MySQL では、char、varchar、text の各タイプのフィールドはすべて文字タイプのデー...
インターネット上には多くのインポート方法があり、公式も3つのインポート方法を提供していますが、インポ...
Mysqlページングの2つのパラメータ ユーザー制限 1,2 から * を選択 1 は検索する最初の...
Web ページでマスク レイヤーを使用すると、繰り返しの操作を防ぎ、読み込みを促進できます。また、ポ...
ウェブサイトのアクセス速度を向上させるための徹底的な最適化に関するヒント。ウェブサイトのアクセス速度...