非写実的レンダリング

出典: フリー百科事典『ウィキペディア(Wikipedia)』

出典: フリー百科事典『ウィキペディア(Wikipedia)』

非写実的レンダリング (Non-Photorealistic Rendering、NPR) とは、非写実的なコンピューターグラフィックレンダリングのことである。ノンフォトリアリスティックレンダリングとも言う。

非写実的レンダリングは、写実的レンダリング以外の全てを含むため、様々な画風・用途 (漫画、イラスト、スケッチ、セルアニメ、テクニカルイラストレーション水彩油絵水墨画日本画点描ドット絵など) のために様々な手法が存在する。

3DCGにおけるNPRレンダリング技法[編集]

レンダリング手法[編集]

大域照明 (グローバルイルミネーション、GI) レンダリング
一般的な物理ベースの大域照明レンダラー (Arnold、V-Ray、Cycles等) を使って非写実レンダリングを行うことも可能である。
ただし、大域照明レンダリングを行う場合、シーンに光が増殖しないようにシェーダーがエネルギー保存の法則を満たす必要があるほか、重点サンプリングのためにシェーダー (OSLシェーダー、レンダラー固有のC++シェーダー等) でライトベクトルが使えないなどの制限が存在し[1]、使える非写実的シェーディングモデルが限られてくる。
局所照明 (ローカルイルミネーション) レンダリング (ラスタライザとレイトレーサのハイブリッドレンダリング)
RenderMan/REYES (廃止)やその互換実装 (3DelightのRSLモード (廃止) 等)、Mental Ray (開発終了)、Maya Software、3ds Max Scanline、Blender Internal (廃止)などが、このレンダリング手法に対応している。
シェーディング言語としては、RSLシェーダーやMetaSLシェーダーが使われている。エネルギー保存の法則を満たす必要が無いため様々な非写実的シェーディングモデルが使いやすいものの、反射回数を増やす場合、アーティファクトが起こりやすくなり、反射回数を減らす場合、補助ライトを増やす必要がある。
ラスタライズレンダリング
ゲームエンジンなどで使われている。
シェーディング言語としては、GLSLシェーダーやHLSLシェーダーが使われている。ラスタライズだけでなくレイマーチングや画面空間レイトレーシングなどと組み合わせる事もある。アーティファクトが起こりやすい。
ベクターレンダリング
ベクターレンダラー (Maya Vector、BlenderのFreestyle等) が存在し、エッジレンダリングやベクター画像出力のために使用されている。

シェーディングモデル[編集]

物理ベースシェーディング (PBS)
物理ベースシェーディングを非写実的3DCGの作成に使うことも可能である。物理ベースシェーディングを使用した非写実的3DCGには、例えば、ピクサーディズニーのアニメーション映画がある[2]
セルシェーディング
セルシェーディングはアニメやセルアニメ風のCGに良く使われているシェーディング法であり、シェーディング結果を主色と陰色に変換する。セルシェーディングを使用した非写実的3DCGには、例えば、アークシステムワークスのセルアニメ風3Dゲーム (GUILTY GEAR Xrdドラゴンボール ファイターズ等) がある。
GUILTY GEAR Xrdでは、「影の入りやすさ」に相当するセルシェーディングの閾値を頂点カラーで制御している[3][4]ほか、「ハイライトの入りやすさ」をテクスチャで制御している[4]
Gooch shading英語版
主にテクニカルイラストレーションに使われるNPRシェーダーであり[5]、寒色と暖色を指定して、二値化の代わりに寒色から暖色の間のグラデーションを生成する。
ランプシェーダー (Ramp Shader)
二値化や単純なグラデーションの代わりに任意の傾斜 (Ramp) を使うシェーダーであり、セルシェーディングやGooch shadingよりも自由な表現が可能。
テクスチャルックアップによる実装もある (ランプテクスチャ)。
Half-Lambert / Wrapped Diffuse シェーディングモデル
非写実的な表面下散乱シェーディングモデル。Half-LambertはValveの初代ハーフライフで使われていたものであり、Wrapped DiffuseはHalf-Lambertを拡張したもの[6]。ハーフライフだけでなく、他のValve製のゲーム (Team Fortress 2[7]など) でも使用されている。
エネルギー保存の法則を考慮していないため、エネルギー保存の法則を満たすには正規化が必要となる。
Dota 2ヒーローシェーダー
ValveのDota 2で使われていたNPRシェーダーであり、Marmoset Toolbagなどのツールでサポートされている[8]
物理ベースシェーディングと同じくメタルネス (金属さ、金属度) を導入している[9]ものの、ラフネス (マイクロファセット理論における粗さ) は不使用となっており、フレネル反射の調整はフレネル強度 (リムライトマップ) で行っている[9]。また、テクスチャによる色相シフト及びコントラスト調整 (拡散/フレネルカラーワープマスクマップ) に対応している[9][10]
エッジレンダリング
漫画の背景CGや青図説明書などに使われるほか、他の用途にも上記レンダリング手法と組み合わせて使用されている。
エッジレンダリングには、ベクターレンダラーだけでなく、一般的なレンダラーによる背面法[4] (裏ポリゴン法[11])、法線パスや深度パスからの輪郭抽出[11]、頂点カラーの塗り分けによる輪郭抽出[12]など、様々なエッジレンダリング手法が使用されている。
ハッチングシェーダー
描画ハッチングの再現に使われる。
ハーフトーンシェーダー
漫画のスクリーントーンの再現などに使われる。
ドット絵シェーダー
古いコンピューターゲームのグラフィックの再現に使われる。
MatCapシェーダー (ペイントマップ)
MatCapシェーダーは法線方向と色をテクスチャで対応させたNPRシェーダーである。スカルプトにも使われている。
Unlitシェーダー
光源の影響を無視するNPRシェーダー。非常に軽いため、ローポリゴン (少ないポリゴン) モデルと組み合わせてロースペックの機器で使われている。
定型ハイライト (Stylized Highlights)
変形可能なハイライト。セルシェーディングと共に使われる。
定型ハイライトはポケットモンスターのアニメシリーズのCGを担当しているOLM Digitalによって開発された[13]

シェーディング補助手法[編集]

法線編集・法線転写
シェーディングで生じる陰の形を単純化するために法線編集や法線転写が使われている。
法線編集や法線転写を使用した非写実的3DCGには、例えば、アークシステムワークスのセルアニメ風3Dゲーム (GUILTY GEAR Xrd等)[14] がある。
各キャラクター専用光源
グローバルな光源の代わりにキャラクター毎の光源を使うという手法であり、アークシステムワークスのセルアニメ風3Dゲーム (GUILTY GEAR Xrd等)[14]バンダイナムコエンターテインメント鉄拳7[15]が採用している。

カメラ投影[編集]

透視投影
透視投影は非写実的レンダリングにおいても一般的に使われている。セルアニメなどに多用される二点透視図法や2Dパンには、レンズシフトが必要となる。
平行投影
平行投影は、説明書などのテクニカルイラストレーションや、2.5Dのゲームに使われている。平行投影のうち、正投影 (オルソ)に対応するソフトウェアは多いものの、不等角投影や斜投影に対応するものは少なく、正投影にLatticeモディファイアを組み合わせることが行われている。
平行投影のうち、クォータービューの不等角投影を採用したものとして、マクシスの『シムシティ4』がある[16]。また、3/4ビューの斜投影英語版を採用したものとして、任天堂の『ゼルダの伝説 神々のトライフォース2』がある[17]
ハイブリッド投影
透視投影と平行投影の両方を組み合わせることも行われている。ストリートファイターIVではキャラクターの投影において、X軸が正射影かつY軸が透視投影のハイブリッド投影を採用している[18]ストリートファイターVではキャラクターの投影において、透視投影と平行投影の1:1の混ぜ合わせによるハイブリッド投影を採用している[19]
嘘パース
非写実的レンダリングでは嘘パースが使われている。例えばカメラからの距離によって画角を変化させていくことが行われている[20]
また複数のパースを混在させることもできる。一部のモデルに対しラティス変形を使う手法、モーフ変形を使う手法 (宇宙戦艦ヤマト2202 愛の戦士たち等で使用[21])、ボーン変形を使う手法 (GUILTY GEAR Xrd -REVELATOR-等で使用[22]) などがある。
パニーニ投影
18世紀の絵画で使われている投影法[23]。直線を保ちながら広い視野角にすることが可能。

エフェクト[編集]

おばけブラー (アニメブラー、Animation Smear)
アニメなどの残像 (モーションブラー) 表現に用いられる「おばけブラー」の3DCGでの再現には、ジオメトリ変形を使う手法や、2D画像を重ねる手法が存在する[24]
おばけブラーを採用したものとして、CyberConnect2の『ナルティメットストーム』シリーズ[25][24]や、ブリザード・エンターテイメントの『オーバーウォッチ』がある[26]
透過光処理
セルアニメの発光表現に用いられる「透過光処理」の再現には、ポストエフェクト機能やコンポジット機能などが使われている。

2DにおけるNPRレンダリング技法[編集]

深層学習による画風変換
様々な画像変換モデルが考案されている。

出典[編集]

  1. ^ Open Shading Language Blender Foundation
  2. ^ 物理ベースのマテリアル Epic Games
  3. ^ GDCの舞台で世界に披露された「GUILTY GEAR Xrd -SIGN-」の「アニメにしか見えない3Dグラフィックス」制作手法 4Gamer.net 2015年3月18日
  4. ^ a b c 西川善司の「試験に出るゲームグラフィックス」(1)「GUILTY GEAR Xrd -SIGN-」で実現された「アニメにしか見えないリアルタイム3Dグラフィックス」の秘密,前編 P.1-2 4Gamer.net 2014年7月12日
  5. ^ 『Real-Time Rendering, Fourth Edition』 P.103 Tomas Akenine-Moeller、Eric Haines、Naty Hoffman 2018年9月10日 ISBN 978-1138627000
  6. ^ Wrap Shading Peter-Pike Sloan、Derek Nowrouzezahrai、Hong Yuan 2011年11月30日
  7. ^ Illustrative Rendering in Team Fortress 2 Valve Software 2007年
  8. ^ Toolbag Version History Marmoset
  9. ^ a b c Dota 2 Workshop - Item Shader Masks Valve Software
  10. ^ DOTA 2 - Character Shader Masks Guide Valve Software
  11. ^ a b 3DCG における画像処理と形状処理の併用によるリアルタイム輪郭線描画 奥屋武志、田中克明、坂井滋和 2016年
  12. ^ 『東北ずん子で覚える! アニメキャラクターモデリング』 榊正宗 2016年5月26日 ISBN 978-4862463265
  13. ^ 『Image and Video-Based Artistic Stylisation』 P.362 Paul Rosin、John Collomosse 2013年 ISBN 978-1447145189
  14. ^ a b 西川善司の「試験に出るゲームグラフィックス」(1)「GUILTY GEAR Xrd -SIGN-」で実現された「アニメにしか見えないリアルタイム3Dグラフィックス」の秘密,前編 4Gamer.net 2014年7月12日
  15. ^ UNREAL FEST 2015レポート「鉄拳7」はなぜ「Unreal Engine 4」を選択したのか 4Gamer.net 2015年11月20日
  16. ^ 『Foundations of Art and Design』 P.105 Alan Pipes 2004年2月1日 ISBN 978-1856693752
  17. ^ The Legend of Zelda: A Link Between Worlds (3DS) Review Brutal Gamer 2013年12月2日
  18. ^ 3Dゲームファンのための「(スーパー)ストリートファイターIV」グラフィックス講座(後編) 今解き明かされる、2D格闘ゲームテイストを3Dグラフィックスで実現する匠のワザ Impress 2011年12月1日
  19. ^ 西川善司の「試験に出るゲームグラフィックス」(10)「ストリートファイターV」における高密度なノンフォトリアル表現,そのレシピを探る・中編 4Gamer.net 2018年11月10日
  20. ^ 日本アニメCGの新たな原動力 Autodesk 3ds Max 2011×PSOFT Pencil+ 3(第4回) CGWORLD.jp 2011年3月4日
  21. ^ CG制作会社サブリメイションのスタジオ見学で「宇宙戦艦ヤマト2202 愛の戦士たち」に登場するコスモタイガーのバージョンKを細かく解説してもらった GIGAZINE 2018年10月31日
  22. ^ 3Dならではの表現をプラスしさらに進化したノンフォトビジュアル『GUILTY GEAR Xrd -REVELATOR-』 P.6 CGWORLD.jp 2016年7月19日
  23. ^ Pannini: A New Projection for Rendering Wide Angle Perspective Images The Eurographics Association 2010年
  24. ^ a b 第五回 超アニメ表現を越える!神作画表現!! CyberConnect2
  25. ^ 文化庁メディア芸術祭、エンタメ部門シンポジウムを開催 松山氏「キャラクターゲームを軽い気持ちで作るな!」 GAME Watch 2010年2月15日
  26. ^ This Is Not An Overwatch Glitch Kotaku 2016年5月19日