Ejemplo n.º 1
0
  private OpenGLFrameBuffer CreateRenderTarget(
      GLAutoDrawable arg0, String kImageName, int iWidth, int iHeight) {
    // System.err.println( kImageName + " " + iWidth + " " + iHeight );
    float[] afData = new float[iWidth * iHeight * 4];
    GraphicsImage pkSceneImage =
        new GraphicsImage(GraphicsImage.FormatMode.IT_RGBA32, iWidth, iHeight, afData, kImageName);

    Texture[] akSceneTarget = new Texture[1];
    akSceneTarget[0] = new Texture();
    akSceneTarget[0].SetImage(pkSceneImage);
    akSceneTarget[0].SetShared(false);
    akSceneTarget[0].SetFilterType(Texture.FilterType.NEAREST);
    akSceneTarget[0].SetWrapType(0, Texture.WrapType.CLAMP);
    akSceneTarget[0].SetWrapType(1, Texture.WrapType.CLAMP);
    m_pkRenderer.LoadTexture(akSceneTarget[0]);
    OpenGLFrameBuffer kFB =
        new OpenGLFrameBuffer(
            m_eFormat, m_eDepth, m_eStencil, m_eBuffering, m_eMultisampling, m_pkRenderer, arg0);
    kFB.InitializeBuffer(akSceneTarget);
    return kFB;
  }