Class PipelineBuilder
java.lang.Object
com.mojang.renderpearl.frontend.shaders.PipelineBuilder
- All Implemented Interfaces:
UncheckedAutoCloseable, AutoCloseable
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static final record -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final GpuDeviceBackendprivate final GlslCompilerprivate static final org.slf4j.Logger -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()compilePipeline(RenderPipeline pipeline, ShaderSource shaderSource, Executor executor) private BackendRenderPipeline.CreateInfogenerateBackendCreateInfo(RenderPipeline pipeline, ShaderSource shaderSource, it.unimi.dsi.fastutil.objects.ReferenceArrayList<BackendRenderPipeline.CreateInfo.Shader> shaderCreateInfos, it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap<String> uniformBindings) private static it.unimi.dsi.fastutil.ints.Int2ObjectMap<PipelineBuilder.InterfaceVariableInfo> generateSlotMap(List<SpvModule.Reflection.InterfaceVariable> interfaceVariables, String stageName, ShaderType shaderType) loadShaderSource(Identifier id, ShaderType type, ShaderSource shaderSource)
-
Field Details
-
LOGGER
private static final org.slf4j.Logger LOGGER -
backendDevice
-
compiler
-
-
Constructor Details
-
PipelineBuilder
-
-
Method Details
-
close
public void close()- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceUncheckedAutoCloseable
-
generateBackendCreateInfo
private BackendRenderPipeline.CreateInfo generateBackendCreateInfo(RenderPipeline pipeline, ShaderSource shaderSource, it.unimi.dsi.fastutil.objects.ReferenceArrayList<BackendRenderPipeline.CreateInfo.Shader> shaderCreateInfos, it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap<String> uniformBindings) -
compilePipeline
public CompletableFuture<CompiledRenderPipeline.Pending> compilePipeline(RenderPipeline pipeline, ShaderSource shaderSource, Executor executor) -
loadShaderSource
private static @Nullable String loadShaderSource(Identifier id, ShaderType type, ShaderSource shaderSource) -
generateSlotMap
private static it.unimi.dsi.fastutil.ints.Int2ObjectMap<PipelineBuilder.InterfaceVariableInfo> generateSlotMap(List<SpvModule.Reflection.InterfaceVariable> interfaceVariables, String stageName, ShaderType shaderType) throws ShaderCompileException - Throws:
ShaderCompileException
-