Questions tagged «opengl»

OpenGL(开放图形库)是一种图形标准和API,与平台无关,可用于台式机,工作站和移动设备。它旨在提供硬件加速的渲染,因此与传统的软件渲染相比,性能大大提高。OpenGL用于CAD软件和计算机游戏等应用程序。OpenGL标准以及OpenGL ES由Khronos组控制。

2
条件语句会减慢着色器的速度吗?
我想知道着色器(顶点/片段/像素...)内部的“ if语句”是否真的减慢了着色器性能。例如: 最好使用这个: vec3 output; output = input*enable + input2*(1-enable); 而不是使用这个: vec3 output; if(enable == 1) { output = input; } else { output = input2; } 在另一个论坛上,有一个关于该话题的讨论(2013年):http : //answers.unity3d.com/questions/442688/shader-if-else-performance.html 在这里,人们说,If陈述确实很糟糕用于着色器的性能。 同样在这里,他们正在谈论if / else语句(2012)中的内容:https : //www.opengl.org/discussion_boards/showthread.php/177762-Performance-alternative-for-if-(-) 也许硬件或着色器编译器现在更好了,并且它们以某种方式解决了这个(也许不存在)性能问题。 编辑: 在这种情况下,可以说启用是一个统一变量,并且始终设置为0: if(enable == 1) //never happens { output = vec4(0,0,0,0); } else …
74 opengl  glsl  shader  direct3d  hlsl 

6
如何获得GL库/标题?
#include <gl\gl.h> #include <gl\glu.h> #include <gl\glaux.h> 这是一个示例,但是从哪里获取GL标头?
72 c++  opengl 

5
为什么OpenGL使用度数而不是弧度?
OpenGL设计人员从不惧怕数学,除了最简单的OpenGL应用程序之外,线性代数知识对于所有其他应用程序都是必不可少的。我认为可以肯定地假设OpenGL程序员熟悉弧度的角度。 在数学上,弧度在各个方面都比度更优雅。它们还具有实际优势: C标准库使用弧度。 几乎所有其他图书馆也都使用弧度。 在某些计算中,例如圆弧的长度,弧度更方便。 那么,为什么OpenGL设计者决定决定指定像度glRotatef和gluPerspective使用度数这样的函数? (我知道这没有实际意义,并且也不会改变。我只是好奇,在OpenGL.org上找不到答案。)

1
适用于MacOs Catalina的Electron OpenGL
我正在建立一个电子应用程序,但是我遇到一个错误,这使渲染变得非常缓慢,并导致较高的cpu使用率 [1] Unable to create basic Accelerated OpenGL renderer. [1] Unable to create basic Accelerated OpenGL renderer. [1] Core Image is now using the software OpenGL renderer. This will be slow. 我试图找出答案,但是我找不到关于该问题的答案。有人对这个问题有任何想法吗?

1
不能在Docker上运行JavaFX应用超过几分钟
我开发了一个用作单独Web应用程序的通信服务的应用程序。我有0个问题“正在使Web应用程序码头化”,但事实证明该服务是一场噩梦。它基于JavaFX,并且可以由用户在配置文件中设置一个属性,该属性使该属性不会使应用程序初始化任何窗口,菜单,容器等。这种“无头”模式(不确定是否真正无头...)有效地将服务应用程序变为后台服务。让我也以此开头作为开头,说该应用程序在Windows 10机器上运行时绝对可以完美运行,并且我已经将其部署在其他几台机器(所有未经过dockerized)上,没有任何问题。 这是我想出的dockerfile: FROM openjdk:13.0.1-slim RUN apt-get update && apt-get install libgtk-3-0 libglu1-mesa -y && apt-get update VOLUME /tmp ADD Some_Service-0.0.1-SNAPSHOT.jar Some_Service-0.0.1-SNAPSHOT.jar ADD lib lib ADD config.properties config.properties ENTRYPOINT ["java", "--module-path", "lib/javafx-sdk-13", "-jar", "Some_Service-0.0.1-SNAPSHOT.jar"] 然后,我使用此命令来构建容器: docker run -t --name Some_Service -e DISPLAY=192.168.1.71:0.0 -e SERVICE_HOME= --link mySQLMD:mysql some_service 假设VcXsrv在我的PC上运行,则该应用程序可以正确启动,尽管在首次启动时确实会给出以下警告: libGL error: …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.