diff options
| author | Ellie Hermaszewska <ellieh@nvidia.com> | 2024-03-15 08:48:41 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-03-14 17:48:41 -0700 |
| commit | d40931cc8bde13520ea45769cf94e7cc6cc9065f (patch) | |
| tree | ecde6ebbfbc1445c587b0339332814837ff43229 /source/slang/slang-parameter-binding.cpp | |
| parent | c7d7a965c14318c07bd5b8ec60b960c2e95dfebd (diff) | |
Mesh shader refactoring and bugfixes (#3702)
Diffstat (limited to 'source/slang/slang-parameter-binding.cpp')
| -rw-r--r-- | source/slang/slang-parameter-binding.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/source/slang/slang-parameter-binding.cpp b/source/slang/slang-parameter-binding.cpp index ebaa58adb..5d7aaa651 100644 --- a/source/slang/slang-parameter-binding.cpp +++ b/source/slang/slang-parameter-binding.cpp @@ -2278,6 +2278,13 @@ static RefPtr<TypeLayout> computeEntryPointParameterTypeLayout( state.directionMask |= kEntryPointParameterDirection_Output; } + // For the purposes of type layout, mesh shader outputs are always + // treated as output only, despite missing an 'out' modifier + if(as<MeshOutputType>(paramDeclRef.getDecl()->getType())) + { + state.directionMask = kEntryPointParameterDirection_Output; + } + return processEntryPointVaryingParameterDecl( context, paramDeclRef.getDecl(), |
