2016-09-04 10 views
1

android + ogre3d으로 앱을 만들고 있습니다. FSAA 속성을 사용하고 있습니다 만, 외설이 있습니다 bug : externalWindowHandle과 fsaa를 함께 사용하면 fsaa가 작동하지 않습니다. Surfaceview를 렌더링 용 윈도우로 사용하고 있습니다.android 앱에서 msaa를 사용 설정하는 방법

이제 Android 개발자 옵션 인 "Force 4x MSAA"를 찾았습니다.이 옵션을 켜면 내 앱이 멋지게 작동하기 시작했습니다. 이 옵션은 MSAA에서 작동하는 모든 OpenGL es 2.0 응용 프로그램을 만듭니다. 그러나 사용자가 휴대 전화에서이 옵션을 켜도록 요청하는 것은 좋지 않습니다.

내 앱이 항상 4 배 MSAA를 사용하도록 설정할 수있는 방법이 있습니까?

+0

가능한 복제 (http://stackoverflow.com/questions/27035893/antialiasing-in-opengl-es-2-0) –

답변

1

버그는 리눅스 OS에 관한 것입니다.

FSAA는 오래된 기술이며 오우거가 그것을 무시하고 있습니다. 따라서 MSAA 또는 CSAA를 대신 사용할 수 있습니다. [OpenGL은 ES 2.0 앨리어싱 η]

ANativeWindow *nativeWnd = ANativeWindow_fromSurface(env, surface); 

    Ogre::NameValuePairList opt; 
    opt["MSAA"] = "2"; 
    opt["externalWindowHandle"] = Ogre::StringConverter::toString(
      reinterpret_cast<size_t>(nativeWnd)); 
    gRenderWnd = Ogre::Root::getSingleton().createRenderWindow("OgreWindow", 0, 0, false, &opt);