LoginSignup
0
0

More than 5 years have passed since last update.

かんたんUnityのgatcomponent

Last updated at Posted at 2014-09-04

別のゲームオブジェクトなどにくっついているスクリプトのメソッドを実行する
のにgamecomponentを使ってみました。

以下のようにMainCameraのスクリプトからWarpPanelというゲームオブジェクトに
くっついているWarpPanerlというスクリプトのPlayMovieを呼び出すことで
ワープっぽい動画を再生させます。
ワープパネル連呼でわかりにくい。。。。

スクリーンショット 2014-09-05 2.29.09.png

動画を貼付けます。
スクリーンショット 2014-09-05 2.31.45.png

WarpPanelにmovieobjectと背景用にbacklayerを入れます。
スクリーンショット 2014-09-05 2.31.58.png

MainCameraには、CameraControlを入れて
WarpPanelをアサインします。

スクリーンショット 2014-09-05 2.32.05.png

これで、こんな感じの光が出る映像を出現させる!!
スクリーンショット 2014-09-05 2.18.36.png

各スクリプトは以下のような感じ!

WarpPanel
using UnityEngine;
using System.Collections;

public class WarpPanel : MonoBehaviour {

    //setting
    public bool IsPlay =false;
    public GameObject MovieObject;
    public GameObject MovieLayer;

    private MovieTexture MovieTexture_;

    void Start () {
        MovieTexture_ = MovieObject.renderer.material.mainTexture as MovieTexture;
        MovieObject.renderer.enabled = false;
        MovieLayer.renderer.enabled = false;
        MovieTexture_.loop = false;
        //MovieTexture_.Play();
    }

    public void PlayMovie()
    {
        // 一度だけ再生
        if (IsPlay == false)
        {
            IsPlay = true;
            MovieLayer.renderer.enabled = true;
            MovieObject.renderer.enabled = true;
            MovieTexture_.Play();
        }
    }

    public void StopMovie()
    {
        // 停止
        if (IsPlay == true)
        {
            IsPlay = false;
            MovieLayer.renderer.enabled = false;
            MovieObject.renderer.enabled = false;
            //MovieTexture_.Stop();
        }
    }
}
CameraControl
using UnityEngine;
using System.Collections;

public class CameraControl : MonoBehaviour {
    public GameObject WarpPanelObject;
    //public GameObject WarpMovie;
    private MovieTexture MovieTexture_;
    private WarpPanel WarpPanel_;


    // Use this for initialization
    void Start () {
        WarpPanel_ = WarpPanelObject.GetComponent<WarpPanel> ();
        WarpPanel_.PlayMovie ();
    }

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

    }
}
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0