2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

[Unity]Shader GraphでRGBシフト作ってみた

Posted at

メリークリスマス!、Iwaken Lab. Advent Calendar 2023の24日目を担当するKuniです。

本記事について

  • この記事ではUnityを使用しますが、インストールが終わっている前提で進めていきます。
  • UnityのShader Graphを使用するので、Package ManagerよりShader Graphのインストールを行っておいてください。

この記事でできること

Shader Graphを使用して、下記画像のようなRGBシフトを作成することができます。
左が元画像、右がRGBシフトの適用後

image.png

RGBシフトとは

色収差やRGBずらしとも言われます。
通常の画像では Red、Green、Blue といった光の三原色はズレることなく同位置にあります。ですが、それを意図的に位置をズラすことで起きる表現になります。

作り方

Shader Graphを作成し、下記画像のようにノードを繋げます。

スクリーンショット 2023-12-24 222507.png

  • Texture2DはBlackboardに設定されたプロパティです。
    このプロパティに任意の画像を設定することで、その画像に対してRGBシフトを行うことができます。上記のノード内では拾ってきた画像を使用しています。
  • Tile And Offset ノードの Offset の部分で UV のズラしを行っています。ここの数値を大きくすることでズラしさらに大きくすることができます。
  • ズラした UV を Sample Texture 2D ノードに入れます。こうすることで画像をズラすことができます。
  • ズラした画像のR、G、B、それぞれを Combine ノードで結合することで1つにまとめ、それをカラーとして出力しています。

最後に

Shader Graphを使用するとお手軽にいろいろな特殊効果を作成することができます。ノードベースなのでプログラムの知識がなくても作成できるのでとても便利だと思います。皆さんもぜひ試してみてください。

明日はIcchyさんによる記事です!ほかにもIwaken Lab. Advent Calendar 2023では面白い記事がたくさんあるので、ぜひ見てみてください!

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?