Controls
Boolean
For boolean parameters, checkbox field component will be provided.
ts
const { value } = useControls({
awiwi: true,
})awiwi: true
Text
For string parameters, text field component will be provided by default
ts
const { value } = useControls({
message: 'I`m a pretty penguin',
}I`m a pretty penguin
Number
For number parameters, number field component will be provided by default
ts
const { value } = useControls({
stars: 100,
})100 ⭐️
Color
For color parameters, color field component will be provided by default
ts
const { value } = useControls({
color: '#008080',
})#008080
Range
You can specify a range of number by min and max. If you specify both of them, slider control will be created.
ts
const { value } = useControls({
planets: {
value: 8,
min: 1,
max: 9,
step: 1
},
})🪐🪐🪐🪐🪐🪐🪐🪐
Select
You can specify a list of options by options property. If you specify it, select control will be created.
ts
const { value } = useControls({
videogame: {
value: 'crashbandicoot',
options: [{
text: 'Crash Bandicoot',
value: 'crashbandicoot',
}, {
text: 'Metal Gear Solid',
value: 'metal-gear-solid',
}, {
text: 'Legend of Zelda',
value: 'legend-of-zelda',
}],
},
})crashbandicoot
Vector
You can specify a vector by adding a isVector3, isVector2, isEuler properties or by passing an array. If you specify them, vector control will be created.
ts
import { Vector3 } from 'three'
const { value } = useControls({
position: new Vector3(0, 1, 2)
}){
"x": 0,
"y": 1,
"z": 2
}x
y
z
Button
ts
useControls({
acceptBtn: {
label: 'Accept',
type: 'button',
onClick: () => {
console.log('accept')
},
size: 'sm',
},
})Click a button
Variants
ts
useControls({
acceptBtn: {
label: 'Button Secondary',
type: 'button',
variant: 'secondary',
onClick: () => {
console.log('accept')
},
},
})Click a button
Sizes
ts
useControls({
acceptBtn: {
label: 'Button Small',
type: 'button',
size: 'sm',
onClick: () => {
console.log('accept')
},
},
})Click a button