質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

87.34%

Unityの音ゲーがエディターだと動くがiosだと動かない

解決済

回答 1

投稿

  • 評価
  • クリップ 0
  • VIEW 896

score 14

前提・実現したいこと

Unityの2Dプロジェクト(音ゲー)のノーツがエディターだと降ってくるんですが実機のiosに移すと動かなくなります。
生成はされていますが、動かない状況です

発生している問題・エラーメッセージ

音ゲーのノーツ(clone)が生成されるが動作しない

該当のソースコード

//移動するノーツにアタッチされているスクリプト
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using GokUtil.UpdateManager;
using System.Linq;
public class NotesIdou2 : MonoBehaviour
{
    [SerializeField] private Score AnotherScript;
    // Start is called before the first frame update
    void Start()
    {

    }


    void AddScore(int y)
    {
        GameObject AnotherObject = GameObject.Find("Score GUI");
        AnotherScript = AnotherObject.GetComponent<Score>();
        AnotherScript.AddPoint(y);
    }
    public void Hantei()
    {
        float y;
        var clones = GameObject.FindGameObjectsWithTag("2");
        foreach (var clone in clones)
        {
            Vector3 tmp = clone.transform.position;
            y = tmp.y;

            if (y >= -1.0f && y <= 1.0f)
            {
                AddScore(500);
                Destroy(clone);
            }
            else if (y >= -2.0f && y < -1.0f || y <= 2.0f && y > 1.0f)
            {
                AddScore(300);
                Destroy(clone);
            }

        }



    }
    public void Idou(int a, int b, int c)
    {
        StartCoroutine(Idou2(a, b, c));
    }
    public IEnumerator Idou2(int a, int b, int c)
    {
        yield return new WaitUntil(() => Timing(a, b, c) == true);
        Transform myTransform = this.transform;
        Vector3 worldPos = myTransform.position;
        for (int i = 0; i < 66; ++i)
        {
            worldPos.y -= 0.2f;
            yield return null;
            myTransform.position = worldPos;
        }
        Destroy(gameObject);
    }

    public bool Timing(int a, int b, int c)
    {
        return Music.IsJustChangedAt(a, b, c);

    }

}
//問題はないと思いますがクローンを生成するスクリプト
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;

public class Humen1 : MonoBehaviour
{
    public GameObject Notes;
    public GameObject Notes2;
    public GameObject Notes3;
    public GameObject Notes4;
    public GameObject Notes5;
    public GameObject Notes6;
    public GameObject Notes7;
    public GameObject Notes8;
    public GameObject Notes9;
    public GameObject Notes10;

    public int z = 0;
    int x = 0;
    /*
    float a;
    float b;
    float c;
    float d;
    float e;
    float a1;
    float b1;
    float c1;
    float d1;
    float e1;
    */
    // Start is called before the first frame update

    void Start()
    {
        StartCoroutine(Wait());
        StartCoroutine(Junbi());
        FadeManager.FadeIn();
    }

    // Update is called once per frame
    public int Jikkou
    {
        // 取得
        get { return z; }

        // 変更
        set { z = value; }
    }
    public IEnumerator Junbi()
    {
        yield return new WaitUntil(Z);
        Jikkou1();
    }
    public void Jikkou1()
    {
        int a;
        int b;
        int c;
        float d;
        float e;
        float[,] notes1;
        notes1 = new float[,] {
            {2, 1, 0, -3.7f, 6}
          //{, , , , }
        };
        int y = notes1.Length;
        for (int i = 0; i <= y; i++)
        {
            a = (int)notes1[i,x];
            ++x;
            b = (int)notes1[i, x];
            ++x;
            c = (int)notes1[i, x];
            ++x;
            d = notes1[i, x];
            ++x;
            e = notes1[i, x];
            ++x;

            if (Mathf.Approximately(e, 6.0f))
            {
                switch (d)
                {
                    case -7.4f:
                        GameObject notes = Instantiate(Notes, new Vector3(d, 6.0f, 0.0f), Quaternion.identity) as GameObject;
                        NotesIdou a_1 = notes.GetComponent<NotesIdou>();
                        a_1.Idou(a, b, c);
                        break;
                    case -3.7f:
                        GameObject notes2 = Instantiate(Notes2, new Vector3(d, 6.0f, 0.0f), Quaternion.identity) as GameObject;
                        NotesIdou2 a_2 = notes2.GetComponent<NotesIdou2>();
                        a_2.Idou(a, b, c);
                        break;
                    case 0:
                        GameObject notes3 = Instantiate(Notes3, new Vector3(d, 6.0f, 0.0f), Quaternion.identity) as GameObject;
                        NotesIdou3 a_3 = notes3.GetComponent<NotesIdou3>();
                        a_3.Idou(a, b, c);
                        break;
                    case 3.7f:
                        GameObject notes4 = Instantiate(Notes4, new Vector3(d, 6.0f, 0.0f), Quaternion.identity) as GameObject;
                        NotesIdou4 a_4 = notes4.GetComponent<NotesIdou4>();
                        a_4.Idou(a, b, c);
                        break;
                    case 7.4f:
                        GameObject notes5 = Instantiate(Notes5, new Vector3(d, 6.0f, 0.0f), Quaternion.identity) as GameObject;
                        NotesIdou5 a_5 = notes5.GetComponent<NotesIdou5>();
                        a_5.Idou(a, b, c);
                        break;
                }
            }else{
                //if (Mathf.Approximately(e, -6.0f)
                switch (d)
                {
                    case -7.4f:
                        GameObject notes6 = Instantiate(Notes6, new Vector3(d, -6.0f, 0.0f), Quaternion.identity) as GameObject;
                        NotesIdou6 a_6 = notes6.GetComponent<NotesIdou6>();
                        a_6.Idou(a, b, c);
                        break;
                    case -3.7f:
                        GameObject notes7 = Instantiate(Notes7, new Vector3(d, -6.0f, 0.0f), Quaternion.identity) as GameObject;
                        NotesIdou7 a_7 = notes7.GetComponent<NotesIdou7>();
                        a_7.Idou(a, b, c);
                        break;
                    case 0:
                        GameObject notes8 = Instantiate(Notes8, new Vector3(d, -6.0f, 0.0f), Quaternion.identity) as GameObject;
                        NotesIdou8 a_8 = notes8.GetComponent<NotesIdou8>();
                        a_8.Idou(a, b, c);
                        break;
                    case 3.7f:
                        GameObject notes9 = Instantiate(Notes9, new Vector3(d, -6.0f, 0.0f), Quaternion.identity) as GameObject;
                        NotesIdou9 a_9 = notes9.GetComponent<NotesIdou9>();
                        a_9.Idou(a, b, c);
                        break;
                    case 7.4f:
                        GameObject notes10 = Instantiate(Notes10, new Vector3(d, -6.0f, 0.0f), Quaternion.identity) as GameObject;
                        NotesIdou10 a_10 = notes10.GetComponent<NotesIdou10>();
                        a_10.Idou(a, b, c);
                        break;
                }
            }


        }
    }
    private bool Z() => z == 1;
    IEnumerator Wait()
    {
        yield return new WaitForSeconds(1f);
    }

}

試したこと

ビルド設定を変えたり、カメラの視野角を広くしてそもそもノーツが生成されているか確認(生成はされていた)

補足情報(FW/ツールのバージョンなど)

Unity2019.2.5f1
ios12.4

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • izmktr

    2019/09/24 10:31

    音ゲーなのに、1フレームを決め打ちで取っているのは気になります
    Time.deltaTimeは見る必要はないんですか?
    (厳密にはBGMの再生位置を基準にするのがいいですが…)

    キャンセル

  • roua

    2019/09/24 12:40

    ...忘れてました()
    Music.csで動かすタイミングは合ってると思いますが、動くスピード違いますもんね...
    ありがとうございます!

    キャンセル

  • roua

    2019/09/24 13:13

    すみません、Music.csのbeatが16のテンポが180だったので1フレームより短かったみたいです...
    解決しました!

    キャンセル

回答 1

check解決した方法

0

すみません、Music.csのbeatが16のテンポが180だったので1フレームより短かったみたいです...
解決しました!

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 87.34%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る