株式会社 明和製作所

BLOG技術者ブログ

歯車・減速機・ギヤードモータCG動画 制作秘話

2025.02.18

こんにちは。今月から何回かブログを担当しますYMTechです。歯車技術が専門ですがパソコン関連も特技で、歯車設計のプログラム作成やゲーム関連の趣味から高じて独学でCG動画制作をやっています。

先月公開した同心軸・遊星ギヤードIPMモータ(IPP-112シリーズ)紹介動画は、遊星減速機開発を進める中で、当初減速機部分の技術紹介や社内教育用に制作を開始しましたが、製品プロモーションYouTube動画をUPしてはと提案しました。まあ、自らの首を絞めたようなものです(笑)

今回動画制作手法についてブログでの紹介を依頼されましたので、できるだけわかりやすくご説明できればと思います。

まずは全体の概要を図式で紹介すると次のようになります。

今回は製品特徴と「3D Model Mover」を中心に解説します。

———————————————————————————————————

1.同軸遊星ギヤードモータ特長

2.「3D Model Mover」(製作した3Dモデルを動かすアプリ)
 2-1 開発に使用したツール
 2-2 「3D Model Mover」特長
 2-3 シーケンスファイルでできること
 2-4 シェーディング(Sphere Mapを使った金属表現)
 2-5 表面粗さを考慮したシェーディング

3.まとめと予告

———————————————————————————————————

1.今回紹介の製品特長

仕様詳細は、動画製品ページにてご紹介しています。

遊星減速機部分の設計はExcel VBAで製作した歯車設計ツール「YMT歯車計算アプリ」を使っていますが、その内容についてはまた次回ご紹介できればと思います。

基本コンセプトは

「商用からDC電源までをカバーし機械に収まるコンパクト・ギヤードモータ」

特   長

・弊社は減速機からモータまで一貫生産。その強みを活かしたギヤードモータ(コンパクト)

・IPMモータは高効率であり冷却ファンがなく、騒音だけでなくコンパクト化に寄与

・遊星および太陽歯車は焼き入れ後歯切り加工を実現。焼き入れ歪のない高精度歯車なので低騒音

・遊星減速機キャリアは弊社複合旋盤による一体加工により、高剛性・高精度を確保

・キャリアは両端軸受支持構造により高剛性を確保(図1. 参照)

2.「3D Model Mover」

プロモーション動画、組立手順説明、動作説明などに使用できるアプリケーションです。

「3D Model Mover」は開発中の減速機の動作を説明するために製作。2Dのアニメーションも作りましたが理解してもらえず3D化をトライ。Trial & Errorをどれだけやったかわかりませんが久しぶりに4時間睡眠(65オーバーでは疲れます)。。。しかし気になると寝られない性格。3D画像データは「Blender4.2」で製作しました。

2-1 開発に使用したツール

ほとんどFree  有難うございます<(_ _)>
・Visual Studio 2022:「3D Model Mover」アプリ開発

・DxLib                     :DirectXを使う2D,3Dライブラリです(Free)

言語はC++       シェーディングは個別対応

2-2 「3D Model Mover」特長

・3Dモデルを自由に動かすことができます(キー操作、特にシーケンスファイルでほとんどのことができます。シーケンスファイルにて組立手順も動画で表現できます)

・拡大・縮小ができます

・スピードのUP/Downができます

・視点移動ができます

・部品ごとに表示ON/OFFができます

・部品ごとに透明処理ができます

・金属表現ができます(なるべく実物に近づけるように)

・表面粗さによる光の乱反射を考慮できます           シェーディングについては後述

・テロップを流すことができます

・音楽、ナレーションを流すことができます

2-3 シーケンスファイルでできること

シーケンスファイル(*.seq) にtextコマンド列を書くことで、以下のことができます

①部品毎もしくは全部品の指定位置に移動(徐々に移動も可能)

指定された割合で全部品の展開・縮小(徐々に展開・縮小も可能)

部品毎もしくは全部品の透明度設定(徐々に設定透明度に持っていくことも可能)

部品毎もしくは全部品の表示ON/OFF

視点変更(徐々に視点変更も可能)

運転スピード設定(徐々に指定スピードにすることも可能)

拡大・縮小(徐々に指定値に持っていくことも可能)

次のシーケンスコマンドに移行するまでのタイマー設定

最初からシーケンスコマンドを繰り返すループ設定

バックミュージックを流しながらナレーションを流せます
 ループ再生ON/OFF、音レベル設定可

部品ごとにメタリック用Sphere Map指定と強度指定できます(後述)

部品ごとに表面粗さ(後述)を指定できます

部品ごとに環境光強度設定できます(default0)

ステージのバックカラーをRGB設定できます

シーケンスファイルから別のシーケンスファイルを読み込み実行できます

リアルタイムに拡大率、展開率、視点位置などの状況表示ができます
 見ながらシーケンスファイル編集すると速く製作できます

テロップを流せます(色、サイズ(24, 48, 72,96,108 Pixel選択)、位置設定、\nで改行できます)

⑱必要に応じて追加あり(使いだすと色々アイデアが)

*今回のYouTube動画ではシーケンスにて全て動作設定しています。
 その録画を「AviUtl」にて音楽・テロップ含め編集しました。

2-4 シェーディング(Sphere Mapを使った金属表現)

「3D Model Mover」の大きな特徴として、金属表現・表面粗さを考慮したシェーディングを行っていることがあります。DxLibに独自のシェーディングモジュールを読み込む機能があったことは救いです。シェーディングはHLSL(Microsoft DirectX 用言語)での記述です。

金属表現の有無の比較を図2、図3に示します。

「Blender」と同様と思いますがSphere Map手法を使います。

金属は自身の色だけでなく金属が反射してきた光(物)が目に入ります(図4. 参照)。その周囲の物の代替として半球体(Sphere Map)を用います。視点と表面の角度から目に入るSphere Mapの色を持ってきます。

取ってきたSphere Mapの色と自身の色(ディフーズカラー)と合わせて表現します(当然、Phongシェーディングを考慮し、それぞれの色強度を計算します)。GPUを使ってpixel毎に計算描画します。

GPUパワーすごいですね!    今回、使用したSphere Map(Free)を図5.に示します。

図5.のSphere Mapだけでは表現できないものもあります。ウォーム歯車のホイールは銅合金が主流ですが、図6. (a) 従来のPhongシェーディング、(b) 図5. Sphere Map(Free)を使用した場合、(c) ホイールのみ図7.のSphere Mapを使用した例です。

明らかに、材料に合ったSphere Mapが必要です。開発した「3D Model Mover」は部品ごとにSphere Mapを割り当てることができます。

2-4 表面粗さを考慮したシェーディング

ここでの表面粗さとは光の乱反射率を言います。粗いと乱反射率が高くなります。

Wikipedia を参考にしますが、図8.に実写真とランバートシェーディング(フラットシェーディング)での比較を示します。表面が粗くなってくると外側が乱反射により白く見えます。

これを補完するためOren–Nayar反射があります。同じようにDesney物理ベースシェーディングがあります。当方製作は物理ベースではないですが反射の考え方のみ考慮しました。

Oren–Nayar、Desneyの考えをシェーディングに取り入れてそれぞれ製作。

参考までに、Oren–Nayarを取り入れたシェーディング例を図9.に示しますが、金属表面(粗さがない)においても粗さ強度0.5 程度は必要な気がします。 取り入れない場合は端面が黒すぎるような。 (Oren-NayarとDesney方式の差はほとんどありませんでした、評価結果では)

*図9.ではSphere Mapも同時に取り入れて球らしく。

3.まとめと予告

できるだけわかりやすくと思いましたが、かなりオタク気味になってしまったかも知れません。。(汗)

「3D Model Mover」はシェーディング含めさらに改良中です。

この辺りにご興味ご質問、また同様のCG動画を制作したい等ご要望ありましたら「お問い合わせ窓口」よりご連絡下さい。

 次回は歯車設計ツール「YMT歯車計算アプリ」と「Blender」による3D化などをご紹介したいと思います。

DOWNLOAD ダウンロード

ユーザー登録をして頂きますと、「製品図面ダウンロードサービス」等の
弊社情報公開サービスにアクセス頂けます。是非ご利用ください。

詳しく見る

株式会社明和製作所MEIWA MFG. CO.,LTD.

〒819-1106
福岡県糸島市志登130-1
TEL 092-322-3111
FAX 092-322-6888
ページトップ