お米 is ライス

C#やらUnityやらを勉強していて、これはメモっといたほうがええやろ、ということを書くつもりです

ShaderLab

【Unity・CG・Shader】通信環境が悪くてノイズが入って乱れまくってる映像風のポストエフェクトシェーダー

概要 オペレーターズサイドのプレイ動画見てて作りたくなったので サンプル ソースコード for free 説明はコメントを参照 値を適当にすると適当に調整できるよ 疑似乱数関数はこのあたりから Shader "Hidden/Noise" { Properties { _MainTex ("Texture", 2D)…

【Cg Programming/Unity】テクスチャ基礎 ~ テクスチャのアルファ値を活用する【順番にやっていく】

お~~~~~ヱ”ッほっほっほっけほっけほっ!今日はこちらのチュートリアルをやっていきますわよ!! en.wikibooks.org en.wikibooks.orgこの節では、テクスチャのアルファ値を活用して描画する方法を学びますわよ! 前回の内容が前提になるのでまずはそち…

【Cg Programming/Unity】テクスチャ基礎 ~ テクスチャを描画する【順番にやっていく】

お~~~~っほっほっほっほっ!!! 庶民のみなさま!今回はこちらをやっていきますのよ! en.wikibooks.org en.wikibooks.org この節では3Dオブジェクト上にテクスチャを描画する方法を学ぶそうですのよ? テクスチャって何ですかですって!?テクスチャは…

【Cg Programming/Unity】ライティング基礎 ~ 鏡面ハイライト②「環境光」【【順番にやっていく】

前回に引き続きこちらのチュートリアルをやっていきますわ! en.wikibooks.org 前回は「鏡面反射」で、今回学ぶのは「環境光」になりますのよ。 環境光 え?環境光とは何かですって? またですの?もう、しょうがありませんわね! 高貴なるものの義務として…

【Cg Programming/Unity】ライティング基礎 ~ 鏡面ハイライト①「鏡面反射」【【順番にやっていく】

皆様、お久しゅうございますわね! ええ、今日はこちらのチュートリアルをやっていきますわ! en.wikibooks.orgこの節では「鏡面反射」と「環境光」について学びますのよ。 長くなるとお肌に悪いから前半と後半に記事を分けますのよ! 今回は「鏡面反射」に…

【Cg Programming/Unity】Basic Lighting ~ Diffuse Reflection【順番にやっていく】

今回はこちら。 en.wikibooks.org この節ではDiffuse Reflection、つまり「拡散反射」というものの描画方法について学ぶ。 拡散反射 拡散反射とは何か。例に上がっているのは月面の反射である。 月の表面は非常に凹凸が激しいがゆえに、入射した光は入射時の…

【Cg Programming/Unity】透過 ~ シルエットの強調【順番にやっていく】

今回はこちら。 en.wikibooks.org この節ではオブジェクトのシルエットを際立たせる効果について学ぶ。 シルエットの強調 例えばガラス製のコップを考えよう。 コップを横から見た場合、全体的に透明で向こうが透けて見えるが、両端に行くにつれて少しガラス…

【Cg Programming/Unity】透過 ~ 描画順に依存しない透過【順番にやっていく】

今回はこちら。 en.wikibooks.org 前節でやったような一般的なアルファブレンディングの場合、描画する順番で最終的な見え方が異なる。 そのようなアルファブレンディングは描画順がオブジェクト単位で決まってしまう環境ではうまく描画されないことがあると…

【Cg Programming/Unity】透過 ~ 透明な物体の描画【順番にやっていく】

今回はこちら。 en.wikibooks.org この節では透過について学ぶ。 サンプル画像として載っている絵画がエッチでかわいい。 透過 例えば色ガラスを覗いたときのように、向こうのものが透けて見えるオブジェクトを描画したい場合、透けて見える景色の色と、色ガ…

【Cg Programming/Unity】Transparent Surfaces ~ Cutaways【順番にやっていく】

今回はこちら en.wikibooks.org この節では描画するピクセルの一部を破棄することについて学ぶ。 ピクセルの一部を表示しない Shader "Custom/Cutaways" { SubShader { pass { Cull Off CGPROGRAM #pragma vertex v #pragma fragment f struct vertexOutput …

【Cg Programming/Unity】Basics ~ Shading in World Space【順番にやっていく】

今回はこれ en.wikibooks.org この節の目的は、頂点シェーダにおいて頂点のローカル座標をワールド座標に変換する方法を通して、その過程で用いる「uniform変数」を理解すること。 オブジェクトの座標をワールド座標に変換する これまで頂点シェーダにおいて…

【Cg Programming/Unity】Basics ~ Debbuging of Shaders【順番にやっていく】

今回はこれ。 en.wikibooks.org 内容 前回までに紹介したように、例えば : POSITIONというセマンティクスをつけることで頂点の座標を頂点シェーダのインプットとして使用することができる。 このように頂点シェーダのインプットとして使用できるパラメータは…

【Cg Programming/Unity】Basics ~ RGB Cube【順番にやっていく】

一日坊主を何としてでも避けるため、中途半端に寝てしまって夜中に妙に冴えてしまった頭に鞭を入れつつ筆を執る。 今回はこちら。 en.wikibooks.org ピクセルの色の指定方法 ピクセルの色はRGBAであらわされる。シェーダをやろうとしてこれ知らん人はおるま…

【Cg Programming/Unity】Basics ~ Minimal Shader【順番にやっていく】

en.wikibooks.orgやっていくぞう! 前にGLSLはチラッとやったことがあるのだけど、CGとかHLSLになると色々書き方が違うのでMinimal Shaderからやり直し。 全部書き起こすのはめんどくさいのでなるべく要点だけにとどめておきたい。 Unityを開いてプロジェク…