{ "$schema": "http://json-schema.org/draft-07/schema", "$id": "blockception.minecraft.materials", "type": "object", "title": "Material", "description": "A collection of material specifications for the render engine of minecraft.", "$comment": "UNDOCUMENTED", "additionalProperties": false, "required": ["materials"], "definitions": { "DefinesSpecification": { "type": "array", "title": "Defines", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "items": { "type": "string", "title": "Definition", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "enum": [ "ALLOW_FADE", "ALPHA_TEST", "ALWAYS_LIT", "ARRAY_TEXTURE_0", "AS_ENTITY_RENDERER", "ATLAS_TEXTURE", "BLEND", "BLUR_STEPS 1", "BLUR_STEPS 10", "BLUR_STEPS 11", "BLUR_STEPS 12", "BLUR_STEPS 2", "BLUR_STEPS 3", "BLUR_STEPS 4", "BLUR_STEPS 5", "BLUR_STEPS 6", "BLUR_STEPS 7", "BLUR_STEPS 8", "BLUR_STEPS 9", "Blending", "COLOR_BASED", "COLOR_FROMTEX", "COLOR_MULTIPLIER", "COLOR_SECOND_TEXTURE", "COMFORT_MODE", "DISABLE_TINTING", "DisableCulling", "EFFECTS_OFFSET", "ENABLE_CURRENT_ALPHA_MULTIPLY", "ENABLE_FOG", "ENABLE_LIGHT", "ENABLE_VERTEX_TINT_MASK", "END_PORTAL", "FANCY", "FLIP_OCCLUSION", "FOG", "FORCE_DEPTH_ZERO", "GLINT", "GRADIENT_2PT", "GRADIENT_3PTSYMM", "GRADIENT_FROMTEX", "GRADIENT_LINEAR", "GRADIENT_RADIAL", "HAS_MASK", "IGNORE_CURRENTCOLOR", "INVENTORY", "ITEM_IN_HAND", "LINE_STRIP", "LOW_PRECISION", "MASKED_MULTITEXTURE", "MSDF", "MULTIPLICATIVE_TINT", "MULTIPLICATIVE_TINT_COLOR", "MULTI_COLOR_TINT", "NO_OCCLUSION", "NO_TEXTURE", "NO_VARIETY", "SEASONS", "SEASONS_FAR", "SMOOTH", "SNOW", "STEREO_LEFT_EYE_ONLY", "TEXEL_AA", "TINTED", "TINTED_ALPHA_TEST", "UI_ENTITY", "USE_COLOR_BLEND", "USE_COLOR_MASK", "USE_EMISSIVE", "USE_LIGHTING", "USE_MASK", "USE_MULTITEXTURE", "USE_ONLY_EMISSIVE", "USE_OVERLAY", "USE_SKINNING", "USE_STEREO_TEXTURE_ARRAY", "USE_UV_ANIM", "WINDOWSMR_MAGICALPHA" ] } }, "FailOperation": { "type": "string", "title": "Fail Operation", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "enum": ["Keep", "Replace"] }, "FaceSpecification": { "type": "object", "title": "Face", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "additionalProperties": false, "properties": { "stencilDepthFailOp": { "type": "string", "title": "Stencil Depth Fail Operation", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "$ref": "#/definitions/FailOperation" }, "stencilFailOp": { "type": "string", "title": "Stencil Fail Operation", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "$ref": "#/definitions/FailOperation" }, "stencilFunc": { "type": "string", "title": "Stencil Function", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "enum": ["Always", "Equal", "NotEqual"] }, "stencilPass": { "type": "string", "title": "Stencil Pass", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "enum": ["Replace"] }, "stencilPassOp": { "type": "string", "title": "Stencil Depth Fail Operation", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "$ref": "#/definitions/FailOperation" } } }, "StatesSpecification": { "type": "array", "title": "States", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "items": { "type": "string", "title": "State", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "enum": [ "Blending", "DisableAlphaWrite", "DisableColorWrite", "DisableCulling", "DisableDepthTest", "DisableDepthWrite", "EnableAlphaToCoverage", "EnableStencilTest", "InvertCulling", "StencilWrite" ] } }, "SamplerStatesSpecification": { "type": "array", "title": "Sampler States", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "items": { "type": "object", "title": "Sample State", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "additionalProperties": false, "properties": { "samplerIndex": { "type": "integer", "title": "Sample State", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED" }, "textureFilter": { "type": "string", "title": "Texture Filter", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "enum": ["Point", "Bilinear", "TexelAA"] }, "textureWrap": { "type": "string", "title": "Texture Wrap", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "enum": ["Repeat", "Clamp"] } } } }, "VertexFieldsSpecification": { "type": "array", "title": "Vertex Fields", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "items": { "type": "object", "title": "Vertex Field", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "additionalProperties": false, "properties": { "field": { "type": "string", "title": "Vertex Field", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED" } } } }, "VariantSpecification": { "type": "array", "title": "Variants", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "items": { "type": "object", "title": "Variant", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "propertyNames": { "enum": ["fading", "fog", "fog.underwater", "lit", "skinning", "skinning_color", "underlava", "underwater"] }, "additionalProperties": { "title": "Variant Item", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "$ref": "#/definitions/VariantsItemSpecificaiton" } } }, "VariantsItemSpecificaiton": { "type": "object", "title": "Variant Item", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "additionalProperties": false, "properties": { "+defines": { "title": "Defines", "description": "UNDOCUMENTED, Add definitions???.", "$ref": "#/definitions/DefinesSpecification" }, "vertexFields": { "title": "Vertex Fields", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "$ref": "#/definitions/VertexFieldsSpecification" }, "states": { "title": "States", "description": "UNDOCUMENTED, start states???.", "$ref": "#/definitions/StatesSpecification" }, "+states": { "title": "States", "description": "UNDOCUMENTED, Add additional states???.", "$ref": "#/definitions/StatesSpecification" }, "-states": { "title": "States", "description": "UNDOCUMENTED, remove additional states???.", "$ref": "#/definitions/StatesSpecification" } } } }, "properties": { "materials": { "type": "object", "title": "Materials", "description": "The collection of materials, each property key is the identification key of the material, and what it implements if : are used.", "$comment": "UNDOCUMENTED", "required": ["version"], "properties": { "version": { "type": "string", "const": "1.0.0", "title": "Version", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED" } }, "additionalProperties": { "title": "Material Definitions", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "additionalProperties": false, "type": "object", "properties": { "alphaDst": { "type": "string", "title": "Alpha Distance", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "enum": ["DestColor", "OneMinusSrcAlpha"] }, "backFace": { "title": "Back Face", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "$ref": "#/definitions/FaceSpecification" }, "blendDst": { "type": "string", "title": "Blend Distance", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "enum": ["SourceAlpha", "OneMinusSrcAlpha", "OneMinusSrcColor", "SourceColor", "Zero", "One"] }, "blendSrc": { "type": "string", "title": "Blend Source", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "enum": ["DestColor", "One", "OneMinusDestColor", "SourceAlpha", "SourceColor"] }, "defines": { "title": "Defines", "description": "UNDOCUMENTED, sets or starts definitions???.", "$ref": "#/definitions/DefinesSpecification" }, "+defines": { "title": "Defines", "description": "UNDOCUMENTED, Add definitions???.", "$ref": "#/definitions/DefinesSpecification" }, "-defines": { "title": "Defines", "description": "UNDOCUMENTED, removes definitions???.", "$ref": "#/definitions/DefinesSpecification" }, "depthBias": { "type": "number", "title": "Depth Bias", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED" }, "depthBiasOGL": { "type": "number", "title": "Depth Bias OGL", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED" }, "depthFunc": { "type": "string", "title": "Depth Function", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "enum": ["LessEqual", "Always", "Equal"] }, "fragmentShader": { "type": "string", "title": "Fragment Shader", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "pattern": "^shaders/.*\\.fragment$" }, "frontFace": { "title": "Front Face", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "$ref": "#/definitions/FaceSpecification" }, "isAnimatedTexture": { "type": "integer", "title": "Is Animated Texture", "description": "UNDOCUMENTED, think its a boolean value as a number, so 1 and 0????." }, "msaaSupport": { "type": "string", "title": "MSAA Support", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "enum": ["Both", "MSAA"] }, "primitiveMode": { "type": "string", "title": "Primitive Mode", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "enum": ["Line"] }, "samplerStates": { "title": "Sampler States", "description": "UNDOCUMENTED, set or start samplerStates???.", "$ref": "#/definitions/SamplerStatesSpecification" }, "+samplerStates": { "title": "Sampler States", "description": "UNDOCUMENTED, Add samplerStates???.", "$ref": "#/definitions/SamplerStatesSpecification" }, "slopeScaledDepthBias": { "type": "number", "title": "Slope Scaled Depth Bias", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED" }, "slopeScaledDepthBiasOGL": { "type": "number", "title": "Slope Scaled Depth Bias OGL", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED" }, "states": { "title": "States", "description": "UNDOCUMENTED, start states???.", "$ref": "#/definitions/StatesSpecification" }, "+states": { "title": "States", "description": "UNDOCUMENTED, Add additional states???.", "$ref": "#/definitions/StatesSpecification" }, "-states": { "title": "States", "description": "UNDOCUMENTED, remove additional states???.", "$ref": "#/definitions/StatesSpecification" }, "stencilRef": { "type": "integer", "title": "Stencil Ref", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED" }, "stencilRefOverride": { "type": "integer", "title": "Stencil Ref Override", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED" }, "stencilReadMask": { "type": "integer", "title": "Stencil Read Mask", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED" }, "stencilWriteMask": { "type": "integer", "title": "Stencil Write Mask", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED" }, "variants": { "title": "Variants", "description": "UNDOCUMENTED, sets the variants?.", "$ref": "#/definitions/VariantSpecification" }, "+variants": { "title": "Variants", "description": "UNDOCUMENTED, adds variants?.", "$ref": "#/definitions/VariantSpecification" }, "vertexFields": { "title": "Vertex Fields", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "$ref": "#/definitions/VertexFieldsSpecification" }, "vertexShader": { "type": "string", "title": "Vertex Shader", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "pattern": "^shaders/.*\\.vertex$" }, "vrGeometryShader": { "type": "string", "title": "VR Geometry Shader", "description": "UNDOCUMENTED.", "$comment": "UNDOCUMENTED", "pattern": "^shaders/.*\\.geometry$" } } } } } }