Unity
はじめに (界隈には今さらな技術かもしれませんが…。) あるメッシュを大量にレンダリングしたいとき、Unityではいくつか方法がありますがGPU Instancingはその中で強力な手段の1つです。 特に今回はUnityが用意している2つの描画用API Graphics.DrawMesh…
前回に引き続き、ComputeShaderを使っていろいろ試行錯誤していきます。 taiga.hatenadiary.com 前回は最終的にGPUまで登場させてUnity関係なく四則演算をちょっとやっただけだったので、今回はオブジェクトを1つ回転させて見るところから始めます。 まずは…
はじめに なにはなくともCompute Shaderに挑戦してみよう!の回です。 いくつか文献をあたって学んだこと、そして実践したことなどをまとめています。 複数回にわたる予定です。その1回です。 (いきなり余談ですが、Compute Shaderに関する書籍やサイトっ…
はじめに Vol.3 の読書メモは今回で終わり。 taiga.hatenadiary.com 最後もどーんと、ノートのスクショです! 第14~16章 第17~19章 たぶんこんなんだろう、という用語の理解をまとめたメモ。(違ってたら直す。) Name 名前 説明 カラー 動画 Norm…
最近知ったロンドンのミュージシャン、Bakarにすごいハマっています。ランニングのお供に最適。 さて、今日も続きをやっていきます。 taiga.hatenadiary.com といっても、今日はノートのスクショが主です。 非常に難しい部分で、本書でも「難しいから細かい…
約半年ほど、時間を開けてしまいましたが、こちらの読書記録シリーズの続きです。 taiga.hatenadiary.com taiga.hatenadiary.com もはや自分にとって教科書みたいなシリーズです。(印刷してホチキスで止めている。) vol.3は全18章(改訂ではさらに+1章らし…
はじめに Vol.1を読んで勉強になったので、引き続き暇な時間にVol.2を読みました。 taiga.hatenadiary.com あ、Boothのリンクも貼っておきますね。 xjine.booth.pm 学んだことのメモ(章ごと) 1.スクリプトからシェーダの値を設定する Materialに対してだっ…
vol.1を読んだ勢いでvol.2を読み始めた。 booth.pm 第7章まで読んでShader Variantが登場したので、まとめ記事を上げる前にここだけ別途メモを残しておく。 まず、Variantというのはググると「変異体」とか「変形」みたいな言葉が意味としてまず出てくるけ…
はじめに 仕事でShaderLabのことを調べていると各所で紹介されているシリーズ本、のその1冊目を読み終わった。 booth.pm というのもちょうど今、コロナの影響などでvol.3がセール中だったので積読を1冊増やす代わりにちゃんと読もう、となったわけです。 一…
ラムダ式を使えるようになりたいと思って、人様の書いたコードを見様見真似で書いているうちに雰囲気を掴めたので簡単な例を出してまとめておく。 やることは与えられた数値の配列から正の数値だけに絞るという超簡単なもの。 まずは素直に... using System.…
はじめに Unityで仕事を初めて2ヶ月が経って、コルーチンを使った非同期処理みたいなのはスムーズに書けるようになってきたが、周りはUniTaskとか使っていてレビューのたびに「え、ここってこういうことなんですか?」みたいなコメントをして人のリソースを…
●学んだことメモ 「対象のオブジェクトをフリックで回転、それからピンチイン・ピンチアウトできるスクリプト書いて~」って言われて着手。 最初はデバッグしながら進めたかったので「マウスのクリックで擬似的にやるか~」と思って Input.GetMouseButtonDow…
SNSシェア機能と仰々しく書きましたが、つまりはShare Extensionを表示させる方法です。 (ちなみにShare Extensionという用語はAndroid /iOSで共通なんでしょうか?まあどちらにせよ意味は通じると思いますが。) ググってみるといくつか方法が出てきますが…
※動きます。 Inspectorの様子 メモ child = new GameObject("Fractal Child").AddComponent<Fractal>(); 再帰させたいだけなのでただのGameObjectを作成してこのコンポーネント自体をアタッチしている。 float t = i / (maxDepth - 1f); t *= t; ...... mats[i, 0].co</fractal>…
こちらの続きです。 Meshを無数に生成しそこにPerlinNoiseをかけることで地形っぽい形状を作り出します。 この部分がキモ。 というか、なるほどー、となった。 「1つの四角 = 2つの三角 = 6つの頂点」 // 1つ目の三角 triangles[tris + 0] = vert + 0; trian…
特に面白みはないけどスクリプトから動的にMeshを描画することができたので今日は満足。 というかVEXでおんなじようなこと書いたなぁ。 参考 www.youtube.com
さきに使ったスクリプト貼っとく。 gist.github.com 学んだこと ①スクリプトからプロパティへのアクセス id = Shader.PropertyToID("_Color"); ... mat.SetColor(id, Cd); シェーダーのプロパティへは SetXXX みたいなメソッドでアクセスができるっぽいのだ…
あるオブジェクト(親)に対してInstantiateで子オブジェクトを任意の数生成したり、あるいはそのオブジェクトの子オブジェクトをまとめて消したりしたいケースは多い。 [ContextMenu("XXXX")] はコンテキストメニューに"XXXX"の名前で新たに項目が追加され…
unityアプリの自動iosビルド化に頭をかかえる日々。 そういった頭痛の種の中でも先週一番大きかったのがerror: exportArchive: "XXXX.app" requires a provisioning profile. ...つまり「お前が指定したplistにはProvisioning Profileに関する項目がないぞ!…
ちなみに コメントにひたすらメモを残す邪悪な手段でUnlitShaderを完全に理解した。 pic.twitter.com/3eZfocfIUC— 0kawara (@dn0t_) 2020年1月11日 あらためて Carbon めっちゃ便利だな、と思った。ここまで長くても特に問題ない。 参考 booth.pm amagamina.…
はじめに 読んでね。 nn-hokuson.hatenablog.com できたやつ 学んだことメモ 上のナンバリングに沿ってシェーダを記載。 ① fixed4 frag(v2f i) : SV_Target { fixed4 black = fixed4(.1, .1, .1, 1.); fixed4 red = fixed4(.9, .2, .1, 1.); float x = step(…
ちょうど1年前にこの講座でUnityにちゃんと入門した。 Udemy - ユニティちゃんが教える!初心者向けUnity講座 そのときはまさかこんな形でUnityエンジニアにジョブチェンジするとは思っていなかった。 ただこの講座で学んだことはすっかりどこにもメモが残さ…
Unityのエディタ拡張の方法の一つとして自作のメニューバーを作るときに使えるAttributeがあります。それがMenuItemってやつです。 一番単純な例として、Asset/Editor/CustomMenu.csというスクリプトを以下のように書きます。 using UnityEngine; using Unit…