我已经以正确的尺寸加载了我的游戏,显示了背景并播放了一些背景音乐,这应该是一个登录屏幕,我以前从未弄乱过图形,尽管我知道如何编写大部分服务器/客户端通信,所以这不会是一个问题。
如何绘制多个图像,以及如何将它们放在我想要的位置?
更重要的是,OpenGL 是否支持 PNG 图像的“透明”功能?因为这就是我通过半透明登录框、半透明按钮等开发开始屏幕的方式。
我知道如何加载图像,尽管绘制它们是另一回事..
public void drawStartScreen() {
Color.white.bind();
c.getAssets().backgroundImage.bind(); // or GL11.glBind(c.getAssets().backgroundImage.getTextureID());
GL11.glBegin(GL11.GL_QUADS);
GL11.glTexCoord2f(0, 0);
GL11.glVertex2f(0, 0);
GL11.glTexCoord2f(1, 0);
GL11.glVertex2f(c.getAssets().backgroundImage.getTextureWidth(), 0);
GL11.glTexCoord2f(1, 1);
GL11.glVertex2f(c.getAssets().backgroundImage.getTextureWidth(),
c.getAssets().backgroundImage.getTextureHeight());
GL11.glTexCoord2f(0, 1);
GL11.glVertex2f(0, c.getAssets().backgroundImage.getTextureHeight());
GL11.glEnd();
if(playMusic == true) {
c.getAssets().backgroundMusic.playAsMusic(1.0f, 1.0f, true);
playMusic=false;
}
}
我不知道如何使用上面的代码移动图像,所以我无法编写自己的方法来用“参数”“填充”上面的代码。
我试图让我的次要图像绘制到客户端中间,我知道人们可能会因此而看不起我,尽管这是我正在谈论的内容的一个小例子,也是我在编程方面的一些经验的来源多年来一直为 Runescape 创建基于服务器的模拟器,所以下面我将在背景上留下一个显示“登录框”的图像。按钮是透明的,带有黑色边缘,可以让你看到它下面的登录框,除了绘制黑色边框的位置。
这就是我所说的“透明”支持: