gpt4 book ai didi

opengl - OpenGL 二次色有什么用处?

转载 作者:行者123 更新时间:2023-12-02 06:08:18 25 4
gpt4 key购买 nike

glSecondaryColor 允许指定第二种颜色。第二种颜色有什么用?

我已经检查了kronos reference这并没有多大帮助:

The secondary color is interpolated and applied to each fragment during rasterization when GL_COLOR_SUM is enabled. When lighting is enabled, and GL_SEPARATE_SPECULAR_COLOR is specified, the value of the secondary color is assigned the value computed from the specular term of the lighting computation. Both the primary and secondary current colors are applied to each fragment, regardless of the state of GL_COLOR_SUM, under such conditions. When GL_SEPARATE_SPECULAR_COLOR is specified, the value returned from querying the current secondary color is undefined.

这种次要颜色的东西甚至可能看起来像旧 GL 版本的剩余物......我错了吗?

最佳答案

在固定功能照明模型中,原色和/或纹理颜色应用于漫反射照明镜面照明。因此,不可能有 Shiny 的黑色表面,因为黑色原色/纹理颜色将乘以镜面反射照明,使其实际上为零。

提供辅助颜色并启用GL_SEPARATE_SPECULAR_COLOR意味着镜面反射照明值将乘以辅助颜色而不是主颜色。因此,您可以使用黑色的主要/纹理颜色,次要颜色为 1.0。这将使您即使在表面的黑暗区域也能拥有明亮的光泽。

当然,这都是GL 3.1中丢弃的固定功能垃圾。借助着色器,您可以编写任何可以编码的照明模型。

关于opengl - OpenGL 二次色有什么用处?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46058971/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com