c++ - 全局环境照明?

标签 c++ opengl

假设我的显示函数不是使用 opengl 函数而是逐像素绘制多边形,而是使用 drawpixel 函数。
我叫

   glLightModelfv(GL_LIGHT_MODEL_AMBIENT, global_ambient);
    glShadeModel(GL_SMOOTH);
    glEnable(GL_LIGHTING);

其中 global_ambient 是 0.0, 0.0, 0.0, 1.0 并且我定义了 Material 参数,即永远不会调用 glmaterial。全局环境照明是否仍然有效,因为我将无法看到多边形?或者我需要定义 Material 参数。

最佳答案

Lets say my display function draws polygons pixel by pixel not using opengl functions, but a drawpixel function.

如果这是真的,那么光照状态就完全无关紧要了。固定功能的 OpenGL 光照是per-vertex。您没有发送顶点;您正在发送像素数据。

关于c++ - 全局环境照明?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13450088/

相关文章:

类中的 C++ 函数指针

java - 奇怪的分配和字符串连接优化代码的一些描述

c++ - 确定由 Windows GUI 操作触发的基础调用

c++ - 对于我正在交叉编译的程序,如何将 ubuntu 上的 GLEW 交叉编译到 Windows?

c++ - 为什么我的 ifstream 程序以错误的顺序读取单词?

c++ - STL 删除没有按预期工作?

c++ - SDL2 : Generate fully transparent texture

c++ - GLM 从旋转中获取方向?

python - tkinter 中的非顶级 opengl 小部件

c++ - 使用VBO,CPU使用率非常高