2011-08-04 6 views
0

사용자가 터치로 조작 할 수있는 수천 개의 입자가있는 iPad 앱에서 작업하고 있습니다. 흥미로운 디자인을 만들기 위해 입자에 위치를 그릴 때 다음 프레임에서 그 그림을 지우지 않도록하고 싶습니다. 이것은 일종의 "산책로"효과를 만듭니다. "trails"가 켜지면 glClear()를 호출하지 않고 각 프레임에서 그리기 때문에 이전 프레임의 그림에 추가됩니다. 이것은 iPad 시뮬레이터에서 잘 작동하지만, 어떤 이유로, 실제 장치에서 이것을 실행할 때 입자가있는 흔적을 깜박 거리게하면 버퍼와 함께 이상한 일이 일어나게됩니다.glClear()를 호출하지 않을 때 OpenGL ES 그래픽 문제

흔적을 더 잘 생성하는 방법이 있습니까 /이 그래픽 문제는 시뮬레이터에서만 발생합니까?

감사합니다.

답변

0

버퍼 사이에 glClear()가 호출되어 다음 슬레이트를 깨끗한 슬레이트에 그릴 수 있습니다. 프레임 사이의 버퍼를 지워야합니다. 잘 모르겠지만 유물 생성을 시작할 때 버퍼를 계속 채우지 않는 것이 좋습니다.

후미 효과를 생성하려면 추가 입자를 사용하는 것이 좋습니다. 입자의 위치 또는 속도를 추적 한 다음 흔적에 추가 입자를 그립니다.

+0

감사합니다. 추가 입자까지, 현재 프로그램은 그래픽까지 iPad의 한계에 있습니다. 이전 버퍼의 모양을 현재 버퍼에 할당하고 그 위에 그릴 수있는 다른 방법이 있습니까? – markv12

+0

버퍼를 구축 한 다음 glSwapBuffer를 사용하여 빌드 된 것을 앞쪽으로 옮길 수는 있지만 성능이 향상되는지는 알 수 없습니다. – Noah