devlog [naru design]

プログラミングやテクニカルな内容の覚え書き。

某所で質問に上がっていたので試しに実装してみました。

ピンチ操作の2本の指の中間点を中心にして拡大縮小します。

実験的に作ったものなので、実行時の条件がかなり限定されています。

・iPhone4S (Retina, 640×960ピクセル)
・CameraのProjectionはOrthographic

その他環境では、座標の変換時のパラメータ等を調整する必要があります。このままだと、おそらく拡大縮小時の中心がズレます。

以下からパッケージをダウンロードして下さい。

test_pinch.unitypackage (14KByte)

新規プロジェクトを作成して、ダウンロードしたパッケージをインポートしてください。

スクリーンショット 2013-07-10 0.02.37

ビルド設定でターゲットプラットフォームを「iOS」に切り替えて、Gameウィンドウのサイズは「iPhone 4G Tall (640×960)」を選択してください。

シーン(test1)を開いて再生してください。
※タッチ操作はUnity上では確認できないので、UnityRemoteやiOSデバイスを使用してください。

ピンチ操作の2本の指の中心に赤い四角が表示されます。この四角を中心に拡大縮小が行われます。

参考:ソースコード

テスト用に書いたので汚いです。ゴメンナサイ。

座標の扱い、変換がかなり強引な感じになってます。もっとスマートに出来そうな気がするけど・・・

追記 2014/02/12

座標系の変換は、CameraメソッドのScreenToWorldPointメソッドを使えば良いですね ^^;

Pocket

コメントを残す

Trackback URL: