// ParticleView by Jeff Matson
// Uses WiiMouse 0.1 by WiiScript.co.nr (sbraidley@yahoo.co.uk)
wiimote.Leds=0
Shift=Equals = wiimote.Up
minus = wiimote.Down
Left = wiimote.Left
Right = wiimote.Right
Mouse.LeftButton = Wiimote.minus
Mouse.RightButton = Wiimote.plus
Mouse.LeftButton= Wiimote.A
//D = wiimote.home
E = wiimote.Two
if doubleclicked(wiimote.A) then {
if var.latch!=1 then var.latch=1 else var.latch=0
}
//(var.latch=1) = Mouse.LeftButton
//(var.latch=0) = Release(Mouse.LeftButton)
//if (var.latch=1) then Mouse.LeftButton=1 else Mouse.LeftButton=0
// Key.B = KeepDown(Mouse.LeftButton = )
if (Wiimote.B || Wiimote.A || var.latch==1) { // begin mouse conditional
var.trimx = 6
var.trimy = -31
var.trimz = 6
var.x = Wiimote.RawForceX + var.trimx
var.y = Wiimote.RawForceY + var.trimy
var.z = Wiimote.RawForceZ + var.trimz
var.sense0 = 1000
var.thresh0x = 2
var.thresh0y = 1
var.sense = 300
var.threshx = 10
var.threshy = 5
var.sense2 = 100
var.thresh2x = 15
var.thresh2y = 8
var.sense3 = 50
var.thresh3x = 20
var.thresh3y = 12
if var.x > var.thresh0x then mouse.x = mouse.x – 1/var.sense0
if var.x < -var.thresh0x then mouse.x = mouse.x + 1/var.sense0
if var.z > var.thresh0y then mouse.y = mouse.y – 1/var.sense0
if var.z < -var.thresh0y then mouse.y = mouse.y + 1/var.sense0
if var.x > var.threshx then mouse.x = mouse.x – 1/var.sense
if var.x < -var.threshx then mouse.x = mouse.x + 1/var.sense
if var.z > var.threshy then mouse.y = mouse.y – 1/var.sense
if var.z < -var.threshy then mouse.y = mouse.y + 1/var.sense
if var.x > var.thresh2x then mouse.x = mouse.x – 1/var.sense2
if var.x < -var.thresh2x then mouse.x = mouse.x + 1/var.sense2
//yaxis
if var.z > var.thresh2y then mouse.y = mouse.y – 1/var.sense2
if var.z < -var.thresh2y then mouse.y = mouse.y + 1/var.sense2
if var.x > var.thresh3x then mouse.x = mouse.x – 1/var.sense3
if var.x < -var.thresh3x then mouse.x = mouse.x + 1/var.sense3
if var.z > var.thresh3y then mouse.y = mouse.y – 1/var.sense3
if var.z < -var.thresh3y then mouse.y = mouse.y + 1/var.sense3
}
end if
debug = var.x + ” ” + var.y + ” ” + var.z

| Artist | Track (Remix) | Label | Year |
|---|---|---|---|
| Circunbalation | 5 | Net23 | 2008 |
| Koljah | Antigua | Vidab | 2008 |
| Solomun | No Comment | Dessous | 2008 |
| Hideo Kobayashi and Jerome Sydenham | Gsxr 810 | Apotek | 2008 |
| Martin Eyerer and Oliver Klein | Babylon (Patrick Zigon mix) | Kling Klong | 2008 |
| Corrugated Tunnel | One Night in Barcelona (Chymera remix) | Elevation | 2008 |
| Booka Shade | Charlotte (Dubfire mix) | Get Physical | 2008 |
| Velkro | Dip Stain | Presslab | 2008 |
| John Digweed | Gridlock (Stereo Club mix) | Renaissance | 2007 |
Whorld installation at Fort Point Open Studios, Boston, MA.
midi.DeviceOut = midi.yoke1.DeviceOut
debug=wiimote.gx
wiimote.leds=0
/* — WiiWhorld – Buttons — */
f6 = Wiimote.Down // fill
f7 = Wiimote.Up // outline
backspace = Wiimote.Left // reverse
backslash =Wiimote.Right // convex
f8 = doubleclicked(wiimote.Up) // xray
f5 = doubleclicked(wiimote.Down) // mirror
delete = wiimote.A // clear
esc = wiimote.home + wiimote.A // panic
f3 = Wiimote.One // rotate hue
f2 = doubleclicked(Wiimote.One) // loop hue
f4 = Wiimote.Two // invert color
if (Wiimote.plus) then midi.ByteControl22=midi.ByteControl22+.01 // zoom in
if (Wiimote.minus) then midi.ByteControl22=midi.ByteControl22-.01 // zoom out
if (doubleclicked(wiimote.plus)) then midi.ByteControl22=.8
if (doubleclicked(wiimote.minus)) then midi.ByteControl22=.2
if (doubleclicked(wiimote.home)) then midi.ByteControl25=.2
/* — WiiWhorld – Wiimote — */
var.x = (Wiimote.gx + 1) / 2
var.y = (Wiimote.gy + 1) / 2
var.z = (Wiimote.gz + 1) / 2
if (wiimote.b) then {
midi.ByteControl66 = var.x // global rotate
midi.ByteControl22 = var.z // zoom
} else {
midi.ByteControl5 = var.x // rotate speed
midi.ByteControl13 = var.z // saturation
} end if
/* — WiiWhorld – Nunchuk — */
if (Wiimote.HasNunchuk) {
var.nx = (Wiimote.Nunchuk.gx + 1) / 2
var.ny = (Wiimote.Nunchuk.gy + 1) / 2
var.nz = (Wiimote.Nunchuk.gz + 1) / 2
var.jx = (Wiimote.Nunchuk.JoyX + 1) / 2
var.jy = (Wiimote.Nunchuk.JoyY + 1) / 2
//midi.playback.firstnote = var.jx * 127 // musical joystick
//midi.playback.secondnote = var.jy * 127
if Wiimote.Nunchuk.ZButton {
midi.ByteControl23=.3 // damping
midi.ByteControl24=.8 // trail
midi.ByteControl31 = var.jx // origin x
midi.ByteControl32 = var.jy // origin y
midi.ByteControl9 = var.nx // star factor
midi.ByteControl10 = var.nz // pinwheel
} else if Wiimote.Nunchuk.CButton {
midi.ByteControl72 = var.jx // global even curve
midi.ByteControl73 = var.jy // global odd curve
midi.ByteControl31 = 1-var.nx // origin x
midi.ByteControl32 = 1-var.nz // origin y
} else {
midi.ByteControl70 = var.jx // global star factor
midi.ByteControl71 = var.jy // global pinwheel
midi.ByteControl11 = var.nx
midi.ByteControl21 = var.nz
} end if
} end if
// Speech Commands (requires http://www.ics.forth.gr/uachess/downloads/IE-speech_add-in_v1.zip)
// to activate – hold home button, say “voice” – wait for computer to confirm
if (wiimote.home and said(”voice”)) {
wait 100ms
if var.voice=0 {
say(”voice on”)
var.voice=1
} else {
say(”voice off”)
var.voice=0
}
}
if var.voice==1 {
//right=said(’next’)
backspace=said(’back’)
delete=said(’clear’)
esc=said(’panic’)
spacebar=said(’stop’)
spacebar=said(’go’)
f5=said(’mirror’)
f6=said(’fill’)
f7=said(’outline’)
f8=said(’xray’)
f9=said(’phase’)
f10=said(’new’)
ctrl+f11=said(’vj’)
shift+r=said(’random’)
shift+c=said(’center’)
shift+d=said(’drag’)
ctrl+a=said(’auto’)
backslash=said(’convex’)
alt+f=said(’file’)
ctrl+o=said(’load patch’)
ctrl+shift+o=said(’load playlist’)
ctrl+r=said(’record’)
up=said(’up’)
down=said(’down’)
//left=said(’left’)
//right=said(’right’)
enter=said(’enter’)
} end if
//debug = midi.OutDevName