// Start is called before the first frame update void Start() { _poseUpdater = new PoseUpdater(this.transform, bonePrefix, avatarType, useSmooth); _poseUpdater.queueSize = this.queueSize; data = CSVReader.Read(poseFile); numCols = data[0].Count; currentPose = new float[72]; nextPose = new float[72]; currentFrame = 0; nextFrame = 1; maxFrame = data.Count - 1; float[] startPose = new float[72]; for (int i = 0; i < 72; i++) { if (numCols == 73) { startPose[i] = Convert.ToSingle(data[0][(i + 1).ToString()]); } else { startPose[i] = Convert.ToSingle(data[0][(i).ToString()]); } } _poseUpdater.initQueueWithStartPose(startPose); }
void Start() { DOTween.Init(); loadingPanel = GameObject.Find("LoadingPanel"); loadingCircle = GameObject.Find("LoadingCircle"); loadingPanel.SetActive(false); GameObject scriptLoader = GameObject.Find("ScriptLoader"); graphicSwitcher = scriptLoader.GetComponent <GraphicSwitcher>(); lessonRecorder = scriptLoader.GetComponent <LessonRecorder>(); GameObject kaoru = GameObject.Find("Kaoru"); poseUpdater = kaoru.GetComponent <PoseUpdater>(); emotionChanger = kaoru.GetComponent <EmotionChanger>(); recordingIcon = GameObject.Find("RecordingIcon").GetComponent <Image>(); ColorAlphaToZero(recordingIcon); nextGraphicButton = GameObject.Find("NextGraphicButton"); nextGraphicButton.GetComponent <Button>().onClick.AddListener(SwitchNextGraphic); nextGraphicButton.SetActive(false); prevGraphicButton = GameObject.Find("PrevGraphicButton"); prevGraphicButton.GetComponent <Button>().onClick.AddListener(SwitchPrevGraphic); prevGraphicButton.SetActive(false); recButton = GameObject.Find("RecButton"); recButton.GetComponent <Button>().onClick.AddListener(StartRecording); stopButton = GameObject.Find("StopButton"); stopButton.GetComponent <Button>().onClick.AddListener(StopRecording); stopButton.SetActive(false); resumeButton = GameObject.Find("ResumeButton"); resumeButton.GetComponent <Button>().onClick.AddListener(ResumeRecording); resumeButton.SetActive(false); saveButton = GameObject.Find("SaveButton"); saveButton.GetComponent <Button>().onClick.AddListener(SaveRecord); saveButton.SetActive(false); GameObject.Find("FullScreenButton").GetComponent <Button>().onClick.AddListener(() => { Screen.fullScreen = !Screen.fullScreen; }); scriptLoader.GetComponent <LessonMaterial>().OnLoadCompleted.Subscribe(_ => { nextGraphicButton.SetActive(true); prevGraphicButton.SetActive(true); TouchDetector touchDetector = kaoru.GetComponent <TouchDetector>(); touchDetector.initButtons(); }); GameObject.Find("SmileButton").GetComponent <Button>().onClick.AddListener(() => { SwitchFacialExpression("smile1"); }); GameObject.Find("SadButton").GetComponent <Button>().onClick.AddListener(() => { SwitchFacialExpression("sad2"); }); GameObject.Find("AngerButton").GetComponent <Button>().onClick.AddListener(() => { SwitchFacialExpression("anger3"); }); EventTrigger stepForwardEventTrigger = GameObject.Find("StepForwardButton") .GetComponent <Button>().gameObject.AddComponent <EventTrigger>(); EventTrigger stepBackEventTrigger = GameObject.Find("StepBackButton") .GetComponent <Button>().gameObject.AddComponent <EventTrigger>(); EventTrigger stepLeftEventTrigger = GameObject.Find("StepLeftButton") .GetComponent <Button>().gameObject.AddComponent <EventTrigger>(); EventTrigger stepRightEventTrigger = GameObject.Find("StepRightButton") .GetComponent <Button>().gameObject.AddComponent <EventTrigger>(); EventTrigger.Entry moveForwardEntry = new EventTrigger.Entry(); moveForwardEntry.eventID = EventTriggerType.PointerDown; moveForwardEntry.callback.AddListener((_) => { poseUpdater.SwicthMovingBackAndForward("startMovingForward"); }); EventTrigger.Entry moveBackEntry = new EventTrigger.Entry(); moveBackEntry.eventID = EventTriggerType.PointerDown; moveBackEntry.callback.AddListener((_) => { poseUpdater.SwicthMovingBackAndForward("startMovingBack"); }); EventTrigger.Entry moveLeftEntry = new EventTrigger.Entry(); moveLeftEntry.eventID = EventTriggerType.PointerDown; moveLeftEntry.callback.AddListener((_) => { poseUpdater.SwicthMovingBackAndForward("startMovingLeft"); }); EventTrigger.Entry moveRightEntry = new EventTrigger.Entry(); moveRightEntry.eventID = EventTriggerType.PointerDown; moveRightEntry.callback.AddListener((_) => { poseUpdater.SwicthMovingBackAndForward("startMovingRight"); }); EventTrigger.Entry stopEntry = new EventTrigger.Entry(); stopEntry.eventID = EventTriggerType.PointerUp; stopEntry.callback.AddListener((_) => { poseUpdater.SwicthMovingBackAndForward("stopMoving"); }); stepForwardEventTrigger.triggers.Add(moveForwardEntry); stepForwardEventTrigger.triggers.Add(stopEntry); stepBackEventTrigger.triggers.Add(moveBackEntry); stepBackEventTrigger.triggers.Add(stopEntry); stepLeftEventTrigger.triggers.Add(moveLeftEntry); stepLeftEventTrigger.triggers.Add(stopEntry); stepRightEventTrigger.triggers.Add(moveRightEntry); stepRightEventTrigger.triggers.Add(stopEntry); }