渋谷ほととぎす通信

完全趣味でやってるUnityメモ。説明できないところを説明できるようにするための個人ブログ。昨日の自分より少しでも大きくなれるように。。。 ※所属団体とは一切関係がありません

CinemachineVirtualCameraが認識されなくなったときに見落としがちな2つのチェックポイント

f:id:esakun:20150730215258g:plain

UnityのCinemachine使用中に時々CinemachineVirtualCameraがCinemachineBrainに登録されなくて、アクティブにならないということが起きました。

そんなときにチェックしておきたいポイント2点をメモしておきます。

続きを読む

Unityとmicro:bit間のシリアル通信におけるResource busyトラブル

f:id:esakun:20180807033435p:plain

この辺りの文脈から最近micro:bitを触りだし、自分の子供と甥向けになにか作ってやろうと思っている次第です。

今回はSerialPortクラスを使ってUnity(C#)とmicro:bit間でシリアル通信しようとしたときの話です。

ちなみにSerialPortクラスを使用するためにはビルドセッティングで.NET 2.0 Subsetではなく、.NET 2.0にしておく必要があります。 f:id:esakun:20180807033950p:plain



以下がサンプルコードです。

micro:bit側シリアル通信送信JavaScriptコード

// Aボタンを押したらジャイロ情報を送信
input.onButtonPressed(Button.A, () => {
    let dx = input.acceleration(Dimension.X);
    let dy = input.acceleration(Dimension.Y);
    let dz = input.acceleration(Dimension.Z);
    serial.writeLine("x,y,z : " + dx + "," + dy + "," + dz);
})

Unity側C#シリアル通信受信コード一部

var serial = new SerialPort(portName, baudRate, Parity.None, 8, StopBits.One);
try
{
    serial.Open();
    serial.DtrEnable = true;
    serial.RtsEnable = true;
    serial.DiscardInBuffer();
    serial.ReadTimeout = 5;
}
catch (Exception e)
{
    Debug.LogWarning(e.Message);
}


C#側で以下の例外がスローされ、シリアルポートを開くことができないトラブルに見舞われました。

Resource busy

続きを読む

SpriteAtlas、SpritePackerどちらも一括でアトラスサイズを変更できるわけではなかった話

f:id:esakun:20150730215258g:plain

僕の勘違いの共有みたいになりますが。

最近のUnityの主流?のSpriteAtlasでは個別に書き出したSpriteをアトラスにパックした後、アトラス全体のサイズを変更できるのかなって思っていたんですが、そうではなかったんですね。

続きを読む

SpriteAtlasは引き続きAllow RotationとTight Packingは使用できません

f:id:esakun:20150730215258g:plain

SpriteAtlasの不具合が引き続き継続中のようで、Unity2018.2.0f2でもAllow RotationTight Packingにチェックを入れると表示が崩れます。チェックを外せば表示崩れは起きなくなります。

今回はUnity2018.1.0f2から2018.2.0f2にアップデートした際に、SpriteAtlasの設定が戻ってしまい、表示崩れが起きてしまったので、その共有です。

※最近Unity2018.2.0f2にアプデしました

続きを読む

Unity2018.2.0f2にアップデートした際のエラー対応

f:id:esakun:20150730215258g:plain

Unity2018.1.0f2からUnity2018.2.0f2にアップデートした際のエラー対応備忘録です。
※皆が皆起こるエラーではありません。環境によっては起こります。

An error occurred while resolving packages: Package com.unity.cinemachine@2.1.12 has invalid dependencies:com.unity.modules.timeline: Package [com.unity.modules.timeline@1.0.0] cannot be found
A re-import of the project may be required to fix the issue or a manual modification of /Unityプロジェクトまでのパス/Packages/manifest.json file.

続きを読む