最初我用的是:
public void DrawQuad(int x, int y, float width, float height) {
GL11.glColor3f(0, 255, 255);
glBegin(GL_QUADS);
glVertex2f(-x, y);
glVertex2f(width, y);
glVertex2f(width, -height);
glVertex2f(-x, -height);
glEnd();
}
但它只是给了我一个错误:
public static void run() {
System.out.println("Hello LWJGL " + Version.getVersion() + "!");
Display window1 = new Display(640, 480);
window1.init();
while(window1.isRunning()) {
/*
glBegin(GL_QUADS);
glVertex2f(-0.5f, 0.5f);
glVertex2f(0.5f, 0.5f);
glVertex2f(0.5f, -0.5f);
glVertex2f(-0.5f, -0.5f);
glEnd();
*/
window1.DrawQuad(10, 10, 50, 50);
window1.update();
}
window1.terminate();
}
public static void main(String[] args) {
run();
}
显示类中的代码:
public long window;
private int length;
private int heigth;
public Display(int length, int heigth) {
this.length = length;
this.heigth = heigth;
}
public void init() {
if(!glfwInit()) {
throw new IllegalStateException("Failed to initalize GLFW!");
}
glfwWindowHint(GLFW_VISIBLE, GLFW_FALSE);
window = glfwCreateWindow(length, heigth, "test", 0, 0);
//glfwGetPrimaryMonitor() Replace for full screen^
if(window == 0) {
throw new IllegalStateException("Failed to initalize Window!");
}
GLFWVidMode videoMode = glfwGetVideoMode(glfwGetPrimaryMonitor());
glfwSetWindowPos(window, (videoMode.width() - length) / 2, (videoMode.height() - heigth) / 2);
glfwShowWindow(window);
}
public boolean isRunning() {
return(!glfwWindowShouldClose(this.window));
}
public void update() {
glfwSwapBuffers(window);
glfwPollEvents();
}
public void terminate() {
glfwTerminate();
}
public void DrawQuad(int x, int y, float width, float height) {
GL11.glColor3f(0, 255, 255);
glBegin(GL_QUADS);
glVertex2f(-x, y);
glVertex2f(width, y);
glVertex2f(width, -height);
glVertex2f(-x, -height);
glEnd();
//glLoadIdentity();
}
您没有将OpenGL上下文绑定到窗口。您需要在窗口创建后添加GLFWMakeContextCurrent(window)
问题内容: 使用Mobile Safari 转到http://m.google.com页面时,您会在页面顶部看到漂亮的栏。 我想那样画一些梯形(美国:梯形),但我不知道怎么做。我应该使用CSS3 3D转换吗?如果您有实现此目标的好方法,请告诉我。 问题答案: 您可以使用以下CSS: 制作所有这些形状真的很酷,请查看以下更漂亮的形状: http://css-tricks.com/examples/S
我只是试图用DrawOval()方法画圆,当我运行程序时,它只显示小正方形。我试图将构造函数添加到Surface类,但它不起作用。这是我制作的代码:
通过 Entity 添加形状 先来看一个添加立方体的例子 var viewer = new Cesium.Viewer('cesiumContainer'); var redBox = viewer.entities.add({ name : 'Red box with black outline', position: Cesium.Cartesian3.fromDegrees(-107
用Pixi绘制几何图形 使用图片纹理是制作精灵最有效的方式之一,但是Pixi也提供了自己低级的绘画工具。你可以使用它们来创造矩形、线段、复杂的多边形以及文本。并且它使用和Canvas Drawing API几乎一致的api,所以如果你熟悉canvas的话,那么几乎没有什么新东西需要学习。当然另一个巨大的优势在于,不同于Canvas的绘画api,你使用Pixi绘制的图形是通过WebGL在GPU上渲染
假设我有三个锚,来自阿拉片段的命中结果。 锚定=命中结果。createAnchor(); 如何使用Sceneform绘制三角形并应用自定义纹理?
我有一个名为pct的数据集 我想使用ggplot2或绘图包获得正条形图和负条形图。 给定下表中的数据集 我想得到这样的东西