Programming」カテゴリーアーカイブ

プログラミング全般に関するカテゴリーです。

Unityでエフェクト等を常に前面に表示する方法

エフェクト等、3D空間での位置関係に無関係に常に前面に表示したい場合に使えるテクニックです。

手順

  1. 前面に表示したいオブジェクトを作成し、Add Layerから適当なLayerを追加・設定する。
  2. カメラを追加して、Clear FlagsDepth onlyに、Depth0に設定する。
    Culling Mask1で設定したLayerに設定する。
  3. 元のMain CameraはDepth-1に設定し、Culling Maskから2で設定したLayerを外す。

リンク

Unity z軸に関係なくダメージを最前面に出したい – とあるプログラマの備忘録
http://raharu0425.hatenablog.com/entry/2015/08/27/111709

VirtualBox上でUnityが起動できない場合

VirtualBox上でUnityを起動しようとすると

Fatal error!
Failed to initialize unity graphics.

というエラーが表示されてしまう場合は、[Guest Addions CD]からドライバーをインストールすれば起動できるようになるみたいです。

手順

  1. [Settings] » [Display]からVideo Memoryを128MB以上に設定
  2. Guest OSを起動して、[Devices] » [Insert Guest Additions CD image...]を実行
  3. セットアッププログラムが起動するので、ウィザードに従ってOracle VM VirtualBox Guest Additionsをインストール

リンク

How To Enable 3D Acceleration and Use Windows Aero in VirtualBox
http://www.howtogeek.com/124479/how-to-enable-3d-acceleration-and-use-windows-aero-in-virtualbox/

Shellのコマンドライン引数の扱い方

コマンドライン引数の取得(表示)

$ cat sample1.sh
#!/bin/sh
echo 1st: $1
echo 2nd: $2
echo all: $@
$ ./sample1.sh aaa bbb ccc
1st: aaa
2nd: bbb
all: aaa bbb ccc

コマンドライン引数の個数

$ cat sample2.sh
#!/bin/sh
echo $#
$ ./sample2.sh aaa bbb ccc
3

引数を順番に取得(表示)するサンプル

$ cat sample3.sh
#!/bin/sh
while [ $# -ne 0 ]
do
  echo $1
  shift
done
$ ./sample3.sh aaa bbb ccc
aaa
bbb
ccc

echo $1の部分を書き換えることで任意のコマンドを実行することができます。