### VeilImGuiImpl Initialization and Management Source: https://foundrymc.github.io/Veil/foundry/veil/impl/client/imgui/VeilImGuiImpl.html This section details the methods for initializing, starting, stopping, and managing the ImGui frame within the VeilImGuiImpl class. ```APIDOC ## POST /veil/imgui/init ### Description Initializes the ImGui context with the provided window handle. This method is deprecated and should not be used in new implementations. ### Method POST ### Endpoint /veil/imgui/init ### Parameters #### Query Parameters - **window** (long) - Required - The handle to the window for ImGui initialization. ### Request Example ```json { "window": 1234567890 } ``` ### Response #### Success Response (200) - **status** (string) - Indicates the success of the operation. #### Response Example ```json { "status": "Initialization successful (deprecated)" } ``` ## GET /veil/imgui/get ### Description Retrieves the singleton instance of VeilImGui. This method is deprecated. ### Method GET ### Endpoint /veil/imgui/get ### Response #### Success Response (200) - **instance** (VeilImGui) - The deprecated VeilImGui instance. #### Response Example ```json { "instance": "[Deprecated VeilImGui instance reference]" } ``` ## POST /veil/imgui/start ### Description Starts the ImGui frame. This method is deprecated. ### Method POST ### Endpoint /veil/imgui/start ### Response #### Success Response (200) - **status** (string) - Indicates the success of the operation. #### Response Example ```json { "status": "Frame started (deprecated)" } ``` ## POST /veil/imgui/stop ### Description Stops the ImGui frame. This method is deprecated. ### Method POST ### Endpoint /veil/imgui/stop ### Response #### Success Response (200) - **status** (string) - Indicates the success of the operation. #### Response Example ```json { "status": "Frame stopped (deprecated)" } ``` ## POST /veil/imgui/beginFrame ### Description Begins a new ImGui frame. This method is deprecated. ### Method POST ### Endpoint /veil/imgui/beginFrame ### Response #### Success Response (200) - **status** (string) - Indicates the success of the operation. #### Response Example ```json { "status": "Begin frame called (deprecated)" } ``` ## POST /veil/imgui/endFrame ### Description Ends the current ImGui frame. This method is deprecated. ### Method POST ### Endpoint /veil/imgui/endFrame ### Response #### Success Response (200) - **status** (string) - Indicates the success of the operation. #### Response Example ```json { "status": "End frame called (deprecated)" } ``` ## POST /veil/imgui/updateFonts ### Description Updates the ImGui fonts. This method is deprecated. ### Method POST ### Endpoint /veil/imgui/updateFonts ### Response #### Success Response (200) - **status** (string) - Indicates the success of the operation. #### Response Example ```json { "status": "Fonts updated (deprecated)" } ``` ## POST /veil/imgui/free ### Description Frees the native resources associated with ImGui. This method is deprecated. ### Method POST ### Endpoint /veil/imgui/free ### Response #### Success Response (200) - **status** (string) - Indicates the success of the operation. #### Response Example ```json { "status": "Resources freed (deprecated)" } ``` ``` -------------------------------- ### SodiumShaderProcessor setup Method (Java) Source: https://foundrymc.github.io/Veil/foundry/veil/impl/client/render/shader/processor/SodiumShaderProcessor.html Sets up the SodiumShaderProcessor with a ResourceProvider. This method is essential for initializing the shader processing capabilities. ```java public static void setup(net.minecraft.server.packs.resources.ResourceProvider provider) ``` -------------------------------- ### addPreprocessorFirst Source: https://foundrymc.github.io/Veil/foundry/veil/impl/client/render/shader/processor/ShaderProcessorList.html Adds a shader pre-processor to the start of the stack. ```APIDOC ## POST /addPreprocessorFirst ### Description Adds the specified pre-processor to the start of the stack. This method is part of the VeilAddShaderPreProcessorsEvent.Registry interface. ### Method POST ### Endpoint /addPreprocessorFirst ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **processor** (ShaderPreProcessor) - Required - The processor to add. - **modifyImports** (boolean) - Required - Whether the processor will also be run on imports. ### Request Example ```json { "processor": "ShaderPreProcessor_Instance", "modifyImports": false } ``` ### Response #### Success Response (200) - **status** (string) - Indicates success. #### Response Example ```json { "status": "Preprocessor added to the beginning successfully" } ``` ``` -------------------------------- ### Get Enum Argument Examples (Java) Source: https://foundrymc.github.io/Veil/foundry/veil/impl/ClientEnumArgument.html This method returns a collection of example strings for the enum argument. These examples are useful for command help messages and demonstrating valid inputs. ```java public Collection getExamples() ``` -------------------------------- ### RenderStyle Interface Source: https://foundrymc.github.io/Veil/foundry/veil/api/quasar/particle/RenderStyle.html Defines how a particle emitter renders a set of particles. Includes methods for setup, rendering, clearing, and getting the render type. ```APIDOC ## Interface: RenderStyle ### Description Defines how a particle emitter renders a set of particles. ### Nested Classes - `RenderStyle.Billboard` (static final class) - `RenderStyle.Cube` (static final class) ### Fields - **CODEC** (static final com.mojang.serialization.Codec) - Codec for serializing RenderStyle. ### Methods #### `setup` - **Method**: `setup` - **Signature**: `default boolean setup(int particleCount)` - **Description**: Called before rendering any particles. This will not be fired if the emitter has no particles. - **Parameters**: - `particleCount` (int) - Required - The number of particles that will be rendered. - **Returns**: boolean - Whether the particles are allowed to render. - **Since**: 1.3.0 #### `clear` - **Method**: `clear` - **Signature**: `default void clear()` - **Description**: Called after rendering all particles. - **Since**: 1.3.0 #### `render` - **Method**: `render` - **Signature**: `void render(MatrixStack matrixStack, QuasarParticle particle, RenderData renderData, org.joml.Vector3fc renderOffset, com.mojang.blaze3d.vertex.VertexConsumer builder, double ageModifier, float partialTicks)` - **Description**: Draws a single particle. - **Parameters**: - `matrixStack` (MatrixStack) - Required - The current stack of matrix transformations. - `particle` (QuasarParticle) - Required - The particle to render. - `renderData` (RenderData) - Required - The render data associated with that particle. - `renderOffset` (org.joml.Vector3fc) - Required - The offset from the camera to draw the particle at. - `builder` (com.mojang.blaze3d.vertex.VertexConsumer) - Required - The vertex consumer to draw into. - `ageModifier` (double) - Required - The age modifier for the particle. - `partialTicks` (float) - Required - The percentage from last tick to this tick. #### `getRenderType` - **Method**: `getRenderType` - **Signature**: `default net.minecraft.client.renderer.RenderType getRenderType(QuasarParticle particle, RenderData renderData)` - **Description**: Returns the render type to use for the specified particle. - **Parameters**: - `particle` (QuasarParticle) - Required - The particle to get the render type for. - `renderData` (RenderData) - Required - The render data associated with the particle. - **Returns**: net.minecraft.client.renderer.RenderType - The render type. - **Since**: 1.3.0 - **See Also**: `RenderData.markDirty()` ``` -------------------------------- ### initStyles Method Source: https://foundrymc.github.io/Veil/foundry/veil/impl/client/imgui/VeilImGuiStylesheet.html Initializes the default styles for the Veil ImGui stylesheet. ```APIDOC ## initStyles Method ### Description Initializes the default styles for the Veil ImGui stylesheet. This method should be called once during application startup. ### Method static void ### Endpoint N/A ### Parameters None ### Request Example ```javascript VeilImGuiStylesheet.initStyles(); ``` ### Response #### Success Response (200) - **void** - This method does not return a value. #### Response Example None ``` -------------------------------- ### VeilDebug Enum Constants and Get Method Source: https://foundrymc.github.io/Veil/foundry/veil/api/client/render/ext/VeilDebug.html Defines the enum constants DISABLED and ENABLED for controlling debug output, and a static get method to retrieve the current debug implementation. ```java public static final VeilDebug DISABLED public static final VeilDebug ENABLED public static VeilDebug get() ``` -------------------------------- ### Get Icon Code for McMetaResource Source: https://foundrymc.github.io/Veil/foundry/veil/api/resource/type/McMetaResource.html Gets the integer icon code for this McMetaResource. The icon code is typically represented in hexadecimal format (e.g., 0xED0F). This method is specified by the VeilResource interface. ```java public int getIconCode() ``` -------------------------------- ### GuiInfo Constructor Source: https://foundrymc.github.io/Veil/foundry/veil/api/client/render/GuiInfo.html Initializes a new GuiInfo object, creating a set of camera matrices. ```APIDOC ## GuiInfo Constructor ### Description Creates a new set of camera matrices. ### Method Constructor ### Endpoint N/A ### Parameters None ### Request Example ```java GuiInfo guiInfo = new GuiInfo(); ``` ### Response #### Success Response (200) N/A (Constructor) #### Response Example N/A ``` -------------------------------- ### ShaderFeature Methods Source: https://foundrymc.github.io/Veil/foundry/veil/api/client/render/shader/ShaderFeature.html Provides methods to get the array of all enum constants, retrieve an enum constant by name, check if a feature is supported, get its GLSL definition name, and modify a shader. ```java public static ShaderFeature[] values() public static ShaderFeature valueOf(String name) public boolean isSupported() public String getDefinitionName() public void modifyShader(io.github.ocelot.glslprocessor.api.node.GlslTree tree) ``` -------------------------------- ### DynamicShaderProgramImpl Methods Source: https://foundrymc.github.io/Veil/foundry/veil/impl/client/render/shader/program/DynamicShaderProgramImpl.html Documentation for the instance methods of DynamicShaderProgramImpl, including shader attachment, source processing, and resource management. ```APIDOC ## DynamicShaderProgramImpl Methods ### Description Documentation for the instance methods of DynamicShaderProgramImpl, including shader attachment, source processing, and resource management. ### Method `attachShaders` ### Description Attaches shaders to the compiled program using the provided source set and compiler. This method overrides the one in the superclass. ### Method `protected void attachShaders(ShaderProgramImpl.CompiledProgram compiledProgram, ShaderSourceSet sourceSet, ShaderCompiler compiler)` ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example ```json { "compiledProgram": "", "sourceSet": "", "compiler": "" } ``` ### Response #### Success Response (200) None #### Response Example None --- ### Method `setShaderSources` ### Description Sets the shader sources for the dynamic shader program. ### Method `public void setShaderSources(it.unimi.dsi.fastutil.ints.Int2ObjectMap shaderSources)` ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **shaderSources** (Int2ObjectMap) - Required - A map where keys are buffer indices and values are shader source strings. ### Request Example ```json { "shaderSources": { "0": "#version 330 core\nin vec3 position;\nout vec4 fragColor;\nvoid main() { fragColor = vec4(position, 1.0); }" } } ``` ### Response #### Success Response (200) None #### Response Example None --- ### Method `processShaderSources` ### Description Processes the shader sources with the given processor list, pre-definitions, and active buffer count. ### Method `public void processShaderSources(ShaderProcessorList processorList, ShaderPreDefinitions definitions, int activeBuffers)` ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **processorList** (ShaderProcessorList) - Required - A list of shader processors. - **definitions** (ShaderPreDefinitions) - Required - Pre-defined shader macros. - **activeBuffers** (int) - Required - The number of active buffers. ### Request Example ```json { "processorList": "", "definitions": { "VERSION": "330 core" }, "activeBuffers": 4 } ``` ### Response #### Success Response (200) None #### Response Example None --- ### Method `free` ### Description Frees the resources associated with this shader program. Implements `AutoCloseable` and `NativeResource`. ### Method `public void free()` ### Parameters None ### Request Example None ### Response #### Success Response (200) None #### Response Example None --- ### Method `getOldShader` ### Description Retrieves the previously bound shader program, if any. ### Method `@Nullable public ShaderProgramImpl getOldShader()` ### Parameters None ### Request Example None ### Response #### Success Response (200) - **ShaderProgramImpl** (ShaderProgramImpl) - The previous shader program or null if none was set. #### Response Example ```json { "oldShader": "" } ``` --- ### Method `setOldShader` ### Description Sets the previous shader program. ### Method `public void setOldShader(@Nullable ShaderProgramImpl program)` ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **program** (ShaderProgramImpl) - Optional - The shader program to set as the previous one. ### Request Example ```json { "program": "" } ``` ### Response #### Success Response (200) None #### Response Example None ``` -------------------------------- ### Get ID of Registry Object (Java) Source: https://foundrymc.github.io/Veil/foundry/veil/platform/registry/RegistryObject.html Retrieves the unique identifier (ID) of the registry object as a ResourceLocation. This is a convenient way to get the object's name in a registry-agnostic format. It is a default method. ```java default net.minecraft.resources.ResourceLocation getId() ``` -------------------------------- ### MinecraftServerMixin Constructor Source: https://foundrymc.github.io/Veil/foundry/veil/mixin/scheduler/MinecraftServerMixin.html Initializes a new instance of the MinecraftServerMixin class. ```APIDOC ## MinecraftServerMixin Constructor ### Description Initializes a new instance of the MinecraftServerMixin class. ### Method CONSTRUCTOR ### Endpoint N/A ### Parameters None ### Request Example ```json {} ``` ### Response #### Success Response (200) Represents a newly created MinecraftServerMixin instance. #### Response Example ```json { "message": "MinecraftServerMixin instance created successfully" } ``` ``` -------------------------------- ### FloatPropertyModifier Method: get Source: https://foundrymc.github.io/Veil/foundry/veil/api/flare/modifier/modifiers/FloatPropertyModifier.html The get method calculates and returns the current float value based on the provided controller. This method is specified in the parent PropertyModifier class and is crucial for retrieving the modified property value. ```java public Float get(Controller controller) ``` -------------------------------- ### VeilClient Initialization and Access Source: https://foundrymc.github.io/Veil/foundry/veil/VeilClient.html This section details the initialization method and how to access client platform and resource manager instances. ```APIDOC ## POST /veil/client/init ### Description Initializes the Veil client. This method should be called once during the application startup. ### Method POST ### Endpoint /veil/client/init ### Parameters #### Query Parameters None #### Request Body None ### Request Example ```json {} ``` ### Response #### Success Response (200) - **status** (string) - Indicates the success of the initialization. #### Response Example ```json { "status": "initialized" } ``` ## GET /veil/client/platform ### Description Retrieves the current client platform information. ### Method GET ### Endpoint /veil/client/platform ### Parameters #### Query Parameters None #### Request Body None ### Request Example ```json null ``` ### Response #### Success Response (200) - **platform** (string) - The name of the client platform (e.g., 'forge', 'fabric'). #### Response Example ```json { "platform": "forge" } ``` ## GET /veil/client/resourceManager ### Description Retrieves the resource manager instance for the Veil client. ### Method GET ### Endpoint /veil/client/resourceManager ### Parameters #### Query Parameters None #### Request Body None ### Request Example ```json null ``` ### Response #### Success Response (200) - **resourceManagerId** (string) - A unique identifier for the resource manager instance. #### Response Example ```json { "resourceManagerId": "rm_12345" } ``` ``` -------------------------------- ### Get Renderer Source: https://foundrymc.github.io/Veil/foundry/veil/api/client/render/VeilRenderSystem.html Retrieves the Veil renderer instance. ```APIDOC ## GET renderer ### Description Retrieves the singleton instance of the Veil renderer. ### Method GET ### Endpoint /veil/renderer ### Parameters None ### Response #### Success Response (200) - **renderer** (VeilRenderer) - The Veil renderer instance. ``` -------------------------------- ### PipelineWindowMixin Constructor Source: https://foundrymc.github.io/Veil/foundry/veil/mixin/pipeline/client/PipelineWindowMixin.html Initializes a new instance of the PipelineWindowMixin class. ```APIDOC ## PipelineWindowMixin Constructor ### Description Initializes a new instance of the PipelineWindowMixin class. ### Method CONSTRUCTOR ### Endpoint N/A ### Parameters None ### Request Example ```json { "example": "new PipelineWindowMixin()" } ``` ### Response #### Success Response (200) - **instance** (PipelineWindowMixin) - A new instance of PipelineWindowMixin. #### Response Example ```json { "example": "Instance of PipelineWindowMixin created successfully." } ``` ``` -------------------------------- ### WindowMixin Methods Source: https://foundrymc.github.io/Veil/foundry/veil/mixin/fix/WindowMixin.html Documentation for the instance methods of the WindowMixin class. ```APIDOC ## Method: modifyMajorVersion ### Description Modifies the major version number. ### Method `public int modifyMajorVersion(int value, com.llamalad7.mixinextras.sugar.ref.LocalIntRef major)` ### Endpoint N/A (Instance Method) ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example N/A ### Response #### Success Response (int) - **return value** (int) - The modified major version number. #### Response Example ```json { "returnValue": 1 } ``` ``` ```APIDOC ## Method: modifyMinorVersion ### Description Modifies the minor version number. ### Method `public int modifyMinorVersion(int value, com.llamalad7.mixinextras.sugar.ref.LocalIntRef major)` ### Endpoint N/A (Instance Method) ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example N/A ### Response #### Success Response (int) - **return value** (int) - The modified minor version number. #### Response Example ```json { "returnValue": 1 } ``` ``` -------------------------------- ### Get Render Thread Executor Source: https://foundrymc.github.io/Veil/foundry/veil/api/client/render/VeilRenderSystem.html Retrieves the executor for the render thread. ```APIDOC ## GET renderThreadExecutor ### Description Retrieves the executor service specifically designated for render thread operations. ### Method GET ### Endpoint /veil/renderThread/executor ### Parameters None ### Response #### Success Response (200) - **executor** (Executor) - The executor for the render thread. ``` -------------------------------- ### DynamicShaderBlockImpl Methods Source: https://foundrymc.github.io/Veil/foundry/veil/impl/client/render/shader/block/DynamicShaderBlockImpl.html Provides documentation for the core methods of the DynamicShaderBlockImpl class, including getSize, setSize, bind, unbind, and free. ```APIDOC ## Methods of DynamicShaderBlockImpl ### getSize #### Description Gets the current size of the shader block in bytes. #### Method `public int getSize()` #### Endpoint N/A (Instance Method) #### Parameters None #### Request Body None #### Response ##### Success Response (200) - **size** (int) - The size of the block in bytes. #### Response Example ```json { "size": 1024 } ``` --- ### setSize #### Description Resizes this shader block to match the new specified size. #### Method `public void setSize(int size)` #### Endpoint N/A (Instance Method) #### Parameters ##### Query Parameters - **size** (int) - Required - The new size in bytes. #### Request Body None #### Response ##### Success Response (200) None (void method) #### Response Example N/A --- ### bind #### Description Binds this shader block to the specified index. #### Method `public void bind(int index)` #### Endpoint N/A (Instance Method) #### Parameters ##### Query Parameters - **index** (int) - Required - The index to bind this block to. #### Request Body None #### Response ##### Success Response (200) None (void method) #### Response Example N/A --- ### unbind #### Description Unbinds this shader block from the specified index. #### Method `public void unbind(int index)` #### Endpoint N/A (Instance Method) #### Parameters ##### Query Parameters - **index** (int) - Required - The index to unbind this block from. #### Request Body None #### Response ##### Success Response (200) None (void method) #### Response Example N/A --- ### free #### Description Frees the resources associated with this shader block. Implements `org.lwjgl.system.NativeResource`. #### Method `public void free()` #### Endpoint N/A (Instance Method) #### Parameters None #### Request Body None #### Response ##### Success Response (200) None (void method) #### Response Example N/A ``` -------------------------------- ### Get Framebuffer Dimensions (Java) Source: https://foundrymc.github.io/Veil/foundry/veil/api/client/render/framebuffer/AdvancedFbo.html Retrieves the width and height of the framebuffer. ```Java @Contract(pure=true) int getWidth() Returns: The width of this framebuffer @Contract(pure=true) int getHeight() Returns: The height of this framebuffer ``` -------------------------------- ### InstancedPointLightRenderer Constructor Source: https://foundrymc.github.io/Veil/foundry/veil/impl/client/render/light/InstancedPointLightRenderer.html Initializes a new instance of the InstancedPointLightRenderer class. ```APIDOC ## InstancedPointLightRenderer Constructor ### Description Initializes a new instance of the InstancedPointLightRenderer class. ### Method CONSTRUCTOR ### Endpoint N/A ### Parameters None ### Request Example ```json { "example": "new InstancedPointLightRenderer()" } ``` ### Response #### Success Response (200) - **Instance** (InstancedPointLightRenderer) - A new instance of the renderer. #### Response Example ```json { "example": "Instance created successfully" } ``` ``` -------------------------------- ### VeilEditorEnvironment - get resource manager Source: https://foundrymc.github.io/Veil/foundry/veil/api/resource/VeilEditorEnvironment.html Retrieves the VeilResourceManager instance associated with this environment. ```APIDOC ## GET /veil/editor/resourceManager ### Description Gets the resource manager instance for this editor environment. ### Method GET ### Endpoint /veil/editor/resourceManager ### Response #### Success Response (200) - **resourceManager** (VeilResourceManager) - The resource manager instance. #### Response Example ```json { "resourceManager": "" } ``` ``` -------------------------------- ### WrapperShaderBlockImpl Constructor Source: https://foundrymc.github.io/Veil/foundry/veil/impl/client/render/shader/block/WrapperShaderBlockImpl.html Initializes a new instance of the WrapperShaderBlockImpl class. ```APIDOC ## WrapperShaderBlockImpl Constructor ### Description Initializes a new instance of the WrapperShaderBlockImpl class. ### Method `public WrapperShaderBlockImpl(ShaderBlock.BufferBinding binding, int buffer)` ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example ```json { "binding": "ShaderBlock.BufferBinding", "buffer": 0 } ``` ### Response #### Success Response (200) None (Constructors do not return values) #### Response Example None ``` -------------------------------- ### PipelineMinecraftMixin Constructor Source: https://foundrymc.github.io/Veil/foundry/veil/mixin/pipeline/client/PipelineMinecraftMixin.html Initializes a new instance of the PipelineMinecraftMixin class. ```APIDOC ## PipelineMinecraftMixin Constructor ### Description Initializes a new instance of the PipelineMinecraftMixin class. ### Method CONSTRUCTOR ### Endpoint N/A ### Parameters None ### Request Example ```json { "example": "No request body needed for constructor" } ``` ### Response #### Success Response (200) - **instance** (PipelineMinecraftMixin) - A new instance of PipelineMinecraftMixin. #### Response Example ```json { "example": "Instance of PipelineMinecraftMixin created" } ``` ``` -------------------------------- ### Get Attachment Height Source: https://foundrymc.github.io/Veil/foundry/veil/api/client/render/framebuffer/AdvancedFboTextureAttachment.html Returns the height of the texture attachment. ```java public int getHeight() ``` -------------------------------- ### Get Attachment Width Source: https://foundrymc.github.io/Veil/foundry/veil/api/client/render/framebuffer/AdvancedFboTextureAttachment.html Returns the width of the texture attachment. ```java public int getWidth() ``` -------------------------------- ### ShaderModificationManager.Preparations Constructor and Methods Source: https://foundrymc.github.io/Veil/foundry/veil/api/client/render/shader/ShaderModificationManager.Preparations.html This section details the constructor and public methods of the ShaderModificationManager.Preparations record class. ```APIDOC ## ShaderModificationManager.Preparations ### Description A record class representing preparations for shader modifications, holding maps of shaders and their associated names. ### Constructor #### `Preparations(Map> shaders, Map names)` Creates an instance of a `Preparations` record class. **Parameters:** - `shaders` (Map>) - Required - The map of resource locations to shader modifications. - `names` (Map) - Required - The map of shader modifications to their resource locations. ### Methods #### `shaders()` Returns the value of the `shaders` record component. **Returns:** - Map> - The map of shaders. #### `names()` Returns the value of the `names` record component. **Returns:** - Map - The map of names. #### `toString()` Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. **Returns:** - String - A string representation of this object. #### `hashCode()` Returns a hash code value for this object. The value is derived from the hash code of each of the record components. **Returns:** - int - A hash code value for this object. #### `equals(Object o)` Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. **Parameters:** - `o` (Object) - The object with which to compare. **Returns:** - boolean - `true` if this object is the same as the `o` argument; `false` otherwise. ``` -------------------------------- ### Get Frustum Planes Source: https://foundrymc.github.io/Veil/foundry/veil/api/client/render/CullFrustum.html Retrieves the plane data that defines the frustum. ```APIDOC ## GET /getPlanes ### Description Returns the data for each plane that defines the frustum. ### Method GET ### Endpoint /getPlanes ### Parameters None ### Response #### Success Response (200) - **planes** (org.joml.Vector4fc[]) - An array of Vector4f objects, where each represents a plane in the frustum (normal.x, normal.y, normal.z, constant). #### Response Example ```json { "planes": [ {"x": 0.0, "y": 0.0, "z": 1.0, "w": -10.0}, {"x": 0.0, "y": 0.0, "z": -1.0, "w": -10.0}, {"x": 1.0, "y": 0.0, "z": 0.0, "w": -10.0}, {"x": -1.0, "y": 0.0, "z": 0.0, "w": -10.0}, {"x": 0.0, "y": 1.0, "z": 0.0, "w": -10.0}, {"x": 0.0, "y": -1.0, "z": 0.0, "w": -10.0} ] } ``` ``` -------------------------------- ### Initialize VanillaShaderCompiler Source: https://foundrymc.github.io/Veil/foundry/veil/impl/client/render/dynamicbuffer/VanillaShaderCompiler.html Constructs a new VanillaShaderCompiler instance. This is the primary way to create an object for managing shader compilation. ```java public VanillaShaderCompiler() ``` -------------------------------- ### Tick Task Scheduler API Source: https://foundrymc.github.io/Veil/foundry/veil/ext/MinecraftServerExtension.html Provides methods to get or create a TickTaskSchedulerImpl for server operations. ```APIDOC ## Minecraft Server Extension API ### Description This API provides access to the server's tick task scheduler. ### Method Summary #### Instance Methods * `veil$getOrCreateScheduler()`: Creates and returns a new `TickTaskSchedulerImpl` if one does not exist. * `veil$getScheduler()`: Returns the existing `TickTaskSchedulerImpl`. ### Method Details #### `veil$getScheduler()` * **Method:** `GET` (Conceptual - this is an interface method, not a REST endpoint) * **Endpoint:** N/A * **Description:** Retrieves the current `TickTaskSchedulerImpl` instance. * **Return Type:** `TickTaskSchedulerImpl` (nullable) #### `veil$getOrCreateScheduler()` * **Method:** `POST` (Conceptual - this is an interface method, not a REST endpoint) * **Endpoint:** N/A * **Description:** Gets the current `TickTaskSchedulerImpl` or creates a new one if it doesn't exist. * **Return Type:** `TickTaskSchedulerImpl` ``` -------------------------------- ### ShaderMultiProcessor Constructor and Methods (Java) Source: https://foundrymc.github.io/Veil/foundry/veil/api/client/render/shader/processor/ShaderMultiProcessor.html This snippet shows the constructor and key methods of the ShaderMultiProcessor class. It allows for creating an instance with an array of ShaderPreProcessors and includes methods for preparation, modification, and standard object operations like equals, hashCode, and toString. ```java public record ShaderMultiProcessor(ShaderPreProcessor[] processors) extends Record implements ShaderPreProcessor public ShaderMultiProcessor(ShaderPreProcessor[] processors) { // Constructor implementation } public void prepare() { // Implementation for preparing the shader pre-processor. } public void modify(ShaderPreProcessor.Context ctx, io.github.ocelot.glslprocessor.api.node.GlslTree tree) throws IOException, io.github.ocelot.glslprocessor.api.GlslSyntaxException, io.github.ocelot.glslprocessor.lib.anarres.cpp.LexerException { // Implementation for modifying the shader source input. } public ShaderPreProcessor[] processors() { // Returns the array of processors. return this.processors; } public final String toString() { // Returns a string representation of the object. } public final int hashCode() { // Returns the hash code for the object. } public final boolean equals(Object o) { // Checks for equality with another object. } ``` -------------------------------- ### Get Actions for McMetaResource Source: https://foundrymc.github.io/Veil/foundry/veil/api/resource/type/McMetaResource.html Retrieves all actions that can be performed on this McMetaResource. This method is specified by the VeilResource interface. ```java public List> getActions() ``` -------------------------------- ### SodiumShaderPreProcessor Constructor Source: https://foundrymc.github.io/Veil/foundry/veil/impl/compat/sodium/SodiumShaderPreProcessor.html Initializes a new instance of the SodiumShaderPreProcessor class. ```APIDOC ## SodiumShaderPreProcessor() ### Description Initializes a new instance of the `SodiumShaderPreProcessor` class. ### Method `SodiumShaderPreProcessor` ### Endpoint N/A (Constructor) ### Parameters None ### Request Example ```java SodiumShaderPreProcessor preProcessor = new SodiumShaderPreProcessor(); ``` ### Response #### Success Response (Instance) - `SodiumShaderPreProcessor` (object) - An instance of the SodiumShaderPreProcessor. #### Response Example ```java // No direct response example for constructor, but the object is created. ``` ``` -------------------------------- ### ShaderGameRendererMixin Constructor Source: https://foundrymc.github.io/Veil/foundry/veil/mixin/shader/client/ShaderGameRendererMixin.html Initializes a new instance of the ShaderGameRendererMixin class. ```APIDOC ## ShaderGameRendererMixin Constructor ### Description Initializes a new instance of the ShaderGameRendererMixin class. ### Method Constructor ### Endpoint N/A ### Parameters None ### Request Example ```json { "example": "No request body for constructor" } ``` ### Response #### Success Response (200) - **N/A** (void) - Constructor does not return a value. #### Response Example ```json { "example": "No response body for constructor" } ``` ``` -------------------------------- ### Get Frame Height Source: https://foundrymc.github.io/Veil/foundry/veil/api/quasar/particle/SpriteData.html Returns the height of each individual frame in the sprite. ```java public int frameHeight() ``` -------------------------------- ### Get Frame Width Source: https://foundrymc.github.io/Veil/foundry/veil/api/quasar/particle/SpriteData.html Returns the width of each individual frame in the sprite. ```java public int frameWidth() ``` -------------------------------- ### DynamicShaderBlockImpl Constructor Source: https://foundrymc.github.io/Veil/foundry/veil/impl/client/render/shader/block/DynamicShaderBlockImpl.html Initializes a new instance of the DynamicShaderBlockImpl class with the specified buffer binding, initial size, and serializer. ```APIDOC ## Constructor DynamicShaderBlockImpl ### Description Initializes a new instance of the `DynamicShaderBlockImpl` class. ### Method `public DynamicShaderBlockImpl(ShaderBlock.BufferBinding binding, int initialSize, BiConsumer serializer)` ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example ```json { "binding": "ShaderBlock.BufferBinding", "initialSize": 1024, "serializer": "BiConsumer" } ``` ### Response #### Success Response (200) N/A (Constructor) #### Response Example N/A (Constructor) ``` -------------------------------- ### VeilImGuiUtil - Tooltip and Style Helpers Source: https://foundrymc.github.io/Veil/foundry/veil/api/client/imgui/VeilImGuiUtil.html Methods for managing tooltips and retrieving ImGui styles and colors based on Minecraft components. ```APIDOC ## VeilImGuiUtil - Tooltip and Style Helpers ### Description Provides utility methods for setting and displaying tooltips, as well as retrieving ImGui fonts and colors associated with Minecraft styles and mod IDs. ### Methods #### `tooltip(String text)` Displays a (?) icon with a hover tooltip containing the provided text. - **Parameters**: - `text` (String) - Required - The tooltip text to display. #### `setTooltip(net.minecraft.network.chat.FormattedText text)` Sets the tooltip to the specified formatted text component. - **Parameters**: - `text` (FormattedText) - Required - The text to render as a tooltip. #### `colorOf(String modid)` Obtains a color based on the hash of the provided mod ID. - **Parameters**: - `modid` (String) - Required - The mod ID to get the color for. - **Returns**: - `int` - The color (ARGB) derived from the mod ID. #### `getStyleFont(net.minecraft.network.chat.Style style)` Retrieves the ImGui font to be used for a given Minecraft text style. - **Parameters**: - `style` (Style) - Required - The Minecraft text style. - **Returns**: - `imgui.ImFont` - The corresponding ImGui font. #### `getColor(int color)` Retrieves the ARGB color value for a specified ImGui style color index. - **Parameters**: - `color` (int) - Required - The ImGui style color index. - **Returns**: - `int` - The ARGB color value. ``` -------------------------------- ### Get Shader Folder Source: https://foundrymc.github.io/Veil/foundry/veil/api/client/render/shader/ShaderSourceSet.html Retrieves the directory path where shader definitions are loaded from. ```java public String getFolder() ``` -------------------------------- ### Get Debug Label Source: https://foundrymc.github.io/Veil/foundry/veil/api/client/render/framebuffer/AdvancedFbo.html Retrieves the debug label of this framebuffer, useful for graphics debugger identification. ```APIDOC ## GET /advancedfbo/debug/label ### Description Retrieves the debug label of this framebuffer in a graphics debugger. ### Method GET ### Endpoint /advancedfbo/debug/label ### Response #### Success Response (200) - **debugLabel** (string | null) - The debug label of the framebuffer, or null if not set. #### Response Example ```json { "debugLabel": "MyFramebufferLabel" } ``` ``` -------------------------------- ### VoxelShadowGrid Initialization and Cleanup Source: https://foundrymc.github.io/Veil/foundry/veil/impl/client/render/light/VoxelShadowGrid.html Methods for initializing and closing the voxel shadow grid system. ```APIDOC ## POST /veil/shadowgrid/setup ### Description Initializes the voxel shadow grid system. ### Method POST ### Endpoint /veil/shadowgrid/setup ### Parameters None ### Request Example (No request body) ### Response #### Success Response (200) - **status** (string) - Indicates the operation was successful. #### Response Example ```json { "status": "initialized" } ``` ## DELETE /veil/shadowgrid/close ### Description Closes and cleans up the voxel shadow grid system. ### Method DELETE ### Endpoint /veil/shadowgrid/close ### Parameters None ### Request Example (No request body) ### Response #### Success Response (200) - **status** (string) - Indicates the operation was successful. #### Response Example ```json { "status": "closed" } ``` ``` -------------------------------- ### Get Framebuffer Attachment Count (Java) Source: https://foundrymc.github.io/Veil/foundry/veil/api/client/render/framebuffer/AdvancedFbo.html Retrieves the number of color attachments present in the framebuffer. ```Java @Contract(pure=true) int getColorAttachments() Returns: The number of color attachments in this framebuffer ``` -------------------------------- ### GuiInfo Methods Source: https://foundrymc.github.io/Veil/foundry/veil/api/client/render/GuiInfo.html Documentation for instance methods of the GuiInfo class, including updating, unbinding, and retrieving GUI rendering information. ```APIDOC ## GuiInfo Methods ### Description Provides methods for managing the GUI rendering context. ### Method: update #### Description Updates the camera matrices to match the current render system projection. #### Method `void update()` #### Endpoint N/A ### Method: unbind #### Description Unbinds this shader block. #### Method `void unbind()` #### Endpoint N/A ### Method: getGuiScale #### Description Returns the current GUI scale. #### Method `float getGuiScale()` #### Returns The far clipping plane of the frustum ### Method: isGuiRendering #### Description Checks if the GUI is currently being drawn. #### Method `boolean isGuiRendering()` #### Returns Whether the GUI is currently being drawn ### Method: createLayout #### Description Creates a layout for the Veil shader buffer. #### Method `static VeilShaderBufferLayout createLayout()` #### Endpoint N/A ### Request Example ```java // For update() guiInfo.update(); // For unbind() guiInfo.unbind(); // For getGuiScale() float scale = guiInfo.getGuiScale(); // For isGuiRendering() boolean rendering = guiInfo.isGuiRendering(); // For createLayout() VeilShaderBufferLayout layout = GuiInfo.createLayout(); ``` ### Response #### Success Response (200) N/A (Methods) #### Response Example N/A ``` -------------------------------- ### Enum Utility Methods Source: https://foundrymc.github.io/Veil/foundry/veil/api/client/necromancer/animation/keyframe/Interpolation.html Provides methods to get all enum constants or a specific one by name. ```APIDOC ## Enum Utility Methods ### Description Standard enum methods for retrieving constants. ### Methods #### `values()` ##### Description Returns an array containing all the enum constants in the order they are declared. ##### Method `static Interpolation[]` ##### Response Example ```json { "example": "[\"LINEAR\", \"NEAREST_NEIGHBOR\"]" } ``` #### `valueOf(String name)` ##### Description Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant. ##### Method `static Interpolation` ##### Parameters - **name** (String) - The name of the enum constant to return. ##### Throws - `IllegalArgumentException` - If this enum class has no constant with the specified name. - `NullPointerException` - If the argument is null. ##### Response Example ```json { "example": "LINEAR" } ``` ``` -------------------------------- ### VeilImGuiImplGlfw.VeilData Constructor Source: https://foundrymc.github.io/Veil/foundry/veil/impl/client/imgui/VeilImGuiImplGlfw.VeilData.html Initializes a new instance of the VeilImGuiImplGlfw.VeilData class. ```APIDOC ## VeilImGuiImplGlfw.VeilData() ### Description Initializes a new instance of the `VeilData` class. ### Method `protected` ### Endpoint N/A ### Parameters None ### Request Example ```json {} ``` ### Response #### Success Response (200) N/A #### Response Example ```json {} ``` ``` -------------------------------- ### EmitterSettings Record Documentation Source: https://foundrymc.github.io/Veil/foundry/veil/api/quasar/data/EmitterSettings.html This section provides detailed documentation for the EmitterSettings record, including its fields, constructor, and methods. ```APIDOC ## EmitterSettings Record ### Description A record class representing settings for an emitter, including shape settings, particle settings, and a force spawn flag. ### Fields - **CODEC** (com.mojang.serialization.Codec) - A codec for serializing and deserializing EmitterSettings. ### Constructor - **EmitterSettings**(List> emitterShapeSettingsHolders, net.minecraft.core.Holder particleSettingsHolder, boolean forceSpawn) - Creates an instance of the EmitterSettings record class. - Parameters: - `emitterShapeSettingsHolders` (List>) - The list of emitter shape settings holders. - `particleSettingsHolder` (net.minecraft.core.Holder) - The particle settings holder. - `forceSpawn` (boolean) - A flag to force spawning. ### Methods - **emitterShapeSettings**() : List - Returns a list of EmitterShapeSettings. - **particleSettings**() : ParticleSettings - Returns the ParticleSettings. - **toString**() : String - Returns a string representation of this record class. - **hashCode**() : int - Returns a hash code value for this object. - **equals**(Object o) : boolean - Indicates whether some other object is equal to this one. - **emitterShapeSettingsHolders**() : List> - Returns the value of the `emitterShapeSettingsHolders` record component. - **particleSettingsHolder**() : net.minecraft.core.Holder - Returns the value of the `particleSettingsHolder` record component. - **forceSpawn**() : boolean - Returns the value of the `forceSpawn` record component. ### Inherited Methods from java.lang.Object - clone, finalize, getClass, notify, notifyAll, wait, wait, wait ``` -------------------------------- ### Get Outline Property Source: https://foundrymc.github.io/Veil/foundry/veil/mixin/rendertype/client/CompositeStateMixin.html Retrieves the outline property state. This is used to manage outline rendering characteristics. ```java public net.minecraft.client.renderer.RenderType.OutlineProperty outlineProperty() Specified by: outlineProperty in interface VeilRenderTypeAccessor Returns: The outline property state ``` -------------------------------- ### WrapperShaderBlockImpl Methods Source: https://foundrymc.github.io/Veil/foundry/veil/impl/client/render/shader/block/WrapperShaderBlockImpl.html Provides documentation for the methods available in the WrapperShaderBlockImpl class. ```APIDOC ## WrapperShaderBlockImpl Methods ### Description This section details the methods available in the WrapperShaderBlockImpl class, including those inherited and overridden. ### Methods #### bind ##### Description Binds this block to the specified index. ##### Method `public void bind(int index)` ##### Parameters - **index** (int) - Required - The index to bind this block to. ##### Request Example ```json { "index": 0 } ``` ##### Response - **Success Response (200)**: None (void method) #### unbind ##### Description Unbinds this block from the specified index. ##### Method `public void unbind(int index)` ##### Parameters - **index** (int) - Required - The index to unbind this block from. ##### Request Example ```json { "index": 0 } ``` ##### Response - **Success Response (200)**: None (void method) #### set ##### Description Sets the value of this block. Sets the value regardless if it has changed or not. ##### Method `public void set(@Nullable Object value)` ##### Parameters - **value** (Object) - Optional - The new value. ##### Request Example ```json { "value": "some value" } ``` ##### Response - **Success Response (200)**: None (void method) #### getValue ##### Description Retrieves the value stored in this block. ##### Method `@Nullable public @Nullable Object getValue()` ##### Parameters None ##### Response - **Success Response (200)** - **value** (Object) - The value stored in this block. ##### Response Example ```json { "value": "some value" } ``` #### getSize ##### Description Retrieves the size of this block in bytes. ##### Method `public int getSize()` ##### Parameters None ##### Response - **Success Response (200)** - **size** (int) - The size of this block in bytes. ##### Response Example ```json { "size": 16 } ``` #### setSize ##### Description Resizes this shader block to match the new size. ##### Method `public void setSize(int newSize)` ##### Parameters - **newSize** (int) - Required - The size in bytes. ##### Request Example ```json { "newSize": 32 } ``` ##### Response - **Success Response (200)**: None (void method) #### free ##### Description Frees the resources associated with this shader block. ##### Method `public void free()` ##### Parameters None ##### Response - **Success Response (200)**: None (void method) ``` -------------------------------- ### Get metadata from McMetaResource Source: https://foundrymc.github.io/Veil/foundry/veil/api/resource/type/McMetaResource.html Returns the value of the metadata record component for this McMetaResource. The metadata is of type ResourceMetadata. ```java public net.minecraft.server.packs.resources.ResourceMetadata metadata() ``` -------------------------------- ### Get basePath from McMetaResource Source: https://foundrymc.github.io/Veil/foundry/veil/api/resource/type/McMetaResource.html Returns the value of the basePath record component for this McMetaResource. The basePath is a nullable ResourceLocation. ```java @Nullable public @Nullable net.minecraft.resources.ResourceLocation basePath() ```