graphics - 为什么我的示例游戏中的颜色不连续(层)与照明?
问题描述
我正在测试 Sokol 库 ( https://github.com/floooh/sokol ) 以在 OpenGL、D3D11 和 Metal 中创建一个带有光照的简单游戏示例。我正在使用与 LearnOpenGL 教程(https://learnopengl.com/Lighting/Light-casters)类似的着色器。
这是我的片段着色器的一部分:
vec3 lightDir = normalize(light.position - v_position);
float diff = max(dot(normal, lightDir), 0.0);
diffuse = vec3(1.0,1.0,1.0) * diff * vec3(texture(u_diffuse, v_uv));
地面的颜色不是连续的,你可以看到颜色层(看红线)。
这是另一个使用 PBR 着色器的示例。同样,地面的颜色不是连续的。
为什么会发生这种情况?如何创建一个完美的平面地面?
解决方案
推荐阅读
- scala - 如何使用 scala-parser-combinators 进行非贪婪重复匹配?
- javascript - 无法让 fbq 触发车辆内容类型的查看内容
- c# - 错误:“元素应该已被选择,但它是一个 ng-select”,使用 selenium c#单击 ng-select 下拉选项
- twitter-bootstrap - .NET 5 MVC @Url.Action 总是转到 IActionResult 索引
- pine-script - 我在 timeframe.isintraday 中遇到了 Pinescript 的问题
- r - 计算 Cohen's d 时的 2 个输出
- reactjs - 从子组件中检索自动完成输入值
- sql - PostgreSQL 与 array_to_json 的奇怪行为
- javascript - 剑道网格不会从 API 请求中填充
- ios - 视图约束不更新