Eventually the cursor reaches the end of the screen and I can not get continuously increasing values (which could be used to move a camera infinitely)
Is there a way to get what web browsers call “cursor lock”?
Eventually the cursor reaches the end of the screen and I can not get continuously increasing values (which could be used to move a camera infinitely)
Is there a way to get what web browsers call “cursor lock”?
you could set a chop execute on a value change of the Mouse Chop tx and ty channels, which starts moving your camera once the mouse reaches the edge.
def valueChange(channel, sampleIndex, val, prev):
if channel.name == 'tx' and val < 10:
#start moving camera left
print('left')
if channel.name == 'tx' and val > 1910:
#start moving camera right
print('right')
if channel.name == 'ty' and val < 10:
#start moving camera to bottom
print('bottom')
if channel.name == 'ty' and val > 1070:
#start moving camera to top
print('top')
return
This for a 1920x1080 resolution, you can also use normalized 0-1 values if you prefer
Thanks for the help however I do not think this will work: If the cursor goes off the page right (i.e. more than 1920) it just stops in touch.
Do you want to restrict this to a particular panel or should it be mouse centric?
You could use the mouse CHOP, and a set of speeds - when the left button is clicked and the change in x is positive, the speed increments up, vice versa when the change in x is negative.
I like this method, however, lets say I have created a FPS environment. When I slide my mouse to the right, then lift it up, move in back to the starting position and slide it to the right, eventually I will hit the edge of my monitor (the maximum monitor resolution) and I will no be able to pick up the mouse , move it over and slide it to the right again (as the monitor is already stuck to the right of the screen)
I am looking for something like this [url]Pointer lock and first person shooter controls
Ah ok, so you want a FPS camera.
Keith made one:
derivative.ca/forum/viewtopi … 28&p=22277