自習室スマートフォン用の表示で見る自習室こもりますこの広告は、90日以上更新していないブログに表示しています。.ShaderはじめにUnityには、glBegin(GL_LINE_LOOP)的な、直接ラインを引く手法はありません。メッシュを食わせて、それらしいShaderでラインっぽい描画にする必要がああります。メッシュのすべての辺を細長い長方形として扱って、GLを直接叩いて描画する力業な対処を行っていました。使う手法についてまとめます。中の物を参考にさせていただいております。形式に組み替えるMeshはありものを使うことにします。描画すれば良いようにします。以下のコードで、使われているメッシュのトポロジーを調べることが出来ます。指定する図形のタイプの事で、おなじみ床井先生のサイトGLUTによる「手抜き」OpenGL入門で言うと、GL_TRIANGLESGL_QUADSGL_LINESGL_LINE_STRIPGL_POINTSが選べる、という事を意味しています。中身を見てみると、Cubeの場合、上の図の順番で頂点が定義されています。なっているのですが、3つずつで三角形を作っています。この図で言うと、Mesh.vertices[0]Mesh.vertices[3]Mesh.vertices[1]の3点で一個目のポリゴンを形成している、と言うことです。この3頂点は外から見たとき時計回りの順で指定されているので、カリングしても描画されます。三角形を作るべく3つずつ頂点のインデックスを格納している配列です。トポロジーをMeshTopology.Linesにしたメッシュでは、このインデックス配列に2つの頂点で1つの組(線分)となるようにセットしていきます。indices;}こうして作成したインデックス配列を、もう一度meshにセットしてあげれば、トポロジーがLinesになったメッシュの完成です。正しく組まれたMeshは、シェーダで2頂点間に一直線に引かれるフラグメントを作ります。従って、シェーダは非常にシンプルな物になります。正しく指定すると、ラインですが透過も可能です。ここでは重ねていくとサチって発光しているような表現になるBlendを施してみました。することで、アンチエイリアスがかかります。最後にサンプルを動かすプロジェクトをGitHubに上げました。GitHub今回の手法だと、カメラからの距離にかかわらずすべての辺が1pxで描かれることになり、遠くなると線が密集してつぶれてしまいます。ライティングの効果は反映されません。同一ソリューション内ライブラリ参照と、ライブラリプロジェクトへの静的リンクライブラリのリンクの仕方。(2)月別アーカイブはてなブログをはじめよう!AMANEさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。