我想更多地了解LibGDX的内部世界。
例如在Graphics.java
内,我发现以下内容:
/** @return the width in pixels of the display surface */
public int getWidth ();
但是,我找不到getWidth()
方法的源代码。
我在哪里可以找到getWidth()
方法源代码?
答案 0 :(得分:5)
每个可用的后端/平台都有不同的接口实现。
在LWJGL后端,实现如下所示:
public int getWidth () {
if (canvas != null)
return Math.max(1, canvas.getWidth());
else
return (int)(Display.getWidth() * Display.getPixelScaleFactor());
}
将实际实现再次委托给AWT Canvas或LWJGL Display。
这种接口背后的一般理念可以在LibGDX中找到。您也可以自己执行特定于平台的代码。它在the wiki中被描述。
答案 1 :(得分:4)
来自libgdx docs(Graphics.java):
此接口封装与图形处理器的通信。 取决于可用的硬件和当前的应用程序 配置,此处提供对
GL20
和GL30
的访问权限。
基本上,Graphics.java
代表一个接口。 getWidth
方法是接口中的抽象方法,需要在实现接口的所有类中重写。
如果您希望查看getWidth
方法中的代码,您需要查看实现Graphics接口的其中一个类。