Plentyoffish dating forums are a place to meet singles and get dating advice or share dating experiences etc. Hopefully you will all have fun meeting singles and try out this online dating thing... Remember that we are the largest free online dating service, so you will never have to pay a dime to meet your soulmate.
     
Show ALL Forums  > Technology/Computers  > Surface computing, the first step to 3D computing?      Home login  
 AUTHOR
 Bayotle
Joined: 4/21/2008
Msg: 26
Surface computing, the first step to 3D computing?Page 2 of 2    (1, 2)
As far as the ocular, i'm sure something could be done to eliminate the eye blink issue - something simple would be to require a key to be pressed while the device is in use or simply look away – it could also have controls in place to monitor for erratic eye movement and ignore them, for those with disabilities it would make things easier and would be easy to implement. Now that I actually start to think about it, it may be worth some additional though… An on screen qwerty keyboard for starters, you could essentially control the system with that alone and never use your hands. Looking at a specific key and a blink or pausing on that key for x amount of time indicates a key press - It wouldn’t be as fast as a keyboard but it does have a lot of possibilities for those that can’t work a normal system and would allow a lot of people with disabilities to be employed.

Oh and as far as shutting down Firefox, how could you be sure that was a mistake?

As far as VR (voice recognition).. Last time i had the displeasure of using it it pretty much did exactly what you said would happen with the ocular control, it sent my system into a frenzy, closed documents without saving them, opened dozens of applications and for awhile i thought i was going to hafta put my system down with a 45..

I can't see VR ever existing as you see on ST, would be nice but there are way to many problems w/languages, the differences in voices, accents, pronunciation and just plain noise (as the case here) is just as a start. A simply example using yours... Search the net or your system? Unless you specifically define what it is your looking for it leaves room for a lot of errors and the more you specify, the higher the probability the computer will misunderstand what you said. Then with a generation of text’rs - their liable to accidentally launch missiles at Canada. I find VR a pain no matter how well it worked. Even for simply dictation, imagine a large office with everyone trying to talk to their computers and then you get into the security issue of talking over typing, much easier to listen in when it's verbal – walk away from your desk just to come back to dictation of the guy in the next cubical talking to your wife about their trip to vegas. VR, Automation etc is cool to play with, I’ve been doing it most of my life but in reality it really starts to suck after awhile. My early PC’s used to talk to me, creative labs had text to speech and I hacked all my apps to use it, after a few days it got on my nerves so much i removed all the voice options. Even M$’s agents were fun but even they had to go within a few days to keep my system from being thrown out a window!
 SteelCity1981
Joined: 8/16/2005
Msg: 27
view profile
History
Surface computing, the first step to 3D computing?
Posted: 10/15/2008 1:39:15 PM
Yes, the hardware is the thing that makes it fast but people are only concerned about that because the software (mostly the OS) is so good at running slowly. Given what a Surface does, I'd guess you could probably run it off a 486, if its software was written effectively (ie. not using Vista).


Well you got to have the hardware to manage the software so it goes hand and hand. But it just goes beyond the software aspect as well with dual cores and quad cores processors that helps cut time for the home user and money for the corp user doing multiple task at once. In multitasking purposes it's the software that normally adapts to the hardware, instead of the hardware having to adapt to the software like it was with single core processors.

I'm sure you could run surface computing on a 486 if it used a simple GUI like Windows 3.1, but then no one would buy it.
 Pun4Reword
Joined: 10/25/2008
Msg: 28
view profile
History
Surface computing, the first step to 3D computing?
Posted: 10/30/2008 10:21:11 PM
As people have mentioned, the multitouch 2D that Microsoft is trying to invent has been out for some time. You can make one pretty cheaply. http://www.instructables.com/id/Interactive-Multitouch-Display/

Now there are 3D devices. Again, folks have mentioned about the VR root technology. Dealing with position location in 3D space requires some non-trival tracking technology that is not currently economical for the mass market. Glove laser gyros were real expensive the last time I bothered looking, but they were way more practical than some of the experimental 3D stuff I have heard about.

Please remember, in Hollywood, the director shows reality from their vantage. Physics and practicality are usually casualties. (Where is my flying car from the 1960's Popular Mechanics? Atomic power was suppose to be so cheap that hooking up the electric meters was not going to be worth the effort...)
 satsumo
Joined: 12/7/2007
Msg: 29
Surface computing, the first step to 3D computing?
Posted: 10/31/2008 11:25:27 AM
I'm sure you could run surface computing on a 486 if it used a simple GUI like Windows 3.1, but then no one would buy it.

This just isn't true. It's the thing MS has been most effective at making people believe. That somehow making changes to bitmaps and adding alpha transparency requires multiple processors and complex mult-tasking systems.

The fact is, all those little graphical tweaks take a little more memory, just a little more, not megabytes. The only cost of processor involves the time to copy the bitmaps to the display. Given that most PC's have graphic acceleration, thats isn't done by the processor anyway.

A 486 (with a blitter) could do surface the way it looks now.
 Pun4Reword
Joined: 10/25/2008
Msg: 30
view profile
History
Surface computing, the first step to 3D computing?
Posted: 10/31/2008 6:08:21 PM
Just a thought here.

Modern 2D screens are on the order of more than 1024x768. How about we call them 1024x1024 for ease. Now for 3D, monochrome we get have to multiply that by our height or depth of say... 1024. Now if you add color, you must multiply that by Bits per location say 32 bits. Now your memory requirements are 1024x1024x1024x32 = 32 Gigabits or 4 Gigabytes of memory. You might be able to reduce the memory requirements by using hidden surface removal algorithms, but crunching that much data in realtime might require a bit more horsepower. If the image is dynamic, then you have to worry about positional translation which means even more horsepower.

Your common CPU architecture might not work. GPUs/tile processing/Systolic arrays might be a better way to handle the number crunching and memory bandwidth issues. These are the same architectures you would use if you are trying to perform 3D input. They are used in RADAR systems right now quite successfully.
 SteelCity1981
Joined: 8/16/2005
Msg: 31
view profile
History
Surface computing, the first step to 3D computing?
Posted: 10/31/2008 10:01:04 PM
This just isn't true.


Your kidding right? Get a budget cpu and put in a modest graphics card and see how much the cpu starts to totally bottleneck the graphics engine while using just a modest 3d graphical program to the point where it dips below a certain amout of frame rates and becomes unsuable. Processing power and graphical power work hand and hand. You can't run a blue ray movie using a 1ghz Pentuim 3 processor using an AGP ATI Radeon 3850 gpu and expect it to run fine, because it won't. It will end up freezing up due to the bottleneck of the processor, regardless of how well that Radeon 3850 can handle Blue-Ray.
 Bayotle
Joined: 4/21/2008
Msg: 32
Surface computing, the first step to 3D computing?
Posted: 11/1/2008 3:39:02 AM
I had a 3'd app on my coco back in the day, you gave it the coordinates and it'd do the calculations, took awhile on complex images and none were rendered but it could take a complex wireframe and rotate it at a decent rate, this was done in machine code, problem is poor coding. If you want power, you have to program in assembler and that appears to be a dying art... mjho
 satsumo
Joined: 12/7/2007
Msg: 33
Surface computing, the first step to 3D computing?
Posted: 11/1/2008 11:56:39 AM

Get a budget cpu and put in a modest graphics card and see how much the cpu starts to totally bottleneck the graphics engine while using just a modest 3d graphical program

Sure, but what has any of that got to do with the Surface? Or Vista's Aero theme for that matter. You're talking about a program that does vector and matrix math operations. No doubt it uses the CPU rather than the GPU to do them.

Pun4Reword, I always imagined it using some sort of projection technology to draw proper surfaces, rather than something like voxels. I imagined that voxels would be pretty unworkable in actual 3d, wouldn't the surfaces full of ridges and uneven? 2D displays started with line drawing, and have finished up with pixels so I could be wrong.
 ID23
Joined: 2/25/2007
Msg: 34
Surface computing, the first step to 3D computing?
Posted: 11/1/2008 12:48:03 PM
RAM also plays a big factor here, not just the CPU and the GPU.
 SteelCity1981
Joined: 8/16/2005
Msg: 35
view profile
History
Surface computing, the first step to 3D computing?
Posted: 11/1/2008 1:38:37 PM
Sure, but what has any of that got to do with the Surface? Or Vista's Aero theme for that matter


It's called graphical Architecture that goes along with the graphical the chip. Aero needs at least 64mb of ram and SM 2.0 or higer to run it, because Aero's architecture needs a gpu to meet those Architecture requirments. People have tried to run it on much less by hacking the registry with much older gpus and have failed, because the graphics Architecture itself won't support it. You can't run Aero on a Voodoo 3 gpu with 32mb of ram on it, because it's architecture simply isn't powerful enough.
 satsumo
Joined: 12/7/2007
Msg: 36
Surface computing, the first step to 3D computing?
Posted: 11/1/2008 2:05:39 PM

Aero needs at least 64mb of ram and SM 2.0

But Aero is just bitmaps with an Alpha channels for transparency. Obviously something has gone wrong if that requires 64mb of ram. A 1024 x 1024 bitmap (ie. screen sized) of true color with alpha would need 4mb. Aero requires the equivalent of 16 of them?

And besides, you're talking about memory and fill rate. Assuming a blitter deals with fill rate, and that their is enough RAM to store the display and bitmaps, there is still nothing that Surface does to require a processor that Vista won't grind to a halt.
 SteelCity1981
Joined: 8/16/2005
Msg: 37
view profile
History
Surface computing, the first step to 3D computing?
Posted: 11/1/2008 5:23:07 PM
I goes beyond just 2D bitmaping channels alone, Aero requires D3D Pixel/Vertex shader to add special effects to objects in a 3D environment like the Flip3D function for example which is apart of the Aero architecture itself, that needs the fill rate, the architecture along with an x amount of ram to run the D3D Pixel/Vertex shader function of Aero in its entirety. These D3D Pixel/Vertex shader functions applies to the 3D functions of surface computing in its entirety as well. I mean yeah, could run Aero and surface computing with any gpu and cpu if you take away the actual 3d functions, but then all it really would be is a clear flat 2D window with no real acutal 3D functions to it.
 satsumo
Joined: 12/7/2007
Msg: 38
Surface computing, the first step to 3D computing?
Posted: 11/1/2008 5:48:44 PM
Even so, shaders are tiny amounts of memory. If you could put one into display RAM it wouldn't be a big as an icon. The whole purpose of shaders is to take the load off the processor, somehow MS has them make thing's slower.

If D3D is needed to make Aero work, then I understand what MS have done with the other 60mb. But that dosen't make it necessary, I assume that Aero runs its own copy of D3D, no doubt that D3D is running a copy of the NET runtime or something silly like that. If you did the same thing's on a Ps3, Wii, a 360 (or possibly even Linux) it would need a few MB at most.

To throw bitmaps around in 3d on a computer just doesn't require 64mb, unless that computer is running Windows. If Surface was not running Windows it could do the same things with far less processing power.
 SteelCity1981
Joined: 8/16/2005
Msg: 39
view profile
History
Surface computing, the first step to 3D computing?
Posted: 11/1/2008 6:01:15 PM
It depends upon what type of shaders are required. For example Vertex Shaders enable an unlimited palette of visual effects that can be rendered in real time which requires a moderate size amount of memory to perform. The more realistic the visual effects the more memory it's going to requrie to utlize those sources. It also depends upon what type of 3d object you are rendering. The mroe realistic 3D object is the more it requires a decent amount size of ram resources to perform.
 satsumo
Joined: 12/7/2007
Msg: 40
Surface computing, the first step to 3D computing?
Posted: 11/2/2008 2:04:49 PM
It seem's pointless to argue. Obviously rendering a few textured squares really does take 64mb of data (not including the textures). My mistake.
 SteelCity1981
Joined: 8/16/2005
Msg: 41
view profile
History
Surface computing, the first step to 3D computing?
Posted: 11/2/2008 3:46:19 PM
But no i do think you have a solid point though with the you can do more with less because you can with certain things where some times these programmers make mistakes when they write these programs that eats up more resources then they should. Vista is a prime example of that. MS is finally getting it right with Windows 7 where it will be able to run on less resources, hopefully.
 chrono1985
Joined: 11/20/2004
Msg: 42
Surface computing, the first step to 3D computing?
Posted: 11/5/2008 11:11:42 PM
Surface computer isn't all that new. People have been building their own multi-touch displays for a while now using materials you can easily get in any large city. I have a pad designed for one, but no lcd to stick in it yet, even wrote some fancy software for gesture and glyph recognition. All it really serves a purpose for currently though is my artwork, makes 3d modeling a ton easier when i'm not moving my hands around a keyboard reaching for some odd key to make the models change how i want them to.

I tried the infrared beam/webcam eye tracking before, it was very counter intuitive to me. It also gave me a headache after a long enough period of using it, though that was probably more from staring at a monitor for so long to be fair.

You want to see something really cool, look up the OCA Neural Input Actuator, their available for $130. What they do is, you wrap this band around your head that monitors brain impulses while you use your computer, it learns to recognize and associate impulses to actions. After enough training with one you could probably eliminate the need for a mouse, keyboard I'm not so sure about since language is a complex thing to grasp in an algorithm. From the reviews I read of them the hardest part is stopping yourself from reaching for the action you want to perform, while still maintaining the impulse to perform that action, and filtering out panic responses as well.
 chrono1985
Joined: 11/20/2004
Msg: 43
Surface computing, the first step to 3D computing?
Posted: 11/5/2008 11:53:36 PM

Modern 2D screens are on the order of more than 1024x768. How about we call them 1024x1024 for ease. Now for 3D, monochrome we get have to multiply that by our height or depth of say... 1024. Now if you add color, you must multiply that by Bits per location say 32 bits. Now your memory requirements are 1024x1024x1024x32 = 32 Gigabits or 4 Gigabytes of memory. You might be able to reduce the memory requirements by using hidden surface removal algorithms, but crunching that much data in realtime might require a bit more horsepower. If the image is dynamic, then you have to worry about positional translation which means even more horsepower.


I felt the need to address this one in a separate post. I will share with you how I track thousands upon thousands of objects in a complex 3d space, which is how it's been done in virtual 3d development, give or take a few optimizations over the years, since 1980s.

Each object carries 2 vector3s (x, y, z values), the first is for position in 3d space, the second is for scale on each axis. and a quaternion (x, y, z, w) which is rotation around each of the 3 spatial axis, and a scaling factor when those rotations get outside the bounds of a radian (vast majority of the time the scaler is very close to 1). Those three sets of values are used to build a 4x4 matrix, which tells the object what the world looks like from it's position and rotation, and allows properly displaying it when combine with two other matrices I'll mention next. The camera carries two matrices, View (position and rotation of the camera), and Perspective (viewing angle, aspect ratio for the current view port, nearest and object can get without being drawn, farthest an object can get without being drawn). Multiplying those 3 by the position of a point on the object gives me values I can use to interpolate across (follow the surface in short description).

There's no need to track every last pixel when every last pixel wont be filled, just the ones that are filled. From there several lighting calculations are one, I wont go into to much detail on those as they are really frickin complicated, but I will detail one technique of them. Shadow mapping, when you want to show the shadow of something on the objects around it, it's common practice to draw that object from 6 different sides of a cube around it, mind you this one is only done in black and white so no major calculations here.

Now with that in mind, think of this: the average game scene in a modern game consist of thousands of objects, a great majority of them get shadow maps as well, though smaller objects their shadow maps are done per frame to save on video memory. When you count up how many pixels the pixel shader goes through, even repeated ones and overdraw (ones you can't see on screen), you get what's called fill rate.

Modern video cards are capable of fill rates in the trillions of pixels per millisecond (1/1000th of a second). I'm a certain any decent computer could handle a 3d display with real depth (not simulated like stereo 3d displays) of normal desktop monitor size outside of gaming. But when it comes to gaming you need the extra horsepower that would be spent on even more visual detail for the game mechanics themselves.

All you really need to track a persons hand in 3d space are two things, position relative to point 0, 0, 0, and rotation, a reverse of the view matrix to fire rays from to test for collision against an intractable object. When it comes to UI design, there are hundreds of small tricks us programmers employ to speed up the process and eliminate redundant checking, most commonly are things like focus tracking (keeping track of the last object you had selected and only changing it when your co-ordinates no longer point toward it, even then it's move up the hierarchy until it's found what your pointing at).

For tracking position that's easy enough, look at the wii, that's based off from power glove technology but with several new techniques added in to make it less bulky. For things like tracking finger bends, there's electrostatics you could build into a slim glove, as long as they turn it on or hit the calibrate button with their hand flat, it's only a matter of keeping track of the charge emitted from the gel to track finger angles.
 satsumo
Joined: 12/7/2007
Msg: 44
Surface computing, the first step to 3D computing?
Posted: 12/15/2008 6:23:58 AM

Modern video cards are capable of fill rates in the trillions of pixels per millisecond (1/1000th of a second). I'm a certain any decent computer could handle a 3d display with real depth (not simulated like stereo 3d displays) of normal desktop monitor size outside of gaming.

This is another common MS distortion. They like to measure the fill rate by how many pixels could be put through the shader, not how many are written to a screen. That is, if a shader handles 4 textures passes (say diffuse, bump, specular and an additive) then MS counts that as 4 pixels when only 1 pixel (the end result of the shader) is written to the display.

The relevant value is really overdraw, that is, how many times a GPU could fill screen with pixels in one frame. The fastest overdraw I ever saw was on the PS2, which had 10 times overdraw. A PC graphics card has much less (something like 3-4 times), games are writen to minimize overdraw as much as possible.

Modern game engines often render the depth buffer before rendering color. This way many pixels fail the depth test early on. They don't go through the shader pipeline and don't get written to the screen.

Even 10 times overdraw would give you a very shallow 3D display.
 Gradient Echo
Joined: 11/28/2008
Msg: 45
Surface computing, the first step to 3D computing?
Posted: 12/18/2008 12:40:15 AM

It would be simple to program a camera to recognise whether any individual finger is straight or bent, a bent finger representing a key press.


Conceptually it's easy, but getting it to a state which is actually pleasant for the user is difficult. And it's never going to take off until it's as intuitive and convenient as using keyboards, touch surfaces and mice.

I've tried a few of these gesture recognition and motion tracking interfaces. They are very hard to use. Controlling a robot arm using computer vision was a very frustrating experience, since you had to make sure the cameras can see your hand and you couldn't make sudden movements. These interfaces I tried were mostly from research labs, so they lack polish. It's never as slick as you see in the demo videos.

That said, I am involved with a project to make one of these interfaces, so we'll see how that goes. We have a few new ideas that will help make it a bit better, but it still won't be perfect.
Show ALL Forums  > Technology/Computers  > Surface computing, the first step to 3D computing?