Scratch Unity

Scratch → Unity対応早見表

投稿日:2018年9月25日 更新日:

使い方の動画はこちら♪

動き

動き1.PNG

動き2.PNG
※3つの数字は回転する軸を表していて、左から順に、x、y、z

動き15.png
※3つの数字は回転する軸を表していて、左から順に、x、y、z

動き9.png
※3つの数字は回転する軸を表していて、左から順に、x、y、z

動き10.png
※3つの数字は回転する軸を表していて、左から順に、x、y、z

動き11.png
※変数の部分にはprivate Plane plane = new Plane();とprivate float distance = 0;を入力する

動き3.PNG
※変数の部分にはpublic GameObject target;を入力する
入力し終わった後にスクリプトにターゲットをドラッグ&ドロップするのを忘れずに!!

動き4.PNG
※3つの数字は左から順に、x、y、z

動き5.PNG
※変数の部分にはpublic Transform target;を入力する
入力し終わった後にスクリプトにターゲットをドラッグ&ドロップするのを忘れずに!!

動き12.png
※変数の部分にはprivate Vector3 position; と
private Vector3 screenToWorldPointPosition;を入力する

動き6.PNG
※3つの数字は左から順に、x、y、z

動き7.PNG
※3つの数字は左から順に、x、y、z

動き8.PNG
rigidbodyのFreezeRotationにチェック
freezerotation.PNG

見た目

見た目1.PNG
※変数の部分にはpublic GameObject obj;を入力する
入力し終わった後にスクリプトにターゲットをドラッグ&ドロップするのを忘れずに!!

見た目2.PNG
※変数の部分にはpublic GameObject obj;を入力する
入力し終わった後にスクリプトにターゲットをドラッグ&ドロップするのを忘れずに!!

完全に消したい場合

5秒後に消したい場合

見た目6.PNG
※using~の部分に using UnityEngine.SceneManagement;を入力する
※便宜上Getabakoというシーンを読み込むことにしています

見た目3.PNG
※例では色を赤にしています

見た目4.PNG

見た目5.PNG

データ
#C#での変数の作り方

①図を参考にして変数を入力していきます。
図1.png
②変数はアクセス修飾子 型 変数名;と入力します。
アクセス修飾子については以下を参考にして下さい。
スライド1.PNG
型については以下を参考にして下さい。
スライド2.PNG
例えば他のオブジェクトでも使用可能なfloat型のgetabakoという変数を作る場合
public float getabako; と入力します。

データ1.PNG
※便宜上、getabakoという変数を作ったことにしています

データ2.PNG

イベント

イベント1.PNG
{}の中には実行する内容を入力する

イベント2.PNG
{}の中には実行する内容を入力する

それぞれのキーの入力は以下の表を参考にして下さい
キー入力表.png

連打じゃない場合

連打の場合

キーから離された場合

イベント3.PNG
図を参考にして入力します
図2.png

{}の中には実行する内容を入力する

wp-image-2386

wp-image-2387

制御

制御1.PNG

コルーチンの説明

Scratchの定義ブロックのように一連の命令をひとかたまりにしていつでも呼び出せるようにできる機能のことです。
その一連の中にのみ、待ち時間を入れることができます。

コルーチンの作り方

図を参考にして入力します
図2.png
{}の中にはyield return new WaitForSeconds(1);を含めた一連の実行する内容を入力する

と入力していくと、getabakoというコルーチンを作り、その中で1秒待つを数回いれている、ということになります

コルーチンの呼び出し方
※呼び出したい時に以下を入力する

制御2.PNG
{}の中には実行する内容を入力する

制御3.PNG

制御4.PNG
()の中には条件、{}の中には実行する内容を入力する

制御5.PNG
()の中には条件、{}の中には実行する内容を入力する
※便宜上、getabakoというint型の変数が1ならという条件を加えています

clone.PNG 

クローンの補足説明

UnityのクローンはScratchに比べて多機能です
以下の画像のようにクローンを生成する段階で、生成するオブジェクト、クローンを生成する場所、クローンの回転を指定します。16.png
画像の状態だとクローンを生成するオブジェクトがそのままの角度で出てきます。
例えば、クローンをスクリプトをつけたオブジェクトと同じ角度で出したい場合は
Quaternion.identityをthis.transform.rotationに変更します。

制御8.PNG
※変数の部分にはpublic GameObject obj;を入力する

制御7.PNG
プレファブ化したオブジェクトにスクリプトを貼りつける

調べる
※便宜上オブジェクトの名前もしくはタグがgetabakoということにしています

※注意事項があるのでよく読んで下さい※

入力する箇所
図2.png
衝突するオブジェクトがすり抜けない場合
①Colliderをつける
②どちらかには必ずRigidBodyをつける
衝突するオブジェクトがすり抜ける場合
①Colliderの「IsTrigger」にチェックをつける
②衝突するオブジェクトにタグをつける
タグのつけかた
図3.png

調べる1.PNG
{}の中には実行する内容を入力する

衝突するオブジェクトがすり抜けない場合

衝突するオブジェクトがすり抜ける場合

調べる2.PNG
※変数の部分にはpublic GameObject obj1;とpublic GameObject obj2;を入力する

調べる3.PNG

※他のキーを使う場合は「スペースキーが押されたとき」の項を参照

15.png

左クリック

右クリック

マウスホイール

調べる4.PNG
※便宜上オブジェクトの名前はgetabako、代入するVector3の変数はgetabakoposとします

演算
演算1.PNG
※便宜上1をとりあえず入れます

演算2.PNG
※便宜上1をとりあえず入れます

演算3.PNG
※便宜上1をとりあえず入れます

演算4.PNG
※便宜上1をとりあえず入れます

演算7.PNG
※便宜上getabako1とgetabako2という変数を入れています

演算8.PNG
※便宜上getabako1とgetabako2という変数を入れています

演算9.PNG
※便宜上getabako1とgetabako2という変数を入れています

演算5.PNG
※便宜上getabakoという変数を入れています

演算10.PNG

演算11.PNG

演算12.PNG

このサイトについて

ここには、自己紹介やサイトの紹介、あるいはクレジットの類を書くと良いでしょう。

検索

このサイトについて

ここには、自己紹介やサイトの紹介、あるいはクレジットの類を書くと良いでしょう。

検索

-Scratch, Unity

執筆者:


  1. ヤマダ より:

    メッセージを送る、メッセージを受け取ったときの対応表はないのですか??

  2. […] 地面にはGroundというタグをつけましょう タグのつけ方はこちらを参考にしてください […]

  3. たかはし より:

    メッセージ1を受け取ったときの
    private void Message1 (){}は
    public void Message1 (){}

    • たかはし より:

      がただしいです
      plivateの場合、送る側でエラーが起きます。

      • getabako より:

        receiverにメッセージを受け取る側のオブジェクトをドラッグ&ドロップすれば大丈夫だと思いますよー

  4. ケモトモ より:

    一番上の「10歩動かす」の構文についてですが、以下のコードのほうが適切なのではないかと思いコメントさせていただきました。もしよろしければご参考になさってみてはいかがでしょうかと…。
    なお、このコードの動作は私自身のUnityで確認済みです。
    Vector3 velocity = gameObject.transform.rotation * new Vector3(10, 0, 0);
    gameObject.transform.position += velocity * Time.deltaTime;

    • getabako より:

      コメントありがとうございます
      確かにおっしゃる通りなのですが、この表を作ったのは小学生を対象に考えてまして、なるべくシンプルに、というところを目指しています。
      正確さよりも簡潔さを優先した結果こうなっています。

  5. 質問です。scratchをやっていて、最近Unityを始めたものです。
    scratchのコスチューム機能を作成することはできないでしょうか?
    できればUIのImageでやりたいです。
    (コスチュームをインスペクターにたくさん入れて、それをプログラムで変えれるようなものが欲しいです!)

    いつもこのサイトを愛用しています!わかりやすくて助かっています!

    • getabako より:

      ありがとうございます!
      こんな感じでボタンで画像を切り替えるスクリプトを作ってみました!
      やりたいことこんなイメージでしょうか?
      このスクリプトを作成し、画像に貼り付け、
      CostumeImageには変更したい画像を
      Spritesには変更したい画像の分だけ、数で指定し、その画像を全てドラッグ&ドロップして下さい

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

      using UnityEngine.UI;

      public class SetImage : MonoBehaviour {

      public Image CostumeImage; // 変更する画像
      public Sprite[] Sprites; // 変更する画像たちを格納しておく配列
      int SpriteNum = 0;

      // Use this for initialization
      void Start () {

      }

      // Update is called once per frame
      void Update () {

      CostumeImage.sprite = Sprites[SpriteNum]; // 画像を配列のSpriteNum番目の画像にする

      if (Input.GetKeyDown(KeyCode.X)) // Xが押されたら
      {
      SpriteNum++; // 配列の番号を進める
      }

      if (Input.GetKeyDown(KeyCode.Z)) // Zが押されたら
      {
      SpriteNum–; // 配列の番号を戻す
      }
      }
      }

      • ユニティヤング より:

        ほんとに感謝感激です!!!ありがとうございます!!!うまくできました!!!

  6. ユニティヤング より:

    もう一つ、質問してもいいですか?何度もすみませんm(_ _)m
    クローンの消し方を教えてください!

comment

メールアドレスが公開されることはありません。

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

関連記事

Unityで地面の当たり判定を足元だけ取得する【3D】

今回やること Rigidbodyによるジャンプの時に地面の当たり判定を足元だけ取得します コライダーで判定をとる場合、コライダーの下で触れても、上で触れても地面に当たっていることになってしまいます 例 …

no image

一定距離で追従するカメラ

Main Cameraにスクリプトを貼り付ける Targetにプレイヤーをドラッグ&ドロップ キャラクターにカメラがついてい …

no image

Scratch(スクラッチ)の始め方

「Scratchに参加しよう」をおす ユーザー名とパスワードを2回入力して「次へ」をおす それぞれ日本語は使えないので注意しましょう 自分の誕生年月と国籍を入力して「次へ」をおす メールアドレスを2回 …

ScratchでHPゲージを作成する

今回やること ペン機能を使ってHPゲージを作ります ペン機能を追加する ペン機能を使用してHPゲージを作成します ペン機能を使用するためには左下のアイコンをおします ペンを選択します HPゲージやダメ …

no image

UnityRemoteで起動するスマホを指定する

スマホをPCに接続します Edit → ProjectSettings をおします Editor → Noneをおして、 iPhoneならiPhoneの機種、 androidなら Any androi …

ゲタバコ倶楽部へようこそ

  • 254446総閲覧数:
  • 286今日の閲覧数:
  • 193968総訪問者数:
  • 254今日の訪問者数:

住所
Akita,Japan

営業時間
月~日: 10:00 AM – 10:00 PM

このページはゲタバコ先生の日々思うことや活動、プログラミングの習得方法を発信するページです。
仕事のご依頼、メッセージ等、サービス概要をご覧の上で、お気軽にご連絡ください。

getabakosensei@gmail.com