コード例 #1
0
    void Start()
    {
        server = gameObject.AddComponent <OscServer>();
        sender = gameObject.AddComponent <UdpSender>();

        sender.remoteIp   = remoteIp;
        sender.remotePort = remotePort;
        sender.CreateRemoteEP(remoteIp, remotePort);

        server.localPort   = localPort;
        server.logCapacity = logCapacity;
        server.StartServer(localPort);

        //Debug.Log(server.onDataReceived);
        server.onDataReceived.AddListener(onDataReceived);                                          // リスナー登録
        getSurfaceNameRequest();
    }
コード例 #2
0
    void OnGUIWindow(int id)
    {
        if (hide = GUILayout.Toggle(hide, "Hide GUI"))
        {
            return;
        }

        GUILayout.Space(4);

        GUILayout.Label("FolderPath:");
        if (GUILayout.Button(parentFolder))
        {
            OpenInFileBrowser.Open(parentFolder);
        }

        GUILayout.BeginHorizontal();
        GUILayout.Label("FileName: ");
        fileName = GUILayout.TextField(fileName, GUILayout.Width(320));
        GUILayout.Label(fileExtension);
        GUILayout.EndHorizontal();

        GUILayout.Space(16);

        var filePath = Path.Combine(parentFolder, fileName + fileExtension);
        var exist    = File.Exists(filePath);

        if (exist && !recorder.playing && !recorder.recording)
        {
            recorder.playFilePath = filePath;
            GUILayout.BeginHorizontal();
            if (GUILayout.Button("/play"))
            {
                recorder.Play();
            }
            if (GUILayout.Button("create playData"))
            {
                recorder.CreatePlayData();
            }
            GUILayout.EndHorizontal();
        }
        else if (!exist && !recorder.recording)
        {
            recorder.recordFilePath = filePath;
            if (GUILayout.Button("/record"))
            {
                recorder.StartRecording();
            }
        }

        if ((recorder.playing || recorder.recording))
        {
            if (GUILayout.Button("/stop"))
            {
                if (recorder.recording)
                {
                    var array = fileName.Split('_');
                    var num   = 0;
                    if (0 < array.Length && int.TryParse(array.Last(), out num))
                    {
                        array[array.Length - 1] = (num + 1).ToString();
                        fileName = string.Join("_", array);
                    }
                    else
                    {
                        fileName += "_0";
                    }
                }
                recorder.Stop();
            }
        }
        else
        {
            GUILayout.Space(16);
            GUILayout.BeginVertical("box");
            if (SetIpField("Remote IP: ", ref remoteIp) || SetPortField("Remote Port", ref remotePort))
            {
                sender.CreateRemoteEP(remoteIp, remotePort);
            }
            GUILayout.Space(8);
            if (SetPortField("Local Port: ", ref localPort))
            {
                server.StartServer(localPort);
            }
            GUILayout.EndVertical();
        }

        if (0 < error.Length)
        {
            var color = GUI.color;
            GUI.color = Color.red;
            GUILayout.Label(error);
            GUI.color = color;
        }

        GUILayout.Space(16);
        if (recorder.playing || recorder.recording)
        {
            var fileSize = (float)recorder.fileSize;
            var unit     = "B";
            if (1024 < fileSize)
            {
                fileSize /= 1024;
                unit      = "KB";
            }
            if (1024 < fileSize)
            {
                fileSize /= 1024;
                unit      = "MB";
            }

            GUILayout.BeginHorizontal();
            GUILayout.Label(recorder.playing ? "playing: " : "recording: ");
            GUILayout.Label(recorder.time.ToString(), GUILayout.Width(200));
            GUILayout.FlexibleSpace();
            GUILayout.Label("file size: ");
            GUILayout.Label(fileSize.ToString(".000") + unit);
            GUILayout.EndHorizontal();
        }

        GUI.DragWindow();
    }