私は現在、LWJGLテクスチャを使用して画面に画像を描画しています。スプライトシートからテクスチャ*を読みたいのですが。slickのTextureLoaderクラスを使用してテクスチャをロードしています。
LWJGLシェイプを描画し、それにテクスチャをバインドします。
例えば:
私は画像を描きます:
Texture texture = ResourceManager.loadTexture("Images/Tests/test.png");
GL11.glBegin(GL11.GL_QUADS);
{
GL11.glTexCoord2f(0, 0);
GL11.glVertex2f(0, 0);
GL11.glTexCoord2f(0, texture.getHeight());
GL11.glVertex2f(0, height);
GL11.glTexCoord2f(texture.getWidth(), texture.getHeight());
GL11.glVertex2f(width,height);
GL11.glTexCoord2f(texture.getWidth(), 0);
GL11.glVertex2f(width,0);
}
GL11.glEnd();
glTexCoord2fを呼び出すときに、スプライトオフセットを指定して、代わりにスプライトシートをテクスチャにロードする方法があると思います。
たとえば、1つの呼び出しは次のようになります。
GL11.glTexCoord2f(0+spriteXOffset, texture.getHeight()-spriteYOffset);
しかし、もっと簡単な方法があるかどうかを知りたいのですが、たとえば、ここで行うように、単一のテクスチャからテクスチャを抽出することもできます。
BufferedImageの代わりに、Textureオブジェクト。
お手伝いありがとう!