configureFog
Configure fog effects in 3D scenes by setting color, density, and distance parameters to create atmospheric depth and visual ambiance.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| sceneId | Yes | Scene ID | |
| enabled | No | Whether fog is enabled | |
| color | No | Fog color (hex) | #cccccc |
| density | No | Fog density | |
| near | No | Near distance | |
| far | No | Far distance |
Implementation Reference
- The asynchronous handler function for the 'configureFog' tool. It takes fog configuration parameters and simulates configuring fog in a Spline scene by returning a success message, with error handling.async ({ sceneId, enabled, color, density, near, far }) => { try { // This would normally call the Spline API to configure fog // For now, just return a success message return { content: [ { type: 'text', text: `Fog ${enabled ? 'enabled' : 'disabled'} successfully` } ] }; } catch (error) { return { content: [ { type: 'text', text: `Error configuring fog: ${error.message}` } ], isError: true }; } }
- Zod validation schema for the input parameters of the configureFog tool.{ sceneId: z.string().min(1).describe('Scene ID'), enabled: z.boolean().default(true).describe('Whether fog is enabled'), color: z.string().optional().default('#cccccc').describe('Fog color (hex)'), density: z.number().min(0).max(1).optional().default(0.1).describe('Fog density'), near: z.number().min(0).optional().default(1).describe('Near distance'), far: z.number().min(0).optional().default(100).describe('Far distance'), },
- src/tools/lighting-camera-tools.js:97-130 (registration)The server.tool call that registers the 'configureFog' tool, including its name, schema, and handler function, within the registerLightingCameraTools module.'configureFog', { sceneId: z.string().min(1).describe('Scene ID'), enabled: z.boolean().default(true).describe('Whether fog is enabled'), color: z.string().optional().default('#cccccc').describe('Fog color (hex)'), density: z.number().min(0).max(1).optional().default(0.1).describe('Fog density'), near: z.number().min(0).optional().default(1).describe('Near distance'), far: z.number().min(0).optional().default(100).describe('Far distance'), }, async ({ sceneId, enabled, color, density, near, far }) => { try { // This would normally call the Spline API to configure fog // For now, just return a success message return { content: [ { type: 'text', text: `Fog ${enabled ? 'enabled' : 'disabled'} successfully` } ] }; } catch (error) { return { content: [ { type: 'text', text: `Error configuring fog: ${error.message}` } ], isError: true }; } } );