122 lines
2.8 KiB
JSON
122 lines
2.8 KiB
JSON
{
|
|
"id": "video-plane-3d",
|
|
"name": "Video Plane 3D",
|
|
"description": "Places the video on a perspective 2D plane in 3D space with camera FOV, XYZ position, and pan/tilt/roll controls.",
|
|
"category": "Projection",
|
|
"entryPoint": "shadeVideo",
|
|
"parameters": [
|
|
{
|
|
"id": "fovDegrees",
|
|
"label": "FOV",
|
|
"type": "float",
|
|
"default": 45,
|
|
"min": 5,
|
|
"max": 150,
|
|
"step": 0.1,
|
|
"description": "Virtual camera vertical field of view in degrees."
|
|
},
|
|
{
|
|
"id": "positionX",
|
|
"label": "X",
|
|
"type": "float",
|
|
"default": 0,
|
|
"min": -4,
|
|
"max": 4,
|
|
"step": 0.01,
|
|
"description": "Horizontal plane position in world units."
|
|
},
|
|
{
|
|
"id": "positionY",
|
|
"label": "Y",
|
|
"type": "float",
|
|
"default": 0,
|
|
"min": -4,
|
|
"max": 4,
|
|
"step": 0.01,
|
|
"description": "Vertical plane position in world units."
|
|
},
|
|
{
|
|
"id": "positionZ",
|
|
"label": "Z",
|
|
"type": "float",
|
|
"default": 2.2,
|
|
"min": 0.1,
|
|
"max": 10,
|
|
"step": 0.01,
|
|
"description": "Depth of the plane in front of the virtual camera."
|
|
},
|
|
{
|
|
"id": "panDegrees",
|
|
"label": "Pan",
|
|
"type": "float",
|
|
"default": 0,
|
|
"min": -180,
|
|
"max": 180,
|
|
"step": 0.1,
|
|
"description": "Rotates the plane left/right around its vertical axis."
|
|
},
|
|
{
|
|
"id": "tiltDegrees",
|
|
"label": "Tilt",
|
|
"type": "float",
|
|
"default": 0,
|
|
"min": -120,
|
|
"max": 120,
|
|
"step": 0.1,
|
|
"description": "Rotates the plane up/down around its horizontal axis."
|
|
},
|
|
{
|
|
"id": "rollDegrees",
|
|
"label": "Roll",
|
|
"type": "float",
|
|
"default": 0,
|
|
"min": -180,
|
|
"max": 180,
|
|
"step": 0.1,
|
|
"description": "Rotates the plane around its face normal."
|
|
},
|
|
{
|
|
"id": "planeScale",
|
|
"label": "Plane Scale",
|
|
"type": "float",
|
|
"default": 1.4,
|
|
"min": 0.05,
|
|
"max": 6,
|
|
"step": 0.01,
|
|
"description": "Height of the video plane in world units; width follows the source aspect ratio."
|
|
},
|
|
{
|
|
"id": "edgeFeather",
|
|
"label": "Edge Feather",
|
|
"type": "float",
|
|
"default": 1.5,
|
|
"min": 0,
|
|
"max": 24,
|
|
"step": 0.1,
|
|
"description": "Softens the plane edge in source pixels."
|
|
},
|
|
{
|
|
"id": "backgroundMix",
|
|
"label": "Background Mix",
|
|
"type": "float",
|
|
"default": 0,
|
|
"min": 0,
|
|
"max": 1,
|
|
"step": 0.01,
|
|
"description": "Mixes the original video behind the projected plane."
|
|
},
|
|
{
|
|
"id": "outsideColor",
|
|
"label": "Outside Color",
|
|
"type": "color",
|
|
"default": [
|
|
0,
|
|
0,
|
|
0,
|
|
1
|
|
],
|
|
"description": "Color used where the camera ray misses the plane."
|
|
}
|
|
]
|
|
}
|