Real mice in virtual 3D: a research project

Blitz3D Forums/Blitz3D Programming/Real mice in virtual 3D: a research project

York(Posted 2005) [#1]
We are a group of biologists at the University of Munich. We investigate the ability of animals to orient in spatial landscapes. We use a virtual reality environment were a real mouse is surrounded by a 360 degree circle of 6 monitors displaying a virtual landscape. We use Blitz Basic 3D for virtual reality programming. We are looking for Blitz Basic 3D developers who are available to help us with our programming.


Cousin Gilgamesh(Posted 2005) [#2]
This sounds interesting... but I'm not sure I understand. Do mice really feel like they are in spatial landscapes when they are encircled by monitors?


RiverRatt(Posted 2005) [#3]
Cousin Gilgamesh: I'll bet you thats what they want to find out.

York: Count me in. I always wanted to be a lab rat! Lol.
Seriously though, what kind of programing are you trying to make? I assume you don't just want a panoramic view of the landscape, but for it to have life. Do you want to watch the mouses reaction to predators?
"We investigate the ability of animals to orient in spatial landscapes."
What do you mean by this? What kind of spatial landscapes?


LAB[au](Posted 2005) [#4]
To form a complete 6 faces cube you'll need square monitors (?), to compute the different views it will be easier with openGL, the viewport and frustum controls available in directX are quite limited (if you compare to what you have in openGL), and thus blitzbasic needs a lot of work arounds to make an mini-Cave(tm). If you need some advice I'll be happy to help you, I did allready similar systems but not with blitzbasic.


Ezbe(Posted 2005) [#5]
I don't think you can use multiple monitors with Blitz3d, so I think you'd need 6 computers, each running an application, and a 'master'-application which tells each where to move over a LAN. Over LAN, the ping's are quite nonexistent, so it should be quite simple to make.


Jeroen(Posted 2005) [#6]
wow. great research project.


Braincell(Posted 2005) [#7]
Animals react to 3d space a bit differently. When you look at a 3d space on the screen you are able to imagine it as 3d. Animals see it more like a 2d picture because they rely on depth of field optics in their brains to feel space. If the mouse moves around you would have to get its exact position in relation to the screens and then try render an appropriate scene. People dont really realise how much of their imagination they are using when playing a FPS. Also, you mean to use screens to form a cube? Then you will have to use a cubic area of the screen to draw which might be easier in therms of directx and stuff Lab mentioned. If you mean to make a circle around the mouse with monitors, he will see the screens as windows and will not feel like it is 'there'.

This is an extremely difficult undertaking.


Bot Builder(Posted 2005) [#8]
Sounds cool. I wonder if mice use both their eyes for distances.. I dont remember if the fields of vision for the 2 eyes overlap or not though. If so you might encounter some trouble with them not believing the enviornment because of it. If it works out be sure to send us a video or something :)


smilertoo(Posted 2005) [#9]
Can mice see tv screens?
I was under the impression most animals just saw flickering boxes.


markcw(Posted 2005) [#10]
sounds like the only way is to network
the 6 screens to syncronize the movement.

probably a lan would be best.

correct me if i'm wrong, but if this is
part of a university project, shouldn't
you be doing the programming yourselves?


JoshK(Posted 2005) [#11]
This is Josh, author of Cartography Shop, a.k.a. 'halo':
http://cartographyshop.thegamecreators.com/

I happen to be doing some neuroscience research at the UC Davis Neurosurgery Research Dept. I am investigating a novel task to assess motor behavior deficits in rats following traumatic brain injury. See the National Neurotrauma Society's page:
http://www.neurotrauma.org/presenters.htm
Klint, Josh
P164. COMPARISON OF NOVEL AND TRADITIONAL TASKS TO ASSESS MOTOR-BEHAVIORAL FUNCTION FOLLOWING LATERAL FLUID PERCUSSION BRAIN INJURY IN THE RAT.
Josh M. Klint, Univ. of California, Davis.


I am generally regarded as the best Blitz3D programmer there is, and have a background in neuroscience research. I am very comfortable with OpenGL programming as well. My degree is in neurology, physiology, and behavior. I would be interested in learning more about your project, and possibly participating.

I look forward to your response.


DH(Posted 2005) [#12]
It is amazing on how little he said (York) got such a huge response (including Halo).


Erroneouss(Posted 2005) [#13]
>> "I am generally regarded as the best Blitz3D programmer there is"

Ermmm... More like "biggest Big-Headed Blitz 3D Programmer there is..." Just kidding, you are pretty awesome... :P

But anyway... I can't wait to see how this works out! It sounds cool......


Snarkbait(Posted 2005) [#14]
I am generally regarded as the most modest and humble Blitz programmer there is. ;)


York(Posted 2005) [#15]
here some more information about the system:

- 6 separate computers for the virtual 3D, each with a TFT 17" monitor; each shows the landscape from the same camera position but each views a different angle of it; this is all wired-up and ready to go
- concerning the real mouse: the mouse sits on the top of a 60 cm sphere; this sphere rests on servomotors;
- above the mouse is a video camera that detects the mouse's position in 2D;
- when the mouse moves off centre, the servo motors counterrotate the sphere so as to maintain the mouse at the apex of the shpere
- thus, the mouse sits on a spherical 2D-treadmill
- the computer #7 controlling the motors and cameras and feeders constantly computes the 2D position of the animal in real landscape from the video camera information and from displacement sensors that record the movement of the surface of the sphere; this computer #7 sends the current 2D coordinate to the 6 BlitzBasic 3D computers via LAN 50 times a second
- obstacles in the landscape: the mouse is surrounded by a clear perspex cylinder; when it approaches to an obstacle in its 3D-virtual reality, the compensation of the sphere is suspended so that the mouse will now walk to the perspex surrounding, gets into wall contact and thus physically experiences the obstacle in its landscape
- why should the mouse run around in its virtual landscape? surrounding the mouse (integrated into the surrounding perspex cylinder) are 6 electronically controlled feeders. From there the mouse can obtain water and food. Feeding stations, however, are inactive as long as the mouse has not reached the position in the 3D landscape where a particular feeder "is situated".
- Thus, within the virtual 3D-landscape a large number of feeders and water wells are distributed and the mouse has the task "to exploit" this environment

Our research interest is in questions of spatial cognition.
Our landscape consists of high contrast stripe patterns from which a mouse can easily obtain visual flow information.

I am posting this topic because despite some superficial familiarity with blitz basic our expertise as biologists is in a different field and we have some funds to spend on being helped with the programming.

York


Naughty Alien(Posted 2005) [#16]
..I already did some projects where i have to connect some external hardware with virtual 3D world..if you need help, count me in..


York(Posted 2005) [#17]
The hardware setup is all completed; our first prototype(without the BB 3D monitors but with on/off light boxes instead) has been up and running for a year now. For those interested in hardware: we use a distributed computing approach where local functions are controlled by Atmel AVR microcontrollers which communicate in a two layer I2C and CAN network with the master PC via USB. The program on the master computer is in Delphi.


WendellM(Posted 2005) [#18]
That sounds like an interesting experiment. I'll be interested in seeing in the results (if they're made more widely available than in a limited-distribution journal).

On a somewhat related note, there's an article just published yesterday about a fellow in California who's doing something a bit similar with cockroaches: http://www.wired.com/news/technology/0,1282,68015,00.html (though they move around on a motorized vehicle in the real world).


Bot Builder(Posted 2005) [#19]
Cool. You said that the mouse is on top of a sphere? Thats a pretty novel approach to an infinite treadmill - It'd prbably work pretty good for humans too. I presume its resting on a base or something with the servos delivering power through wheels. Although, what if it hops off?

It might be possible to simulate a slope if you let the mouse off the apex a little, to make it harder. depends on teh surface though as this might make it slip off.

Halo is the obvious choice, dunno if he's the best b3d programmer (there really is no such thing), but certainly up there.