イラスト、モデリング、Unity、VR関連

unityとかblenderとかvr関連の作業メモ

2019-05-01から1ヶ月間の記事一覧

ShadersLaboratryのサンプルを雑に読んでいく-Miscellaneous

ーShaders ++省略後 頂点シェーダ:VS フラグメントシェーダ:FS ローカル座標のポジション:LPOS ワールド座標のポジション:WPOS +++++ Demo 97 - Texture switch depending player pos 頂点のWPOSを取得し、FSにてプライヤーとの距離を計算、一定…

レンダリング、CommnadBuffer,G-Buffer,Deferred Shading(ディファードレンダリング)について

*細かいところを間違えてる気がしてならないです ++ディファードレンダリングの概要 レンダリングの手法の一つ。ライティング処理の負荷軽減のために使用される。 対比するものとしてフォワードレンダリングがある。 Deferred Shading,遅延シェーディング…

Shader プロジェクション変換について

ShaderLab 定義済みの値と座標空間とその変換について - イラスト、モデリング、Unity、VR関連 の記事のプロジェクション変換についての追加情報を書く。 ++w除算が行われるタイミング Unityの場合、w除算はvertexシェーダ終了後に、返り値となる構造体の…

ShaderLab 定義済みの値と座標空間とその変換について

++座標空間について 3Dのオブジェクトを画面に映しだすとき、各オブジェクトのローカル空間(座標系)から画面のプロジェクション(クリップ)空間に変換する必要がある。 この変換は ローカル空間=>ワールド空間=>ビュー空間(カメラ空間)=>プロジェ…

GLSLの文法

++void mainImage( out vec4 fragColor, in vec2 fragCoord ) flacColorが出力するRGBA-つまり、この変数に代入された値がそのピクセルの色となる fagCoordは現在処理対象となってるピクセルの座標 ++iResolution 描画領域の幅と高さ ++vec2 uv = frag…

Wifi接続出来ているのに、ブラウザにオフラインと表示されてしまう場合

今回の場合は時間のズレが原因だった。 タイムの設定をネットから取得するようにしたらオンラインになった。

OculusGoが起動しなくなった場合の対処法

【工場出荷状態に戻す】Oculsu Goを初期化(リセット)する方法 – cmblog コントローラ、電源ボタン、音量ボタンは正常に作用するが、ホーム画面が表示されず、ずっと起動後の点が3つの読み込み画面で止まったままになる、という症状が起きた。 改善できる…

UnityException: Update your app id by selecting 'Oculus Platform' -> 'Edit Settings'

++エラーメッセージ UnityException: Update your app id by selecting 'Oculus Platform' -> 'Edit Settings' Oculus.Platform.Core.getAppID (System.String appId) (at Assets/Oculus/Platform/Scripts/Platform.cs:37)Oculus.Platform.Core.Initialize…

VoIPを使ってボイスチャット機能を実装する

++資料 Peer-to-Peer Networking Voice Chat (VoIP) Oculus Avatar SDK を使って自分のアバターを Unity で利用する方法を調べてみた - 凹みTips ++注意点 *メソッド名はUnityとNativeで違う *サンプルアプリがhttps://assetstore.unity.com/packages/to…

Unity Scene変更のコールバック,activeSceneChanged,sceneLoaded,sceneUnloaded

++コールバックの順番 sceneUnloaded =>activeSceneChanged => sceneLoaded ++引数の値 A=>Bにシーン移動する場合 OnSceneUnloaded(Scene current) current.name => "A" ChangedActiveScene(Scene current, Scene next) current.name => "Null" next.nam…

Unity Start()の挙動とDontDestroyなオブジェクトのシーンごとの初期化

++Start()はDontDestroyOnLoadしていてもシーン移動時に毎回実行されるが、シーンのロード前に実行されてしまっているっぽい。なので、Start()でシーンによって処理を分岐すると正常に機能しない。 なので、シーン移動のコールバックに処理を書くべき http…

Unity よくわからん挙動集

++ヌルポのメソッドから値が返ってくる Unity意味不明なのだ。Debug.Log(GameStartReady);=> nullDebug.Log(GameStartReady.GameStart);=> trueなんでヌルポのメソッドからtrueが返ってくるのだ? — 光属性のアルモジナ(VRChat勢) (@arumogina) May 20, 2…

Unity Unetを使ったネットワーク対戦の再試合機能の実装について

ここでいう再試合機能とは、同一の対戦相手とワンクリックで再度対戦出来るようにする機能である ++一度、接続を切断しバックグラウンドで再接続して再度対戦する 詳しく分からないが同一IPを使用する場合、 StopHost()=> OnStopHost(){ StartHost() } で…

Unity Unetで各クライアントで音を出す方法

++NetworkServer.Spawnを使う。 SpawnするオブジェクトにAudioSourceを付与するなどしておけばいい。欠点として、SpawnはNetworkMangerに登録したオブジェクトしか出来ないので、音声のみを出したい場合などには不向き ++CommandとClientRpcを使う Comma…

ocurasgo開発関連記事のリスト

*OcurasGoではなく、OculusGoであることに今気が付いた。かなり間違って書いてしまっていて訂正も大変なので、修正はせず、以後、OculusGoと正しい記載をする 現在開発してるゲームで使用した情報を書いている ++OculusIntegration https://developer.ocu…

Unity しょうもないミス + 小ネタ集

++テクスチャの拡大・縮小 Texutre2Dのサイズ変更【Unity】 - (:3[kanのメモ帳] TextureScale - Unify Community Wiki Unityのしょうもないミスと小ネタをここにまとめていく。 ++Shaderで%を使う場合 shaderで%を使って計算する場合、 (int)X%Y; のように明…

Unity OculusGoのコントローラの動きに合わせてHumanoidアバター・モデルの腕を回転させる

とりあえずこれでうまいことできた、ただ一軸回転を制限している。 using System.Collections; using System.Collections.Generic; using UnityEngine; public class BoneMove : MonoBehaviour{ //操作したいHumanoidに付与してるAnimator [SerializeField] …

Unity スクリプトからボーンを操作する

HumanBodyBones - Unity スクリプトリファレンス Animator-GetBoneTransform - Unity スクリプトリファレンス 上記のスクリプトを使用すると、UnityのHumanoidBoneの各関節の参照となるTransformを取得出来るので、それを操作する。 Update()ではなく、LateU…

Unity AnimationControllerには問題ないのにアニメーションが正常に動かない場合

AnimationController内の要素のMotionにAnimationが設定されてないか、間違ったアニメーションが設定されている可能性 このポーズになってしまう場合はNoneになってしまってる

unity アニメーション遷移について

https://hiyotama.hatenablog.com/entry/2015/06/29/090000 ほぼこれらの記事の複写です ++その他参考 アニメーション遷移 - Unity マニュアル UnityのAnimatorControllerのアニメーションのブレンド | Unityを使った3Dゲームの作り方(かめくめ) ++Ha…

unity アニメーション作成のノウハウ

++アニメーションコントローラの遷移矢印をORしたいとき、 普通にcreate transuctionを二重に作ると、矢印を複数持て、これがORとなる。Idle=>A=>B=>Idle=>Cのような動作をさせるとき、B=>Idleが再生し終えたら、とキー入力があった場合の両方あるような…

VeryAnimation トラブル解決集

++膝の曲がったポーズになってしまう VA EditorのBindボタンを押す ++回転は出来るけど、移動が出来ない ボーンの設定画面?的なウィンドウのIKボタンを押す

Unity animationを作ろうとして膝が曲がったり、変な変形をする場合の対処

アニメーションを編集しようとするとこんな感じになってしまう場合 animator欄にセットされてるAvatarが原因。 Noneにするか、別の奴にする。(UnityChanAvatarをセットしたらこうなった) このavatarって一体なにやってるのものかイマイチ分からない。 対象…

unity,アニメーション関連の基礎知識のメモ

++ルートモーション UEの解説であるが、キャラクターのコライダーとアニメーションの動きを連動させるための仕組みっぽい。 Unreal Engine | ルートモーション >以下のブログでも同じような説明がある これをチェックしていると、アニメーションの動きが…

blender 小ネタ集

++ベイクが部分的に出来ない場合 ・小分けにしてベイクする ・何回もやる(片方ベイク出来たと思ったら、もう片方をベイクしたらその出来たベイクが消える、みたいな現象が起きたとき、何回もやってたら両方できた ・複数のメッシュをベイクする場合、ベイ…

standard assertsのthird person charactorコントローラを使うとキャラが浮く場合の対処

こんな風に浮いてしまう場合、Third Preson CharactorのGroundCheckDistanceの値を大きくすればいい。0.2~0.3くらいでいい感じになる(カプセルコライダーの位置に依存するかも

UnityChanパッケージのボイスファイルのファイル名をセリフに置換するスクリプト(ruby)

require 'fileutils' #絶対パスを指定するか、このファイルをユニティちゃんのVoiceフォルダに配置する path = ARGV[0] || File.expand_path("../",__FILE__) #path = "/mnt/c/Users/arumogina/Documents/GitHub/MagicDuel/Assets/UnityChan/Voice" Dir.chdi…

Unity シェーダ関連まとめ

+++++別のシェーダ関連記事リスト Shaderの勉強に役立ったサイト - イラスト、モデリング、Unity、VR関連 ShaderLab 定義済みの値と座標空間とその変換について - イラスト、モデリング、Unity、VR関連 Shader プロジェクション変換について - イラスト…

サウンドマネージャー2

オブジェクトにアタッチして使用、即座にならすか任意のタイミングで鳴らすかなどはパラメータで調整 ボリュームなどの共通で使用するパラメータはstatic変数で管理 using System.Collections; using System.Collections.Generic; using UnityEngine; public…

サウンドマネージャー1

using System.Collections; using System.Collections.Generic; using UnityEngine; using System; public class AudioManager : MonoBehaviour{ static Dictionary<string,AudioSource> AudioDic = new Dictionary<string,AudioSource>(); public static float SEVolume {get;set;} = 1.0f; public s</string,audiosource></string,audiosource>…