20200403のUnityに関する記事は3件です。

Proxy有りでUnityのAndroidビルド

ユーザー名フォルダの直下にある .gradle フォルダの中に

gradle.properties という名前のファイルを作成

作成したファイルをエディタ等で開き、下記のように記述(Http・Https両方必要かは環境による気がする)

gradle.properties
systemProp.http.proxyHost=Proxy指定ホスト
systemProp.http.proxyPort=8080
systemProp.http.proxyUser=ログインユーザーID
systemProp.http.proxyPassword=パスワード

systemProp.https.proxyHost=Proxy指定ホスト
systemProp.https.proxyPort=8080
systemProp.https.proxyUser=ログインユーザーID
systemProp.https.proxyPassword=パスワード

■参考URL
https://answers.unity.com/questions/1621072/how-to-fix-gradle-build-error-when-building-androi.html

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

Unity内のカメラをZoomのカメラとして使う方法

はじめに

そのまま。Unity内のカメラをZoomのカメラとして使う方法です。自分用のメモ書きとして残しておきます。
こんな感じになります


簡単。とってもありがたい

--追記--

ほぼ同じ内容で先に書かれた記事がありました。。。しかもめっちゃ丁寧に。
Unityのカメラ越しにZoomに参加する方法

環境

Windows 10 Pro
Unity(2019.2.13f1で確認。)
Spout(バージョン2.006 update-2かな)
KlakSpout(Unity用のパッケージ、v0.2.4を使用)
Zoomのクライアント(これからもずっと使えるのかは不明)

インストール

UnityとZoomは先に入っているとして、Spotをインストールする。
ダウンロードはここ (できればDonateもね)

もとからチェックはついているけれど、SpoutCamにチェックが必要

次に、KlakSpoutのパッケージをダウンロード。
ふつうにreleaseから最新でいいと思う。

DL後自分のUnityのプロジェクトにPackageを追加
Assetの下にKlakフォルダができる

スクリプトファイル、Asset\Klak\Spout\Runtime\SpoutSender をMainCameraにAddする。
spout.png

終わり。簡単

使い方

Zoomを起動し、ビデオ設定でカメラのリストからSpout Camを選択

spout2.png

あとは好みの設定をして終わり。簡単

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

UnityのNativeAudioPluginについての情報まとめ。

はじめに

同内容は以下ページに保存済みです。
https://machiaworx.net/?p=485

そもそもNativeAudioPluginって、何をするもの?

公式の説明:
https://docs.unity3d.com/Manual/AudioMixerNativeAudioPlugin.html
(日本語版は単に直訳っぽいので、英語版のURLを参照した)

本来だとMixerに追加するエフェクト、の扱いみたい。
ただ、アウトプットを加工した上で出力することが可能なため(Callback関数で処理)、
インプットをすべてスルーしてアウトプットの処理を書くことで、
シンセサイザー等を実装してコントロールすることが可能。
ちなみにGUIを実装してそれと連携して鳴らすことも可能です。

公式リポジトリ
https://bitbucket.org/Unity-Technologies/nativeaudioplugins/src
(公式)

https://github.com/keijiro/MinimumAudioPlugin
(kzrさん作の最小限構成)

利用手順(ザックリと)

  • プラグイン作成
  • フォルダ配置
  • 名前変更(「audioplugin_XXX」という名前にすることでNativeAudioPluginと認識する
  • ミキサー上にエフェクトとして処理を追加(Add Effect)
  • 各種Callback関数が自動的に処理を開始する

プラグイン作成手順

  • DLL作成準備を行う(プロジェクトファイルが存在するのでそれ使いまわしでもいい)
  • リポジトリ内ファイル「AudioPluginInterface.h」を読み込ませる
  • 各種Callback関数の中身を記載する
  • コンパイル
  • 配置・名前変更(上記利用手順参照)

挙動のTips

  • Mixerに入ってきた音に対して自動的に処理する形
  • エフェクト名称についてはプラグイン内部で定義する。(これはどちらかというと実装Tipsかなあ)
  • ミキサー自体をソロにするとCallbackも止まるケースがある模様
  • AudioSourceへの直接的なアクセスは不可能 あくまで出力されたオーディオに対しストリームでアクセスできる

実装Tips

  • Callback処理については通常特段のコントロールは不要。常に鳴るものとして処理を書いておく
  • サンプリングレートは各環境に依存するため、各種構造体から取得する必要がある。
  • Callback関数の引数・戻り値については「AudioPluginInterface.h」に記載がある
  • Callback関数内に分岐によって「書き込まない」処理を行うとグリッチが発生するので注意
  • つまり「何もしない処理を書き込む」前提で処理を行う必要がある
  • Editor上での処理が必要であれば特定Callback関数への値引き渡しで調整可能
  • DLL上で関数を公開することで、C#等からの関数呼び出しが可能
  • ただしマングリングが必要なため、書き方は注意が必要。
  • 記述例:「extern “C” UNITY_AUDIODSP_EXPORT_API void xxx(xxx xxx) {}」 (好きな関数名・引数・戻り値の型を決められます)
  • マングリングについての参考URL:https://albel06.hatenablog.com/entry/2016/03/17/180000
  • 公開した関数は以下記載を追加することでC#での呼び出しが可能。
  • 記載例:[DllImport(“AudioPluginSinOsc”)]private static extern void xxx();
  • Editor上での読み込みは、「常に読み込まれる形になる」ため、プラグインの内容を変更する際、Editorですでに読み込んでいる場合はEditorの再起動が必要になる。
  • あとEditor上だとずっと読み込まれてる形なので、状態を保管している場合、初期化されない状態がずっと続くため、繰り返しテストする場合に不具合が起こることが予想される。 (素直にシーン開始時に実行する自前の変数初期化処理書いたほうがいいかも)
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む