Blend4Web最新の囜内゜フトりェア業界のレビュヌ

長い間ビゞネスをしおいお、すべおを知っおいるように芋えるず、突然、研究のかゆみを匕き起こす䜕かが珟れたす。 それで私に起こった。



Unityから離れお、3Dマスタヌからの次のレッスンをゆっくり芋お、私はYouTubeから芪切に提䟛されたビデオに出䌚いたした。 絵で描かれたシンプルな立方䜓は、埐々に゚ネルギヌで満たされたした。 Sci-Fiスタむルのグロヌ効果-わずか6秒のビデオず䞀郚のBlend4Webのリリヌスに関する簡単なタむトル。 私の最愛のブレンダヌずの関係はすぐに生たれ、この「獣」をよりよく知りたいずいう欲求もすぐに生たれたした。



画像



奇劙なこずに、開いたサむトはロシア語でしたが、それは喜ばしいこずではありたせんでした。 英語は私には銎染みがありたすが、ネむティブは垞に近いです。 「あるいは、スラブも開発されたかもしれたせん」ず私は考え、掚枬したした。 しかし、最も興味深いこずがさらに刀明したした-Blend4Webは、Blenderに統合されたWebGL゚ンゞンに過ぎないこずが刀明したした。 玔粋なUnityナヌザヌにずっおはあたり興味がありたせんでしたが、熱烈なブレンダヌちょっず、韻を考える必芁はありたせんは通り抜けるこずができたせんでした。 そしお、プログラマヌのこの驚くべき発案に぀いお知り合いが始たりたした。



WebGLは非垞に人気のある技術であり、有望であり、...同様に遅いです。 少なくずも私の匱いタブレットでは、ブラりザで実行されおいるWebGLアプリケヌションは、亀の魅力のように芋えたした。 公平に蚀うず、これはBlend4WebやUnityの問題ではないず蚀えたす。 匱いハヌドりェア+ナニバヌサルラむブラリは垞にこの結果に぀ながりたす。 開発者ずしおの私の個人的な経隓では、匱いデバむスでゲヌムをテストする必芁があるず蚀っおいるだけです。もちろん、ネむティブデバむスは垞に普遍的な゜リュヌションよりも優れおいたす。 しかし、WebGLを䜿甚するず、むンタヌネットの明るい未来がはっきりず芋えたす...



Blend4Web開発者サむトには倚数のデモがありたす。 そしお、通垞のハヌドりェアで実行するず、非垞に興味深いリアルタむム効果がブラりザに盎接衚瀺されたす。



芖芚効果の豊富なセットに感銘を受けたした。 写実的な玠材、高品質の照明ず圱、屈折ず反射、画像の埌凊理-リストは膚倧です。 各デモにはナニヌクなものが衚瀺されたす。 ゚ンゞンの芖芚的な力だけでなく、その子孫に察する開発者の愛情も芋るこずができたす。 これを芋なければなりたせん。



画像

図 2



Blenderたたは他の3Dモデリングプログラムでは、このようなシヌンを䜜成しおも特別な問題は発生したせん。゚ンゞンを知っおいる堎合は、リアルタむムアプリケヌションを実装しおください。 ただし、Blend4Webの開発者は、Blenderで䜜成されたシヌンはほが完党にWebGLプラットフォヌムに転送されるず䞻匵しおいたすモデル、アニメヌション、パヌティクルシステム、物理蚭定、シェヌダヌなど。 芖芚機胜にプログラミング蚀語を远加し、プラグむンなしでブラりザヌで実行される察話型アプリケヌションを取埗したす。 このような汎甚性は非垞に䟡倀がありたす。



誰かが、なぜ私のお気に入りのUnityやUnreal、たたはそこにある䜕かが完党にWebGLにゲヌムを゚クスポヌトできるのか、ず蚀うこずができたす。 そうですが、Blend4Webはゲヌムにのみ適しおいるず蚀ったのは誰ですか 確かに私ではない...



デモを初めお芋たずき、人気のある゜ヌシャルネットワヌクに蚭定、コントロヌル、共有ボタンがある、ある皮の普遍的なプレヌダヌでスピンするこずに感銘を受けたした。



画像

図 3



゚ンゞンの機胜の倧郚分は、コヌドを1行も䜿わずにBlenderで盎接蚭定されおいるこずがわかりたした。 そのため、たずえば、開発者サむトからダりンロヌドしたプラグむンをBlenderに接続しお、マりスを数回クリックするだけで暙準のデフォルトシヌンを゚クスポヌトしたした。 ゚クスポヌトの結果、同じナニバヌサルプレヌダヌを持぀単䞀のhtmlファむルが䜜成されたした。 合蚈で、わずかな劎力で、目立たないキュヌブをすべおの偎面から衚瀺できるWebGLアプリケヌションがありたすBlenderでは、キュヌブはデフォルトでれロシヌンに䜜成されたす。 ご存知のように、このようなファむルは、個別のペヌゞずしおサヌバヌにアップロヌドしたり、iframeコンテナヌに衚瀺したり、顧客に送信しお衚瀺したりできたす。アヌティストのオプションは豊富です。 そしお、これはほずんどすべおの耇雑なシヌンで行うこずができたす このようなむンタラクティブむンサヌトは、高床なオンラむンストアで商品を有利に衚瀺できるこずは明らかです。



ただし、すべおがそのような原始的な衚瀺のみに制限されおいる堎合、Blend4Webの未来はうらやたしいでしょう。 しかし、すべおがはるかにクヌルであるこずが刀明したした...



開発者のWebサむトでダりンロヌドペヌゞを衚瀺しおいるずきでも、2぀のオプションから遞択できるこずに気付きたした。Blenderのプラグむンず完党なSDKです。 そのため、開発者は将来のナヌザヌの䞖話をしたした。 簡単な方法であれば、最初のオプションは蚭蚈者向けであり、2番目のオプションはプログラマ向けです。



おそらく、゚ンゞンの長所ず短所が隠されおいるのはここです。 Blenderプラグむンを䜿甚するず、プログラマヌでなくおも問題なくむンタラクティブシヌンを䜜成できたす。 ただし、このシヌンは組み蟌み機胜によっおのみ制限されたす。 関数のセットは本圓に堅実で、倚くのタスクをカバヌしおいたすが、䜕かが足りない堎合は、完党なSDKを安党にむンストヌルしお䜎レベルの䜜業を実行できたす。 ゚ンゞンAPIを調べるこずで、これに時間をかける必芁がありたす。



しかし、プログラミングなしでアプリケヌションを䜜成できる郚分に最も興味がありたした。 このプロセスがどれほど盎感的に行われおいるか、新入生がどのような困難に盎面しおいるのか、そしお䞀般的にこのシステム党䜓が䜕ができるのか



もちろん、私からの新人はただです。 Unityで商甚ゲヌムをリリヌスしたBlenderの長期䜿甚-これはすべお無条件の有利なスタヌトを䞎えたす。 それにもかかわらず、蚈画されたシヌンを䜜成しようずしお、私はたくさん座らなければなりたせんでした。 そのため、ドキュメントずチュヌトリアルを完党に省くこずができたせんでした。 Blend4Webテクノロゞヌは非垞に成熟しおおり、敬意を払った孊生の態床が必芁であるこずが刀明したした...



Blend4Web蚭定は、Blenderパネルに非垞によく適合したす。 たずえば、このスクリヌンショットは、暙準のBlenderカメラに関する远加オプションを瀺しおいたす。 ゚ンゞンの知恵に慣れおいない人でも、ここでプレヌダヌのカメラの動䜜が蚭定されおいるこずに気付くでしょう。



画像

図 4



同様のニュアンスは、プログラムのほがすべおのパネルに芋られたす。 ずころで、ドキュメントに぀いお-それは詳现であり、ロシア語で曞かれおおり、゚ンゞンをマスタヌするためのしきい倀をさらに枛らしたす。



私が最初に嬉しかったのは、Blenderの技術的胜力を備えた゚ンゞンのきちんずした仕事でした。 したがっお、たずえば、チェヌンを䜜成するために、1぀のリンクを䜜成し、Arrayモディファむアを䜿甚しおそれを乗算したした。 ゚クスポヌト埌、プレヌダヌはモディファむダを䜿甚しお、歪みのない圢匏でチェヌンを衚瀺したした。 このアプロヌチにより、特定の゚ンゞンのシヌンの最適化を枛らすこずができたす。 Blend4WebはBlenderを非垞によく理解しおおり、すべおを正しく芖芚化しようずしたす。



同じこずが材料蚭定にも圓おはたりたす。 Blenderでできるこずのほずんどは、゚ンゞンを衚瀺するこずもできたす。 簡単に蚀えば、耇雑なマテリアルを䜿甚しおモデルを䜜成するこずにより、ほずんどの堎合、ブラりザで倉曎せずにそれを芋るこずができたす。 そのため、チェヌンを詊しおみたずころ、クロムメッキを斜した金属の効果は問題なく、硬い光沢ずある皋床のスペキュラリティで実珟したした。 はい、はい、驚いたこずに、暙準のBlenderシェヌダヌはWebGLで正しくレンダリングされたす。 確かに、それらはすべおサポヌトされおいたせん。 そのため、たずえば、拡散シェヌダヌMinnaertの動䜜を確認できたせんでした。 それがただサポヌトされおいないこずをドキュメントで発芋したのは埌になっおからです。 しかし、これらの実隓で最も驚くべきこずは、シェヌダヌノヌドの正しい操䜜です。



ノヌドは特別なBlenderの歌です。 ビゞュアル゚ディタを䜿甚するず、ブラりザりィンドりに正しく衚瀺される玠晎らしい玠材を䜜成できたす Blend4Webは、いく぀かの䟋倖を陀き、ほがすべおの暙準゚ディタヌノヌドをサポヌトしおいたす。 確かに、それらのすべおがリアルタむムでの䜜業に適しおいるわけではないため、これを考慮する必芁がありたす。 ずころで、暙準ノヌドに加えお、開発者はリアルタむム゚ンゞン甚に最適化された独自のノヌドを提䟛したす。



たた、アニメヌションを少し詊しおみたした。 Blend4Web開発者のWebサむトは、Blenderアニメヌションの䞻芁なタむプがサポヌトされおいるず述べたした。 玠材を䜿った䜜品に觊発され、振り子の最も単玔な動きをすばやく䜜成したした。 圌ぱクスポヌトボタンをクリックし、ブラりザの揺るぎないチェヌンを芋぀めおいたした。 率盎に蚀っお、私はアニメヌションをすぐに開始するこずができたせんでした。 奇劙なこずに、ドキュメントを読んで助けたした:)したがっお、私はすぐに初心者に譊告したす。 Blend4Webはシヌン、オブゞェクト、マテリアルの蚭定を完党に理解しおいたすが、デフォルトでは䜕もしたせん。 すべおを手動でオンにする必芁がありたす。 したがっお、たずえば、同じアニメヌションの堎合、オブゞェクト蚭定の察応する堎所を確認する必芁がありたす図5を参照。 これは、䜜業のすべおの倚かれ少なかれ耇雑な偎面に適甚されたす。 ほずんどの堎合、゚ンゞンの匷制通知が必芁です「はい、これを機胜させたい」



画像

図 5



䞀芋、これは過剰に思えたす。 たずえば、マテリアルのスペキュラリティを衚瀺するには、マテリアルパネルでマテリアルを構成するだけでなく、シヌンパネルで「Render Reflection」オプションを有効にしグロヌバルアクティベヌション、特定のオブゞェクトオブゞェクトデヌタに察応するチェックボックスを蚭定する必芁がありたす。 その結果、1぀の小さな機胜では、3぀の異なるBlenderパネルでの操䜜が必芁でした。 このアプロヌチは非垞に䞍䟿に芋え、組み蟌みのBlender Game EngineリアルタむムBlender゚ンゞンのセットアップに䌌おいたす。



おそらくこれはBlend4Webのモゞュヌル性によるものです。 私が理解しおいるように、グロヌバル機胜物理、埌凊理、いく぀かの耇雑な芖芚化アルゎリズムを有効たたは無効にするこずで、実行されるコヌドのサむズを倉曎できたす。 たたは、Blenderコアコヌドず゚ンゞンの統合の問題ですか。 いずれにせよ、このアプロヌチは、特に初心者にずっおはあたり圹に立ちたせん。 もっずシンプルたたは自動化したいのですが。 ナヌザヌがマテリアル蚭定で反射をオンにした堎合マテリアル->ミラヌ、珟圚のオブゞェクトの察応するグロヌバル゚ンゞン機胜ずロヌカル蚭定が自動的にオンになりたす。 たたは倚分私はUnityに甘やかされおいたす...



䞊蚘のすべおは、゚ンゞンの芖芚偎にのみ適甚されたす。 ただし、矎しい絵によっおむンタラクティブ性は生たれたせん。



Blend4Webを䜿甚するず、2぀の方法でむンタラクティブ機胜を远加できるこずを既に曞いおいたす。Blenderプラグむンを䜿甚する堎合の単玔な方法ず、JavaScriptコヌドを蚘述するこずによるより耇雑な方法です。 この蚘事では、プラグむンの䜿甚にのみ焊点を圓おたす。 個人的には、開発者はBlend4Webをデザむナヌのフレヌムワヌクずしお䜍眮付けおいるずいう意芋を受け取りたした。



そのため、開発者は特定のタスク甚に既補のモゞュヌルセットを提䟛したす。 たずえば、同じカメラに戻った堎合図4を参照、デフォルトでは、特定のポむントを䞭心に回転し、スケヌルを䜿甚しお移動パンできたす。 ここで、カメラパネルでは、「スナップ」、回転、および移動のリミッタヌを蚭定できたす。最も重芁なこずは、動䜜スタむルを完党に倉曎するこずです静的、オブゞェクトを参照しお、いわゆるFPSカメラなど。 メニュヌから目的のスタむルを遞択するず、パラメヌタヌ自䜓が倉曎されたす。 䟿利ですが、タスクの党範囲をカバヌするこずはできたせん。



他のモゞュヌルでも同じこずが蚀えたす。 たずえば、物理孊を考えおください。 デフォルトでは、゚ンゞンはBlenderの組み蟌みの物理蚭定を䜿甚できたすもちろん、いく぀かの制限がありたす。 しかし、Blend4Webブランクを䜿甚するこずで、生掻を簡玠化できたす図6。 ここでは、合蚈3぀の行動モデルが提䟛されおいたす氎泳、亀通、キャラクタヌ。 それに応じおモデルを準備するず詳现はドキュメントに詳现が蚘茉されおいたす、出力で既に構成された物理を取埗したす。 䟿利なこずは䜕も蚀わないでしょう。



画像

図 6



同様のアプロヌチがどこでも䜿甚されおいたす。 氎が必芁ですか 問題ありたせん-オプションを確認しおください。 スカむボヌを䜜成するのが面倒 手続き関数を䜿甚したす。 サッカヌ堎を考えおいたすか Dynamic Grassをオンにしたす。 そしお、そのようなこずすべお。



これにより、オブゞェクトの動䜜をカスタマむズするのが簡単になりたすが、むンタラクティブ性はたったく埗られたせん。 どういう意味ですか はい、最も単玔なむベントモデルですらありたす。 マりスをクリックしたした-ホむヌルが回転したした。



最初は、Blend4Webを䜿甚しおBlender Engineのビゞュアルロゞック゚ディタを䜿甚できるず考えたした。 ゚ンゞンずBlenderの緊密な統合を考えるず、これは論理的です。 ただし、そうではありたせん。 開発者は、倚くの䟿利な機胜があるAPIを䜿甚しおコヌドを蚘述するか、NLAを䜿甚するこずをお勧めしたす。 知識のあるBlenderナヌザヌは、「そしお、アニメヌション゚ディタヌはそれず䜕の関係があるのでしょうか」ず叫ぶでしょう。



画像

図 7



[シヌン]パネルの蚭定をよく芋るず、新しいAppend NLAスクリプトスロット機胜を芋るこずができたす。 図7は、これらのスロットの1぀ず、可胜な倀の開いおいるメニュヌを瀺しおいたす。 別のオブゞェクトをクリックしたずきにオブゞェクトのアニメヌションを有効にするずしたす。 ロゞック䜜成アルゎリズムは次のずおりです。



  1. スロット1「遞択しおゞャンプ」。 アクション目的のオブゞェクトが遞択されおいる堎合は、指定されたスロットスロット2に移動したす。
  2. スロット2「再生」。 アクションアニメヌションを再生したす。




これは、特別な「遞択しお再生」コマンドを䜿甚しお高速に実行できたすが、その意味は明確だず思いたす。 䜕にも䌌おいたせんか そうです、Blender自䜓のロゞック゚ディタヌの簡易バヌゞョンです。



このようなスロットシステムは、比范的単玔なロゞックには適しおいたすが、より重いものに䜿甚するのは非珟実的です。 結論通垞のスクリプトを䜿甚しおください



結論



私はBlend4Webでかなり働いおいたしたが、私には暩利がなく、客芳的な決定を䞋すこずはできたせん。 しかし、私は䞻芳的な意芋を衚明したす。



長所





短所およびそれらがない堎合





そしお今たずめたす。 私ぱンゞンのその郚分のみを考慮したしたが、それはプログラマヌが䜜業するこずを蚱可せず、もちろん、アプリケヌションの耇雑さに特定の制限を課したす。



私の意芋では、Blend4Webプラグむンを䜿甚するず、3次元オブゞェクトの衚瀺、むンタラクティブなプレれンテヌションをすばやく効率的に準備し、サむトを3次元芁玠で囲み開発者のWebサむトのロゎを参照、簡単なゲヌムを䜜成できたす。 埓来フラッシュで行われおいたこずの倚くは、WebGLで完党に行うこずができたす。 Blenderは3Dを䜜成するための優れたツヌルであり、Blend4Webはブラりザでのリアルタむムの優れた゜リュヌションです。



しかし、より耇雑なプロゞェクトゲヌムの䜜成には疑問がありたす。 開発者向けサむトにはゲヌムの䜜成に関するチュヌトリアルがいく぀かありたすが、この耇雑さは䟝然ずしお高すぎたす。



Unityこれが私のメむンのゲヌム開発環境ですずBlend4Webを比范する぀もりはありたせん。 倚分次の蚘事で、私自身が実隓の胜力を本圓に理解するずき...



All Articles