facebook twitter hatena line email

「Unity/3d/視点操作」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(サンプル)
(サンプル)
行5: 行5:
 
<pre>
 
<pre>
 
  Observable.EveryUpdate()
 
  Observable.EveryUpdate()
             .Where(_ => Input.GetMouseButton(0))
+
             .Where(_ => Input.GetMouseButton(1))
 
             .Subscribe(_ => {
 
             .Subscribe(_ => {
 
                 RotateCamera();
 
                 RotateCamera();

2023年2月20日 (月) 19:09時点における版

サンプル

右クリックからのドラッグで、視点操作

呼び出し(UniRxだと)

 Observable.EveryUpdate()
            .Where(_ => Input.GetMouseButton(1))
            .Subscribe(_ => {
                RotateCamera();
            })
            .AddTo(gameObject);
rotateSpeed = 2f;
private void RotateCamera()
{
    Vector3 angle = new Vector3(Input.GetAxis("Mouse X") * rotateSpeed,Input.GetAxis("Mouse Y") * rotateSpeed, 0);
    player.transform.RotateAround(mainCamera.transform.position, Vector3.up, angle.x);
    mainCamera.transform.RotateAround(mainCamera.transform.position, transform.right, angle.y);
}

参考:https://xr-hub.com/archives/6272

左クリックのとき

Input.GetMouseButton(0)をInput.GetMouseButton(1)へ