OpenGL ES 2.0的几个场景

时间:2013-10-21 17:51:32

标签: c++ iphone ios opengl-es-2.0

如何在几个使用opengl的场景之间实现转换?

我有2个不同的场景。每个都创建它的框架并渲染缓冲区并绑定它。但后来我尝试在这些场景之间切换 - 没有任何反应......我试图在切换时删除所有缓冲区,但它不起作用。第一个场景仍然可见..

1 个答案:

答案 0 :(得分:0)

嗯,根据我的经验,您可能需要处理第一个场景视觉效果的纹理。 一个简单的想法是使用psm studio的OpenGLES方法。

public TitleScene ()
{
  this.Camera.SetViewFromViewport();
  _texture = new Texture2D("Application/images/title.png",false);
  _ti = new TextureInfo(_texture);
  SpriteUV titleScreen = new SpriteUV(_ti);
  titleScreen.Scale = _ti.TextureSizef;
  titleScreen.Pivot = new Vector2(0.5f,0.5f);
  titleScreen.Position = new Vector2(Director.Instance.GL.Context.GetViewport().Width/2,
      Director.Instance.GL.Context.GetViewport().Height/2);
  this.AddChild(titleScreen);
  public override void Update (float dt)
  {
    base.Update (dt);
    var touches = Touch.GetData(0).ToArray();
    if((touches.Length >0 && touches[0].Status == TouchStatus.Down) || Input2.GamePad0.Cross.Press)
    {
      Director.Instance.ReplaceScene(new MenuScene());
    }
  }

  ~TitleScene()
  {
    _texture.Dispose();
    _ti.Dispose ();
  }
}

我希望这能为你提供一些帮助。