はろーはろーはろー
気が付いたら2月だよ!何も進捗ないよ!
ここ最近Unityでいろいろやることがあるんですが、だからといってUnityで何かやるわけでもないです。
ただ、ここら辺をやるうえでShaderというのが大きく出てきてしまって正直言ってかなりつらいです。
何がつらいっていうと「そもそもShaderの動きが理解できない」というのが原因です。
なのでメモとしてShaderの動きや役割、簡単なソースをここに置いておこうかなと思いました。
気が付いたら2月だよ!何も進捗ないよ!
ここ最近Unityでいろいろやることがあるんですが、だからといってUnityで何かやるわけでもないです。
ただ、ここら辺をやるうえでShaderというのが大きく出てきてしまって正直言ってかなりつらいです。
何がつらいっていうと「そもそもShaderの動きが理解できない」というのが原因です。
なのでメモとしてShaderの動きや役割、簡単なソースをここに置いておこうかなと思いました。
さて、ではShaderとはなんでしょう?
なんだかんだで聞くんですが「そもそもShaderってどうやって動いてるの?」
「こんな動きをするのは何で」というのがわからない人もいると思います。
人間はわからないものに対しては好奇心が増すのですが理解できないものにはモチベーションが下がる生き物です。
私も今段階でShaderについて全く理解ができていません。
というのもShaderに関してのサンプルにはC/C++みたいな「おまじない」という感じで
書かれているものも多く、それなのにそのことを覚えておかないと動かないっていうのが多いです。
そのせいで、こうすればこう動くっていうのが理解できにくくなってしまうんですね。
Unityでは基本的に簡単なシェーダはすぐに用意できるようになっています。
それが災いか、うまく呑み込めないというのがありだいぶ前からやっていても結局理解できないままです。
なのでこの記事では私が詰まるところを含めつつShaderについて書いておこうと思います。
Shaderはそもそも3Dゲームにしか使われているわけではありません。
いやいや、ドットゲーでシェーダ使ってる感じはしないよ?って人。私です。
さらに言ってしまえばドットを描画している画像もしくはドット本体は、何で描画しているんでしょうか……?
最近のゲームは2Dの画像がこんな感じで描画されています。少しわかりずらいでしょうが、三角形が二つくっついていてキャラクターが描画されているんです。
この三角形ってなんでしょう?
答えは板です。くっついた二つの三角形を板としてそこに2Dの画像を張り付けて”3D上に描画しているんです”
ちなみにこの画像を描画するのにもShaderは使われています。
え?なんか特殊な演出をするのがShaderでしょ?って人は私です。
Shaderは画像や3Dモデルを私たちが見ている空間に表示するために使われています。
ちゃんと言うと、カメラに表示するためにShaderで計算を行って描画しているということです。
ちなみにここで固定パイプラインとかなんとかいろいろ出てきますが、少なくても今は
Shaderを使うことで描画ができているということを知ってください。
じゃあなんでShaderを使うと描画ができるの?
例えばさっきの画像をゲーム画面の真ん中に置こうとします。
でも、ゲーム画面の真ん中、カメラの真ん中ってどこなんでしょう?
カメラの見ている画面というのは実はその見ている位置がわかりません。多分。
そのためさっきの画像を、例えば10x10に置いたとしても
カメラの位置とは関係ないところで置かれているということになってしまいます
そこで画像をカメラの見ている範囲に置けるようにShaderを使って画像の位置をカメラの位置に置けるように計算しているのです。
中途半端ですがここまで。
少しまとめると
Shaderを使うことで私たちが見ている範囲に画像やモデルを置くことができるってことです
PR
COMMENT
カレンダー
最新記事
(02/05)
(01/22)
(06/01)
(12/18)
(12/18)
最新コメント
プロフィール
HN:
あい。
年齢:
31
性別:
非公開
誕生日:
1994/01/09
自己紹介:
仕事でunityしつつ、3Dとかやるので
そろそろどこに向かってるのか分からなくなってきた人
めーるあどれす:
nokutan_aiあっとyahoo.co.jp
このブログはリンクフリーです。
バナーのURL
"https://blog.cnobi.jp/v1/blog/user/ffb3f4a3a70931da92ac361f9c87596b/1408110435"
になってると思います。
@AI_nohito からのツイート
そろそろどこに向かってるのか分からなくなってきた人
めーるあどれす:
nokutan_aiあっとyahoo.co.jp
このブログはリンクフリーです。
バナーのURL
"https://blog.cnobi.jp/v1/blog/user/ffb3f4a3a70931da92ac361f9c87596b/1408110435"
になってると思います。
@AI_nohito からのツイート
カウンター