public KeywordDescriptor Build()
            {
                var descriptor = new KeywordDescriptorInternal();

                descriptor.Setup(container, definition, scope, stage, name, ops.ToArray());
                var resultHandle = container.AddKeywordDescriptorInternal(descriptor);

                return(new KeywordDescriptor(container, resultHandle));
            }
예제 #2
0
 internal extern FoundryHandle AddKeywordDescriptorInternal(KeywordDescriptorInternal keywordDescriptorInternal);
 // private
 internal KeywordDescriptor(ShaderContainer container, FoundryHandle handle)
 {
     this.container  = container;
     this.handle     = handle;
     this.descriptor = container?.GetKeywordDescriptor(handle) ?? KeywordDescriptorInternal.Invalid();
 }