2014-01-07 3 views
-1

내 렌더링 된 텍스트가 거꾸로 나타납니다. 왼쪽 하단 모서리가 위치 (0,0)이고 내 코드 전체가이 문제를 기반으로한다는 것을 알고 있습니다. 나는 내 텍스트가 거꾸로 렌더링되는 이유는 newdawn.slick.Font 대신 java의 awt 글꼴 클래스를 사용하고 있기 때문입니다. 뒤집기를 수행하는 간단한 방법은 끝났습니까? 나는 사용을 시도했다. 그러나 모든 것을 렌더링을 멈추게하는 것은 뒤집기 위해 뒤집기 위해Lwjgl 글꼴 거꾸로

glScalef(1, -1, 1); 

을 사용했다. 슬릭은 왼쪽 상단 모서리에 기원을 사용하기 때문에 LWJGL는 왼쪽 아래에 기원을 사용 기본적으로 반면

import static org.lwjgl.opengl.GL11.*; 
import java.awt.Font; 

import org.newdawn.slick.Color; 
import org.newdawn.slick.TrueTypeFont; 

public class FontRenderer { 
    private TrueTypeFont font; 

    public FontRenderer(){ 
     Font awtFont = new Font("Times New Roman", java.awt.Font.PLAIN, 24); 
     font = new TrueTypeFont(awtFont, false); 
    } 

    public void render(float x, float y, String text){ 
     glEnable(GL_BLEND); 
     glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); 
     font.drawString(x, y, text); 
    } 

    public void render(float x, float y, String text, float r, float g, float b) 
    { 
     Color color = new Color(r, g, b); 
     glEnable(GL_BLEND); 
     glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); 
     font.drawString(x, y, text, color); 
    } 
} 
+0

필수 : ​​왜 LWJGL 글꼴 클래스 대신 awt 글꼴 클래스를 사용하고 있습니까? –

+0

은 newdawn.slick 패키지가 될까요? 클래스를 초기화하려고 할 때마다 초기화 할 수 없기 때문에 잘못된 클래스를 사용하고 있습니다. – user3141076

+0

어쩌면 그것의 무지에서 그 메신저 ... – user3141076

답변

0

귀하의 글꼴 아래

코드, 거꾸로 받고있다. 원점이 왼쪽 하단에 있음을 알았으므로 렌더링 코드가 왜 작동 할 것으로 기대하십니까?