- 投稿日:2020-05-15T23:27:05+09:00
シンプルなImageEffect その8。VPOSを使った走査線
Twitterにアップした走査線ImageEffectのシェーダコードを貼っておきます
シンプルなImageEffect。VPOSの使用による走査線(ScanLine)表現。
— MIYAKE (@ScreenPocket) May 12, 2020
VPOSを使うので#pragma target 3.0が必要。
幅調整できるようにしてみたけど使い途有るかなぁ・・・ pic.twitter.com/K4giwgRjRdポイントは
- VPOSを使っているので #pragma target 3.0が必要
- _Sizeの値を調整する事で走査線の太さを変更できる(ただ、そんな機能必要かな??普通太さ1pxでは?)
- 走査線は固定色で潰すのではなく、colorの2乗で明度を落としつつ彩度を上げるような合成にして滲みを表現してみた
って感じですかね。
ScanLine.shaderShader "ScreenPocket/ImageEffect/ScanLine" { Properties { _MainTex ("Texture", 2D) = "white" {} _Size ("Size", Float) = 1 } SubShader { // No culling or depth Cull Off ZWrite Off ZTest Always Pass { CGPROGRAM #pragma vertex vert #pragma fragment frag #pragma target 3.0 #include "UnityCG.cginc" struct appdata { float4 vertex : POSITION; float2 uv : TEXCOORD0; }; struct v2f { float2 uv : TEXCOORD0; }; v2f vert (appdata v, out float4 outpos : SV_POSITION) { v2f o; o.uv.xy = v.uv; outpos = UnityObjectToClipPos(v.vertex); return o; } sampler2D _MainTex; float _Size; fixed4 frag (v2f i, UNITY_VPOS_TYPE screenPos : VPOS) : SV_Target { half4 col = tex2D( _MainTex, i.uv ); float rate = frac(screenPos.y * ( 1.0 / _Size )); col = lerp( col, col*col, round( rate ) ); return col; } ENDCG } } }線を固定の色(例えば黒)で塗りつぶしたい場合は col*col の部分を、fixed4(0,0,0,1) に置き換えてもらえば対応可能かと。
- 投稿日:2020-05-15T20:27:03+09:00
無料でUnityをバージョン管理する!その3 ローカルsvn編
今回はGitでローカル管理を紹介しようと考えておりましたが、検証した結果…問題があることが発覚しました!なので今回は代替案としてローカルsvn(Subversion)でUnityを管理する方法を紹介したいと思います。実は個人開発の場合、こちらの方が楽かもしれないのでぜひ試してみてくださいね。
ブログ本文はこちらです。
https://tedenglish.site/how-to-manage-unity-project-3/
- 投稿日:2020-05-15T20:27:03+09:00
無料でUnityをバージョン管理する!ローカルsvn編
今回はGitでローカル管理を紹介しようと考えておりましたが、検証した結果…問題があることが発覚しました!なので今回は代替案としてローカルsvn(Subversion)でUnityを管理する方法を紹介したいと思います。実は個人開発の場合、こちらの方が楽かもしれないのでぜひ試してみてくださいね。
ブログ本文はこちらです。
https://tedenglish.site/how-to-manage-unity-project-3/
- 投稿日:2020-05-15T19:37:47+09:00
Addressables.LoadAssetAsync を aync/await でスッキリ書く
こんにちは。Unity使い始めて1ヶ月ほどの初心者です。
外部リソースの読み込み事情が面倒すぎて心が折れそうですが
AAS(Addressable Assets System)
を試しているところです。今回はAASでのアセット読み込みを async/await でスッキリ書けたのでメモします。
Addressable Assets System でのアセット読み込み
AASではResources のように同期処理で読み込むメソッドが無く、
基本的にはAddressables.LoadAssetAsync
で非同期に読み込むみたいです。公式ドキュメントによると、以下のように読み込み完了時のイベントハンドラで目的のアセットを取得するよう書かれています。
Addressables.LoadAssetAsync<GameObject>("AssetAddress").Completed += OnLoadDone;async/await を使って書いてみる
もっとスッキリ書けないかなーと模索していましたが、
.Task プロパティが用意されていて、async/await で書けます。GameObject prefab = await Addressables.LoadAssetAsync<GameObject>("HogePrefab").Task参考
- 投稿日:2020-05-15T18:42:05+09:00
【気づきメモ】モデリング初心者が"【鬼滅の刃】炭治郎モデリング【MAYA】"で作り方を学ぶ
My Name is Izumi.月森イズミです。
【鬼滅の刃】炭治郎モデリング【MAYA】動画のモデリングの出来が素晴らしかったです。
そこで一体どんなことをやっているのか、気になりました。【鬼滅の刃】炭治郎モデリング【MAYA】
(https://www.youtube.com/watch?v=q2HJXGssb4Q&feature=youtu.be)
このメモの想定読者は、モデリングソフトを数回触ったことのあるモデリング初心者です。
あたし自身、専門的な知見はありません。その点ご留意いただければと思います。使うモデリングソフトはmayaが好ましいと思います。しかし工程を脳内変換できる方であれば、他のソフトでも可能かと。
動作実行ソフトはUnityを使っています。
以下、動画を見た制作過程のメモです。
全工程
0:08 分割1のキューブを分割1でスムーズ化して顔を作っている
0:11 シンメトリの軸をオブジェクトxにしている0:12 右上のツール選択表示ボタンから、ツール選択ウィンドウを表示している
ツール選択ウィンドウから、ソフト選択を使っている(減衰率は1)
アトリビュートエディタよりオブジェクトの透明度を繁文に下げている
顔正面
0:21 ソフト選択と、エッジループ(ソフト選択)を使って、顔の大きさを調整している
メッシュ表示からソフトエッジを選択している(様子)横顔
鼻
減衰半径2.56のソフト選択をしている
減衰半径1と2.56を行ったり来たりしている首まわり
減衰半径7または13のソフト選択をしている
耳
(耳が急に現れた( ̄▽ ̄;))
唇、目の枠を調整している
唇は大きめに取り、下絵の線が最も底部になるように鼻
鼻下は多角的に見て作っている
下絵と違って、耳の前を持ち上げている
唇に神経を払っている
テクスチャ
下絵をテクスチャに投影している
UV>平面>投影マニピュレータから
フィット対象:バウンディングボックス
投影元:Z軸(デフォーマの前に投影をチェック)白目、黒目は別パーツずつ(球体)
球体の中心は、瞳の中心にライティングからフラットライトを充てている
白目を消して、下絵の白目でも違和感ないか確認している黒目は奥行をつぶして楕円にしている
まぶたをかぶせている既定のライティングの使用を使って確認している
まつ毛
右にまつ毛を付け、左はまつ毛無し
右でまつ毛の形を調整し、ミラーリングした左で、顔の形を調整している眉毛
眉毛は飛び出している
少し浮かせている
ワイヤーフレームつきシェードで確認している髪の毛
髪の毛は顔より荒い
縦9分割、横2分割程度で作っている減衰半径2で調整している
髪と一緒に目も調整している
髪の先は凹にそらせている真っ黒に(テクスチャを充てて)全体シルエットを確認している
もみあげは合成して、横2分割から調整している部分がある
髪のポリは放射状に構成されている
白目のシャドーを入れている
#ボディ
(ボディが急に現れたヾ(;´▽`A``))
洋服は、押し出しオフセットを使って、後で内側を消しているバックルへのこだわりすごい!
歯を作っている
目の堀を単色で塗っている
下絵の色をコピーして、髪のテクスチャを作っている
マルチカットして、ハイライトする部分を作っている
色マップにUVを置いている(UVマップを描くのではなく、配置している)基本的に、シャドーや色が変わる部分をマルチカットしてポリを作り、テクスチャを張っている!
千鳥格子の境目にポリがあたらないようにしている
ヒストリを削除した
リグ
15:32 なんか致命的なエラー出た。
(リグを読み込んだ?)耳の中のラインを描いた
下絵から切り取ってボタン、ピアスを描いた
リグのボーンを伸ばして、アウターと接続した
ここまでmaya
Unity
シェーダーはUnity拡張エディタである、Shader Forgeを使っている様子
EverydayMotion Pack Freeアセットを使って走らせた。
mayaに戻って、コンポーネントエディタでリグの位置を数値で調整した。
アウターの下半身にはclothコンポーネントを使った。(max Distance =1)
mayaに戻って剣を作った。テクスチャは下絵からとっている。
手の筋のしわを描いた。
以上、いろんな気づきを得られた動画でした。
月森
- 投稿日:2020-05-15T10:40:05+09:00
XcodeのiOSシミュレーターとUnityビルドによるテスト
■Unity側
Player Settings->Other Settings->
TargetSDK->Simulator SDK に変更シミュレーターはMetalに対応してないというエラーが出るので、
Player Settings->Other Settings->Auto Graphics APIの
チェックを外すPlayer Settings->Other Settings->Graphics APIに
OpenGLES3、OpenGLES2を追加この状態でXcodeビルドを作る
■Xcode側
Xcode->Preferences->Components->iOSのバージョン一覧が表示されるので、使用したいものをインストールXcode->Open Developer Tool->Simulator でシミュレーター表示
Hardware->Device->OS選択->機種選択 で指定デバイス向けのテストができる。
後はXcodeでRunするとアプリがシミュレーター内に入るので、
それを選択する。
・・・が、めっちゃ重い。ファンが全開で回ってる
結構良いMacBookとかじゃないと細かい動作検証は厳しいのではないかと思いました。
解像度対応できているかや、画面遷移、ボタンチェック、ぐらいならできなくはなさそう。