【问题标题】:Where can I find definition of all built-in variables in Metal shading language?在哪里可以找到 Metal 着色语言中所有内置变量的定义?
【发布时间】:2018-09-11 13:23:35
【问题描述】:

我得到了 Metal 着色器的 sn-p,但我找不到像 _surface 等内置变量的信息。

float AO = _surface.ambientOcclusion;
float lightContrib = _lightingContribution.diffuse.r;
lightContrib *= AO;


// mask of fresnel
float mask = _surface.specular.b;
float fresnel = saturate(dot(_surface.view, _surface.normal));

在哪里可以找到 Metal 着色器语言中所有内置变量的定义?我什至在 Apple 规范 Metal Shading Language Specification 中都找不到。

【问题讨论】:

    标签: ios scenekit metal


    【解决方案1】:

    这些不是由 Metal 公开的,而是特定于 SceneKit 框架的。

    它们是SCNShadable 功能的一部分,您可以在文档中找到有关不同入口点的一些信息:

    1. SCNShaderModifierEntryPointGeometry
    2. SCNShaderModifierEntryPointSurface
    3. SCNShaderModifierEntryPointLightingModel
    4. SCNShaderModifierEntryPointFragment

    <SceneKit/SCNShadable.h> 头文件还包含文档和示例。

    【讨论】:

    • 正是我想要的!比你
    猜你喜欢
    • 1970-01-01
    • 2021-08-17
    • 1970-01-01
    • 2021-12-10
    • 1970-01-01
    • 2014-06-19
    • 2016-12-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多