2016-09-08 3 views
0

현재 소행성을 피해야하는 게임에서 작업 중입니다. 나는 임의의 단위를 사용하기 시작했다. 변형 된 모양Abitrary Units를 올바르게 설정하는 방법은 무엇입니까?

게임 화면에서
float aspectratio = 16/10; 
cam = new OrthographicCamera(100, 100 * aspectratio); 
cam.position.set(cam.viewportWidth/2f, cam.viewportHeight/2f, 0); 
cam.update(); 

소행성 :

public final static int WIDTH = 100, HEIGHT = 100; 

또한, 나는 OrthographicCamera을 사용하고의 문제입니다

enter image description here

+0

나는 노란색 모양이 같은데요 소행성. 그들은 어떻게 변형됩니까? 그들이 가지고 있어야하는 형태는 무엇입니까? 코드 조각에서 카메라에 문제가 있다고 생각하는 것 같습니다. 왜 그렇게 생각하니? 그렇지 않으면 어쩌면 우리에게 소행성에 영향을 미치는 코드를 보여줄 수 있습니다. 창 크기를 조정하면 어떻게됩니까? – valid

+0

@ 노란색 소행성은 서클로 표시됩니다. 나는 어느 종횡비가 가장 잘 맞는지 모른다. OrthographicCamera ans 종횡비가없는 이전 버전에서는 게임이 Asteroids의 동그라미와 잘 어울리고 날카로운 Spaeship이기 때문에 문제는 소행성과 관련이 없습니다. 힘든 [여기] (http://stackoverflow.com/questions/39378730/gamescreen-shows-black-screen-solved)는 완전한 소행성 코드입니다. –

답변

0

뷰포트. this page을보십시오. 예를 들어 화면에 맞게 가능한 한 게임의 크기를 조절하지만 검은 색 막대가있을 수있는 FitViewport을 사용할 수 있습니다.

0

사용자의 화면이 꺼져 있습니다. 당신의 행성이 둥글지 않다는 것을 주목하십시오. 귀하의 뷰포트는 500x400이며 5 : 4 화면비이며 16:10 화면비를 원합니다.

한번에 변경

cam = new OrthographicCamera(500, 250 * aspectratio);

당신에게 800x500의 뷰포트, 또는 16:10을 줄 것이다

cam = new OrthographicCamera(500 * aspectratio, 500);

+0

죄송합니다. 잘못된 OrthographicCamera 코드를 붙여 넣었습니다. 게임 화면에서 내 OrthographicCamrea가 그 것이다 :'cam = new OrthographicCamera (100, 100 * aspectratio) ' –

+0

그러면 오른쪽에'* aspectratio'를 놓습니다. Aspectratio가 1보다 크고 너비가 너비보다 커야합니다. – Mick

관련 문제