2010-02-09 3 views
2

OpenGL ES를 처음 사용했습니다. 화면에 여러 텍스처를로드 할 데모 응용 프로그램을 구현 중입니다. 데모 목적으로 glTranslatef() 및 glBindTextures()를 두 번 사용하여 화면의 2 개의 다른 위치에 2 개의 텍스처를로드했습니다.OpenGL을 사용하여 안드로이드에서 화면 주위의 특정 질감을 이동하는 방법은 무엇입니까?

이제 화면에 2 개의 다른 이미지를 볼 수 있습니다. 이제는 마우스를 사용하여 특정 텍스처를 화면 전체로 이동하려고합니다.

나는 바보 주제에있을 수 있습니다 알고 있지만이 나를 도와주세요 .. 미리

감사합니다 ..

답변

1

위에서 언급 한 것처럼 표면의 좌표를 변환해야합니다.

정사각형 (2D) 투영을 사용하는 경우 투영법을 화면과 동일한 크기로 정의하면 픽셀/좌표 비율을 1 : 1로 쉽게 설정할 수 있습니다. 예를 들어 :

glOrthof(0.0f, screenWidth, -screenHeight, 0.0f, -1.0f, 1.0f); 

는 왼쪽 상단 (0,0)와 투사하고 화면과 같은 크기를 정의해야합니다.

당신이 3D 프로젝션을 사용하는 경우, 당신이 도움이 링크를 찾을 수 있습니다 : http://www.mvps.org/directx/articles/rayproj.htm

+0

고맙습니다. 답변을 많이 ... 나는 프로젝션 대신 Ortho를 사용하는 것이 더 좋습니다 (glFrustumF를 사용하고 있는데, 3D 용이라고 생각합니다). – Andhravaala

0

을 실제로 텍스처를 이동하지 않지만, 어느 쪽이든 당신 당신의 장면을 이동 관점 (gluortho2d/glulookat/gltranslatef - 또는 다른 것), 또는 텍스처를 적용 할 모양의 정점을 이동합니다.

이 얼마나 내 2D 게임에서 그 일을 메신저 :

gl.glTranslatef (-cameraPosX의 32 %, -cameraPosY % (32), 0);

+0

내가 요점을 이해합니다. 나는 터치 스크린 핸들을 파고 들지 않았으므로 그걸 도와 줄 수 없다. 그러나 나는 반드시 텍스쳐 자체를 움직이기를 원하지 않으며, 꼭지점 좌표를 변경하여 텍스쳐를 적용하는 '모양'(즉, 게임을 디자인한다면 게임 객체)을 주장해야합니다. 여기에 nehe 자습서를 확인하십시오. http://nehe.gamedev.net/ 및 여기 안드로이드 포트 : http://insanitydesign.com/wp/projects/nehe-android-ports/ – Dullahx

+0

ok ... any 방법 링크를 주셔서 감사합니다 ... :) – Andhravaala

+0

웰컴 :) 조만간 게임에서 TouchScreen 컨트롤을 구현할 것입니다. 어쩌면 내가 떨어 뜨릴 것이고 유용한 물건 대부분을 찾을 때 대답 할 것입니다. – Dullahx

관련 문제