2021-02-02 13:37:58 +01:00
|
|
|
|
{
|
|
|
|
|
|
"$schema": "http://json-schema.org/draft-07/schema",
|
|
|
|
|
|
"$id": "blockception.minecraft.materials",
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"title": "Material",
|
|
|
|
|
|
"description": "TODO",
|
|
|
|
|
|
"additionalProperties": false,
|
|
|
|
|
|
"definitions": {
|
|
|
|
|
|
"DefinesSpecification": {
|
|
|
|
|
|
"type": "array",
|
|
|
|
|
|
"title": "Defines",
|
|
|
|
|
|
"description": "TODO",
|
|
|
|
|
|
"items": {
|
|
|
|
|
|
"type": "string",
|
|
|
|
|
|
"title": "Definition",
|
|
|
|
|
|
"description": "TODO",
|
|
|
|
|
|
"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",
|
|
|
|
|
|
"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": "TODO", "enum": ["Keep", "Replace"] },
|
|
|
|
|
|
"FaceSpecification": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"title": "Face",
|
|
|
|
|
|
"description": "TODO",
|
|
|
|
|
|
"additionalProperties": false,
|
|
|
|
|
|
"properties": {
|
|
|
|
|
|
"stencilDepthFailOp": { "type": "string", "title": "Stencil depth fail operation", "description": "", "$ref": "#/definitions/FailOperation" },
|
|
|
|
|
|
"stencilFailOp": { "type": "string", "title": "Stencil fail operation", "description": "", "$ref": "#/definitions/FailOperation" },
|
|
|
|
|
|
"stencilFunc": { "type": "string", "title": "Stencil function", "description": "", "enum": ["Always", "Equal", "NotEqual"] },
|
|
|
|
|
|
"stencilPass": { "type": "string", "title": "Stencil pass", "description": "", "enum": ["Replace"] },
|
|
|
|
|
|
"stencilPassOp": { "type": "string", "title": "Stencil depth fail operation", "description": "", "$ref": "#/definitions/FailOperation" }
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
"StatesSpecification": {
|
|
|
|
|
|
"type": "array",
|
|
|
|
|
|
"title": "States",
|
|
|
|
|
|
"description": "TODO",
|
|
|
|
|
|
"items": {
|
|
|
|
|
|
"type": "string",
|
|
|
|
|
|
"title": "State",
|
|
|
|
|
|
"description": "TODO",
|
|
|
|
|
|
"enum": [
|
|
|
|
|
|
"Blending",
|
|
|
|
|
|
"DisableAlphaWrite",
|
|
|
|
|
|
"DisableColorWrite",
|
|
|
|
|
|
"DisableCulling",
|
|
|
|
|
|
"DisableDepthTest",
|
|
|
|
|
|
"DisableDepthWrite",
|
|
|
|
|
|
"EnableAlphaToCoverage",
|
|
|
|
|
|
"EnableStencilTest",
|
|
|
|
|
|
"InvertCulling",
|
|
|
|
|
|
"StencilWrite"
|
|
|
|
|
|
]
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
"SamplerStatesSpecification": {
|
|
|
|
|
|
"type": "array",
|
|
|
|
|
|
"title": "Sampler States",
|
|
|
|
|
|
"description": "TODO",
|
|
|
|
|
|
"items": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"title": "Sample state",
|
|
|
|
|
|
"description": "TODO",
|
|
|
|
|
|
"additionalProperties": false,
|
|
|
|
|
|
"properties": {
|
|
|
|
|
|
"samplerIndex": { "type": "integer", "title": "Sample state", "description": "TODO" },
|
|
|
|
|
|
"textureFilter": { "type": "string", "title": "Texture filter", "description": "TODO", "enum": ["Point", "Bilinear", "TexelAA"] },
|
|
|
|
|
|
"textureWrap": { "type": "string", "title": "Texture wrap", "description": "TODO", "enum": ["Repeat", "Clamp"] }
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
"VertexFieldsSpecification": {
|
|
|
|
|
|
"type": "array",
|
|
|
|
|
|
"title": "Vertex fields",
|
|
|
|
|
|
"description": "TODO",
|
|
|
|
|
|
"items": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"title": "Vertex field",
|
|
|
|
|
|
"description": "TODO",
|
|
|
|
|
|
"additionalProperties": false,
|
|
|
|
|
|
"properties": { "field": { "type": "string", "title": "Vertex field", "description": "TODO" } }
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
"VariantSpecification": {
|
|
|
|
|
|
"type": "array",
|
|
|
|
|
|
"title": "Variants",
|
|
|
|
|
|
"description": "TODO",
|
|
|
|
|
|
"items": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"title": "Variant",
|
|
|
|
|
|
"description": "TODO",
|
|
|
|
|
|
"propertyNames": { "enum": ["fading", "fog", "fog.underwater", "lit", "skinning", "skinning_color", "underlava", "underwater"] },
|
|
|
|
|
|
"additionalProperties": { "title": "Variant Item", "description": "TODO", "$ref": "#/definitions/VariantsItemSpecificaiton" }
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
"VariantsItemSpecificaiton": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"title": "Variant Item",
|
|
|
|
|
|
"description": "TODO",
|
|
|
|
|
|
"additionalProperties": false,
|
|
|
|
|
|
"properties": {
|
|
|
|
|
|
"+defines": { "title": "Defines", "description": "TODO, Add definitions???", "$ref": "#/definitions/DefinesSpecification" },
|
|
|
|
|
|
"vertexFields": { "title": "Vertex fields", "description": "TODO", "$ref": "#/definitions/VertexFieldsSpecification" },
|
|
|
|
|
|
"states": { "title": "States", "description": "TODO, start states???", "$ref": "#/definitions/StatesSpecification" },
|
|
|
|
|
|
"+states": { "title": "States", "description": "TODO, Add additional states???", "$ref": "#/definitions/StatesSpecification" },
|
|
|
|
|
|
"-states": { "title": "States", "description": "TODO, remove additional states???", "$ref": "#/definitions/StatesSpecification" }
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
"properties": {
|
|
|
|
|
|
"materials": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"title": "Materials",
|
|
|
|
|
|
"description": "TODO",
|
|
|
|
|
|
"required": ["version"],
|
|
|
|
|
|
"properties": { "version": { "type": "string", "const": "1.0.0", "title": "Version", "description": "TODO" } },
|
|
|
|
|
|
"additionalProperties": {
|
|
|
|
|
|
"title": "Material definitions",
|
|
|
|
|
|
"description": "TODO",
|
|
|
|
|
|
"additionalProperties": false,
|
|
|
|
|
|
"properties": {
|
|
|
|
|
|
"alphaDst": { "type": "string", "title": "Alpha distance", "description": "TODO", "enum": ["DestColor", "OneMinusSrcAlpha"] },
|
|
|
|
|
|
"backFace": { "title": "Back face", "description": "TODO", "$ref": "#/definitions/FaceSpecification" },
|
|
|
|
|
|
"blendDst": {
|
|
|
|
|
|
"type": "string",
|
|
|
|
|
|
"title": "Blend Distance",
|
|
|
|
|
|
"description": "TODO",
|
|
|
|
|
|
"enum": ["SourceAlpha", "OneMinusSrcAlpha", "OneMinusSrcColor", "SourceColor", "Zero", "One"]
|
|
|
|
|
|
},
|
|
|
|
|
|
"blendSrc": {
|
|
|
|
|
|
"type": "string",
|
|
|
|
|
|
"title": "Blend source",
|
|
|
|
|
|
"description": "TODO",
|
|
|
|
|
|
"enum": ["DestColor", "One", "OneMinusDestColor", "SourceAlpha", "SourceColor"]
|
|
|
|
|
|
},
|
|
|
|
|
|
"defines": { "title": "Defines", "description": "TODO, sets or starts definitions???", "$ref": "#/definitions/DefinesSpecification" },
|
|
|
|
|
|
"+defines": { "title": "Defines", "description": "TODO, Add definitions???", "$ref": "#/definitions/DefinesSpecification" },
|
|
|
|
|
|
"-defines": { "title": "Defines", "description": "TODO, removes definitions???", "$ref": "#/definitions/DefinesSpecification" },
|
|
|
|
|
|
"depthBias": { "type": "number", "title": "Depth bias", "description": "TODO" },
|
|
|
|
|
|
"depthBiasOGL": { "type": "number", "title": "Depth bias OGL", "description": "TODO" },
|
|
|
|
|
|
"depthFunc": { "type": "string", "title": "Depth function", "description": "TODO", "enum": ["LessEqual", "Always", "Equal"] },
|
|
|
|
|
|
"fragmentShader": { "type": "string", "title": "Fragment shader", "description": "TODO", "pattern": "^shaders/.*\\.fragment$" },
|
|
|
|
|
|
"frontFace": { "title": "Front face", "description": "TODO", "$ref": "#/definitions/FaceSpecification" },
|
|
|
|
|
|
"isAnimatedTexture": {
|
|
|
|
|
|
"type": "integer",
|
|
|
|
|
|
"title": "Is animated texture",
|
|
|
|
|
|
"description": "TODO, think its a boolean value as a number, so 1 and 0????"
|
|
|
|
|
|
},
|
|
|
|
|
|
"msaaSupport": { "type": "string", "title": "MSAA support", "description": "TODO", "enum": ["Both", "MSAA"] },
|
|
|
|
|
|
"primitiveMode": { "type": "string", "title": "Primitive mode", "description": "TODO", "enum": ["Line"] },
|
|
|
|
|
|
"samplerStates": {
|
|
|
|
|
|
"title": "Sampler States",
|
|
|
|
|
|
"description": "TODO, set or start samplerStates???",
|
|
|
|
|
|
"$ref": "#/definitions/SamplerStatesSpecification"
|
|
|
|
|
|
},
|
|
|
|
|
|
"+samplerStates": {
|
|
|
|
|
|
"title": "Sampler States",
|
|
|
|
|
|
"description": "TODO, Add samplerStates???",
|
|
|
|
|
|
"$ref": "#/definitions/SamplerStatesSpecification"
|
|
|
|
|
|
},
|
|
|
|
|
|
"slopeScaledDepthBias": { "type": "number", "title": "Slope scaled depth bias", "description": "TODO" },
|
|
|
|
|
|
"slopeScaledDepthBiasOGL": { "type": "number", "title": "Slope scaled depth bias OGL", "description": "TODO" },
|
|
|
|
|
|
"states": { "title": "States", "description": "TODO, start states???", "$ref": "#/definitions/StatesSpecification" },
|
|
|
|
|
|
"+states": { "title": "States", "description": "TODO, Add additional states???", "$ref": "#/definitions/StatesSpecification" },
|
|
|
|
|
|
"-states": { "title": "States", "description": "TODO, remove additional states???", "$ref": "#/definitions/StatesSpecification" },
|
|
|
|
|
|
"stencilRef": { "type": "integer", "title": "Stencil Ref", "description": "TODO" },
|
|
|
|
|
|
"stencilRefOverride": { "type": "integer", "title": "Stencil ref override", "description": "TODO" },
|
|
|
|
|
|
"stencilReadMask": { "type": "integer", "title": "Stencil read mask", "description": "TODO" },
|
|
|
|
|
|
"stencilWriteMask": { "type": "integer", "title": "Stencil write mask", "description": "TODO" },
|
|
|
|
|
|
"variants": { "title": "Variants", "description": "TODO, sets the variants?", "$ref": "#/definitions/VariantSpecification" },
|
|
|
|
|
|
"+variants": { "title": "Variants", "description": "TODO, adds variants?", "$ref": "#/definitions/VariantSpecification" },
|
|
|
|
|
|
"vertexFields": { "title": "Vertex fields", "description": "TODO", "$ref": "#/definitions/VertexFieldsSpecification" },
|
|
|
|
|
|
"vertexShader": { "type": "string", "title": "Vertex shader", "description": "TODO", "pattern": "^shaders/.*\\.vertex$" },
|
|
|
|
|
|
"vrGeometryShader": { "type": "string", "title": "VR geometry shader", "description": "TODO", "pattern": "^shaders/.*\\.geometry$" }
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|