▼そのUnityの作業、依頼しませんか?
ゲーム開発に使える素材・知識

【Unity】カーソルを表示・非表示するなどの制御を行う【スクリプト例あり】

Unityでカーソルを制御する
// カーソル表示
Cursor.visible = true;
// カーソル非表示
Cursor.visible = false;

// カーソルを自由に動かせる
Cursor.lockState = CursorLockMode.None;
// カーソルを画面内で動かせる
Cursor.lockState = CursorLockMode.Confined;
// カーソルを画面中央にロックする
Cursor.lockState = CursorLockMode.Locked;

Unityでカーソルの表示や画面を制御するためには、上のようなスクリプトを使う。では説明していく。

【Unity】カーソルを表示・非表示するなどの制御を行う

現在の状況

Unityでカーソルを表示・非表示するなどの制御をする
  • 空のオブジェクトにスクリプトがついている

空のオブジェクトじゃなくても良い。なんらかのオブジェクトにスクリプトがついててください。そこに記述していく。

カーソルを非表示にする

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CursorController : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        Cursor.visible = false;
    }

    // Update is called once per frame
    void Update()
    {
        
    }
}
Cursor.visible = false;カーソルを非表示

このままゲームを実行すると、カーソルが表示されない。

カーソルを中央に固定&非表示
→Escapeキーを押したら、カーソルが自由に動ける&表示

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CursorController : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        Cursor.visible = false;
        Cursor.lockState = CursorLockMode.Locked;
    }

    // Update is called once per frame
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.Escape))
        {
            Cursor.visible = true;
            Cursor.lockState = CursorLockMode.None;
        }
    }
}
Cursor.visible = false;カーソルを非表示
Cursor.lockState = CursorLockMode.Locked;カーソルを画面中央にロックする
Cursor.visible = true;カーソルを表示
Cursor.lockState = CursorLockMode.None;カーソルを自由に動かせる

最初はカーソルを中央に固定&非表示にしている状態で、Escapeキーを押したら、カーソルが自由に動ける&表示させるようにしている。

関連記事:【Unity】任意のキー(A,Space,Dなど)を押したとき処理を設定できるInput.GetKey(KeyCode.A)の使い方

任意のキーを押したときの処理
【Unity】任意のキー(A,Space,Dなど)を押したとき処理を設定できるInput.GetKey(KeyCode.A)の使い方【Unity】任意のキー(SpaceやAやDやEなど)を押したときの処理を設定します。という悩みを解決します。 ●任意のキーを押したときの処理を設定する方法 if (Input.GetKey(KeyCode.任意のキー)) { したい処理を書く } 任意のキーの部分を「A」や「Space」などのキーに変えてください。したい処理の部分は自分のしたい処理のスクリプトをかいてください。...

まとめ

// カーソル表示
Cursor.visible = true;
// カーソル非表示
Cursor.visible = false;

// カーソルを自由に動かせる
Cursor.lockState = CursorLockMode.None;
// カーソルを画面内で動かせる
Cursor.lockState = CursorLockMode.Confined;
// カーソルを画面中央にロックする
Cursor.lockState = CursorLockMode.Locked;

こちらの事情によりGifが使えなかった。自分で動かしてみていただきたい。

以上、Unityでカーソルを表示・非表示するなどの制御を行う方法だ。

このようなチュートリアルを販売しているので、Unityでゲームを作成している人は購入していただきたい。

>>Unityでもっとゲーム開発する

【Unity3Dサンプルゲーム】うちのポチが危ないところでフリスビーを要求する理由を教えてくれの本記事
【Unity3Dサンプルゲーム・チュートリアル】「フリスビーを犬に届けよ!」の概要【Unityチュートリアル・サンプルゲーム】Unityで3Dゲームを作りたいと考えている人、本やネットにあるUnityのチュートリアルをやってみたけど、いまいちゲームらしくないと思っている人、テキストでも動画でも学びたい人におすすめのチュートリアルです。...
ABOUT ME
さぎのみや
さぎのみや
超書手。現在はUnityメディア「ユニシャー」の運営とゲーム開発がメインです。Unity、ライティング関係のお仕事お待ちしております。 >>詳しいプロフィール >>Amazonほしいものリスト
【Unity3D】新しいサンプルゲーム(チュートリアル)を作りました!!!
Unity有料サンプルゲーム

「Unityで3Dゲームを本格的に作っていきたい!」という人におすすめのチュートリアルとなっています。

画像のようなゲームの作り方を販売しています。色々と応用できるサンプルゲームとなっています。ぜひ、作ってみてください。

詳細
>>【Unity3Dサンプルゲーム・チュートリアル】「フリスビーを犬に届けよ!」の概要

>>STORES.jpでこのチュートリアルを見る

【RT・フォローであなたのスキルが上がる】

シェアフォローする

さぎのみやのモチベが上がる

コンテンツの質が上がる

あなたの能力も上がる

あなたの
Twitterでのシェア

であなたの能力が上がります。

>>さぎのみやのツイッター(@saginomiya8)

 

COMMENT

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください