Why Hasn't 3D Taken Off For the Web?
First time accepted submitter clockwise_music writes "With HTML5 we're closer to the point where a browser can do almost everything that a native app can do. The final frontier is 3D, but WebGL isn't even part of the HTML5 standard, Microsoft refuses to support it, Apple wants to push their native apps and it's not supported in the Android mobile browser. Flash used to be an option but Adobe have dropped mobile support. To reach most people you'd have to learn Javascript, WebGL and Three.js/Scene.js for Chrome/Firefox, then you'd have to learn Actionscript + Flash for the Microsofties, then learn Objective-C for the apple fanboys, then learn Java to write a native app for Android. When will 3D finally become available for all? Do you think it's inevitable or will it never see the light of day?"
I suffered through the VRML list back in the day when people first wanted to make 3D cyberspace.
There's a conflict: you either model 3D functional worlds, or the underlying structure, or you create a language which can draw things in 3D.
The problem with the latter is that it's not stand alone, but requires people to come up with an intersection of code, resources and aesthetics.
What people actually need is the former, which is the ability to create functional 3D models and describe them in a language like HTML, and have the browser itself create an interactive world from that.
Futurist Traditionalism
Unless it's supported in Links I'm not going to use 3D...
Why should take off? What's the drive behind it? What need does it satisfy?
You can't push out something without a market. Flash created a market for 2D web graphics, and now HTML5 standardizes that based on the experience we had in the Flash years. Unity is doing the same thing for 3D, but it will take a while before 3D on the web becomes common enough to need standardization.
The question should be ..
What is the compelling user experience that would be enabled by 3D?
And what do you really mean by 3D? Do you mean projections onto a 2D surface of a 3D model? Or do you mean something like the spinning displays that render voxels that you can actually walk around? Because a genuine, cheap, ubiquitous 3D display would open up all sorts of possibilities.
I am Slashdot. Are you Slashdot as well?
First of all, it's NOT 3D. It's fixed optical stereo. Which leads to headaches due to many bad cues for your visual system, and only barely looks 3D if you hold still and pretend there's only one fixed viewpoint in the world. Which isn't true, and under the circumstances of pretending there is, you lose a great deal of interesting visual information. You get one view out of a huge number of possibilities.
Secondly because real 3D is hard; consumers don't have display devices for it yet.
Third, because real 3D is extremely data heavy at some point in the process; even if your connection was fast enough to get your POV out to the server and the server and connection fast enough to get the data back to you, the server still has to cough up a lot of data that's different every time from a very large base. If the display device is doing the job, it has to have all the data, all the time.
It's NOT 3D. You have been marketed.
I've fallen off your lawn, and I can't get up.
Because people will start abusing the hell out of it.
Oh, I get it. Like a tesseract. Everyone else sees it as smaller on the outside than it is from your POV.
I've fallen off your lawn, and I can't get up.
Until very recently there was very little use for 3D for most people. Those few doing CAD, and some games were the only users, and they are not enough to bring 3D into the mainstream.
However we now have relatively low cost 3D movie cameras and 3D printers are also beginning to become common. I think 3D will finally start to take off.
More likely, it hasn't taken off because people haven't found the right way to use it. 3D file browsers have been around since the early 90s at least (Jurassic Park anyone? "It's UNIX! I know this!"), and while they're kind of cool they're just not as fast and intuitive as the standard 2D systems.
Please consider this account deleted, I just can't be bothered with the spam anymore.
I get it! I finally get it! String theory is just physicists turning it up to 11 !!!
(I admit I actually have replacement knobs on my Fender twin that do go to 11...)
I've fallen off your lawn, and I can't get up.
3D can be very handy in architecture, or sculpting, or engineering
However, current crop of browsers just ain't there yet, for the power of 3D to shine
Muchas Gracias, Señor Edward Snowden !
Why should take off? What's the drive behind it? What need does it satisfy?
I sold medical hardware through the web using a 3rd party plug-in 10 years ago, and it was wow. Here is a small list ....or lets face it the only really one. SHOPPING, no more multiple static views of item.
Education - Planetary Systems, Engines, Inside Human Body
Lets Break out of 2D - Streetview 3D...or walk where it is unsafe...Warzones, Mars...or even oil rigs safety training
As I said I did this years ago for a company, it looked great, but it was a clunky implementation.
There are a few tiny edge cases
What's with this recurring meme that I've been seeing on Slashdot lately that edge cases should be ignored? If everybody has his own edge case, then why not allow something that handles all the edge cases acceptably?
but everything else is FPS or gimmick.
True, one of the first video games with a 3D perspective (Battlezone) was the ur-first-person-shooter, but 3D games in other genres have been popular since the mid-1990s. Or is every other video game genre "gimmick" and "few tiny edge cases" to you? I'm not getting what you mean by "gimmick"; in the circles where I hang out, "gimmick" refers to a 2D platformer for the NES published by Sunsoft with a design aesthetic similar to that of the Kirby games.
kind of like 3D tv's
The "3D" in "3D TV" and the "3D" in WebGL are two different things. WebGL just defines a way to project 3D geometry into a display plane. This display plane may or may not be presented with binocular separation, which is what the "3D" in "3D TV" and "Nintendo 3DS" means.
Didn't VRML already proof that noone needs content that is hard to create and carries no additional information?
I can teach a 4th grader to create simple, but complete and useable websites in notepad. Even creating fancy websites is easy with Wordpad, Joomla, Frontpage, Dreamweaver, you name it.
But did you ever try to create 3D content? And it's definitly not the lack of tools for creating it.
And what kind of content would you expect in 3D anyway? Back during the VRML hype, the standard rationale why you need it were either games or 360 degrees product views. Add 3D-charts if you want. And now look at the most frequented websites today: In what way would Facebook or Twitter and whatever webmail client you're using need it?
bickerdyke
Noninteractive "geometric projections of 3d scenes onto a 2d viewing plane", such as Mona Lisa, can be done server-side. Interactive ones, such as Quake, can be rebuilt for each client platform. True, duplicating effort for each client platform poses an entry barrier, but I can think of a few Slashdot users who regularly post comments showing a desire for entry barriers for anything interactive in order to protect end users from having their time wasted by a glut of novice productions.
You don't have to use the languages the story states for the various platforms. You use C++ or C and OpenGL for the library and use the same code for all 3 platforms. I know because I've done it.
Better known as 318230.
or you could just write something in OpenGL and compile and run it anywhere you want natively.
Running something natively generally involves crossing an end-user permission boundary. Remember ActiveX? Furthermore, more and more often, running something natively requires gaining permission from a multinational company to whom device owners have delegated the power of curation, such as Apple or the game console makers.
Why must we shoehorn every last thing onto a platform that was meant to display text?
Because it provides a sandbox such that the permission boundary of downloading and installing a native application is not necessary.
You appear to be confusing two different definitions of "3D": projecting geometry onto a plane vs. display with binocular separation. See my other comment.
Article isn't about stereoscopy, it's about OpenGL style 3D (hence webgl).
Oh, great, another string theorist waving around his Calabi-Yau shaped penis. Let us know when science is capable of measuring your Planck length prick.
Around 10 years ago, there were some promising Web3D technologies around. VRML was easy to create VR walkthroughs with. But there was no unified VRML browser plugin - there were multiple plugins, each with its own quirks - and it was hard to create meaningful interaction with it. Shockwave3D was introduced with Macromedia Director 8.5. It was great for creating Web3D applications. It failed on 3 counts though. 1) It had no 3D creation UI whatsoever. Everything had to be scripted by hand with Lingo code, which made it a "programmers only" 3D solution. 2) The Flash crowd put a lot of pressure on Macromedia not to develop Shockwave3D further, and to instead put a 3D engine into the Flash plugin. 3) After Adobe bought Macromedia, nobody updated the DirectX 7/OpenGL based Shockwave3D engine for several years. The engine fell behind the state-of-the-art in graphics quality, and the handful of people who were capable of using Shockwave3D stopped developing web3D apps with it. --- Then there is the sorry story of Virtools 3D, now owned by Dassault Systems. Virtools had a great 3D engine, coupled with a visual-programming paradigm that was as easy to program with as connecting visual flowchart elements with lines. Virtools failed terribly in the market because the ahead-of-their-time French company that created it insisted on pricing Virtools at 25,000 Dollars a seat or thereabouts. That was so expensive that Virtools never attracted more than a handful of users, even though it featured a powerful & easy to use toolset. ----- One more case. Quest3D combined a great-looking, web-capable 3D engine with a visual programming paradigm. But Quest3D's connect-the-nodes programming paradigm was not intuitive at all. Even though it was cheaper than Virtools, the idiosyncratic, and some would say eccentric - way you had to program Quest3D caused it to fail. ------ To sum it up in a few words, the companies that WERE capable of creating Web3D authoring tools in the early 2000s made mistake after mistake, eventually causing Web3D to fail completely. Shockwave3D had no GUI for 3D work. VRML was too simple, no good for anything more than interactive walkthroughs. Virtools was great, but cost as much as a fricking car to buy. Quest3D failed on the user-friendliness front. Flash never got a usable 3D engine integrated. ---- Basically, Web3D had lots of potential as far back as 10 years ago. But the lack of user-friendly or affordable tools caused Web3D to fail. ----- Today there are powerful and easy to use 3D engines like Unity for web development. But it took way too long for it to arrive, and the Web3D market went flat - as in "flat coke" - during the years that passed without any progress being made on the Web3D tech-front. ------- Web3D may eventually come back because of another trend, and that is "Augmented Reality". But nobody knows that for certain.
Why did the chicken cross the road? Because Elon Musk put an AI chip in its head.
If you had even read the summary, you'd know this is about 3d graphics a la OpenGL, not stereoscopic "3d" a la 3d movies.
Your friendly radiologist would like to be able to solve your head pain by reading your MRI study in 3D without having to pay 6 digits for a PACS viewer. That is one legitimate, if infrequent, scenario where 3D support in multiple browsers would be welcome.
I see a lot of folks who are saying that 3D user interface is a gimmick. I think -- actually, I know --- that there just hasn't been much research into intuitive 3D user interface designs. Look around this page. Everything is rectangular and 2D. That's because memory is one dimensional, and with a wrap + offset you get a cheap 2D raster area. Nearly all user interface is directly affected by the old limitations that 2D rasterizable areas have. However, if you add another plane, or "channel" to the pixel data you can create a depth buffer which beautifully handles rasterization and/or stenciling of non rectangular shapes -- and your GPU is fully capable of doing such compositing, even on most 8 year old PCs or laptops w/ integrated graphics (my "minimum system requirements" rigs).
I've actually been doing experimental research into 3D GUIs. In doing so I threw away the 2D rectangular "window", like this text box -- Gone. I had to throw them out, they were expensive. With 3D its more expensive to have areas of rectangular windows in the scene -- "clipping" or scissor / stencil operation to prevent objects from being shown outside a rectangle of pixels. It's much cheaper to load all the 3D stuff into the GPU and let the Z-Buffer handle the compositing (after some rough scene-wide clipping code excludes larger areas you won't be able to see).
One thing I realized is that it costs nothing to tilt things vs having them directly facing the screen. This means I can react to your mouse / head / finger or even eye movement. As you move the mouse to the right I can tilt and rotate the view such that more of the user interface becomes visible. This means you move the mouse less because the 3D elements naturally move towards your cursor (rotating in the opposite direction "around your head"). You effectively get more interface area, and you can have static panels of settings or menus for example off the edges of the screen that come into view as your mouse nears that edge of the screen -- Without overlapping your current workspace (like the Unity panel does in auto-hide).
The subtle tilting seamlessly reminds your brain where those "off screen" panels are -- Unlike with many current 2D touch UIs (Windows 8, for example), which rely on you to memorize gesture locations. These 2D UIs are inferior in my opinion because they lack discoverability. They place more load on your mind. What's interesting is that I've found that folks who use multiple screens or a large enough screens already utilize their peripheral vision to "track" other information. You notice if a twitter feed updates if it's open on another screen or window. In the real world humans do this too. When we're driving our eyes are sensitive to the movement in the side view mirrors. How do you access that field of view? Simply turn your head -- or in the case of mouse driven 3D UI, move the mouse to indicate your focal intent.
I literally have to think outside the box when re-creating standard UI elements like lists -- There's no bounding rectangle needed to conform to. I can simply dim the background a bit to add contrast, and let each list item be as long as it wants to be, tilting and sliding to meet your gaze as you read the individual items; No hard top or bottom, you can simply move them into view, and they stretch off into the distance (w/ multiple Levels of Detail for the various draw distances). To overlap items I can slightly tilt one under the other, or fold panels into the scree -- where they're still visible but take up less area -- They can slowly drift to your peripheral vision to keep you aware of them and snap back into the foreground if you move your mouse or turn your head or shift your gaze upon them momentarily.
There's no reason that you can't use make creating such 3D UIs even more simple than 2D UIs like HTML. For instance, You could simply indicate a section of data be "auto-hideable" and have the user's preference automatically do whatever that means to the user. There hasn't
3D doesn't offer much more than a wow factor... a factor which wears off pretty quickly. The exception to this is in games and simulations.
Every TV and Movie production featuring 3D has been met with "that was pretty cool, but gives me a headache or was too distracting and I couldn't enjoy the story."
The best 3D appears in our heads.
If we were to enjoy a 3D production in the future, it would have to most resemble a stage play allowing the viewer to experience the sensation of being a bystander watching the thing play out. We're simply not there yet... no holograms which is just about the only way to make it happen. It won't stop people from trying and failing again and again, but I think some people get it. Effective 3D would enable people to see things from any and all angles.
While maybe those movies seem a bit dated now, I'll point to ones like Johnny Mnemonic, in which the "3d" involved entirely new formatting of types of information. Minus a lot of the dazzle, in "today's 2d world" (to abuse a business phrase) I can basically only have one panel (however compound) of info in front of me at a time on the monitor, while everything else just has to sit there and wait to be looked at. If anything I have a "pseudo-2.5d" workflow whereupon info is organized in the following hierarchy:
Current Tab
Other Tabs in same Browser window
Other browser windows in the same "slice of desktop"
Other "desktop slices" (from a desktop splitter, I use Trandesk) which blanks the screen and lets you start all over again.
While it's a bit much for me, I think you can even run the desktop splitter a second time and add a layer on top of all of that. (My particular program makes a few mistakes but it mostly works.)
Instead, in what might be a case of "what does a car give me that a horse buggy doesn't", instead if non-text info especially were all merged into a huge multi-colored spatial layout, one "whoosh ride" through the "roller coaster" could leave you with a complete update of the state of all your info in about five minutes.
My first Journal Entry ever, in 8 years! http://slashdot.org/journal/365947/aphelion-scifi-fantasy-horror-poetry-webzine
After 20 years in IT, having heard the same stories time and time again, I'm surprised so many people still fall for this age-old mock discussion. Isn't it obvious that platform manufacturers profit by limiting the access/content developers have to their systems?
That's why: .XSLX, .DOC and .ODS still need converter software
- Sun's Java VM was suddenly dropped from Windows
- Mono is not a Microsoft product
- MS wants an app store for Windows
- Silverlight exists
- jQuery exists
- Flash is depicted as bad boy on mobile
- Xbox exists instead of enabling Windows pc's for console use
- Document formats like
- no browser manufacturer sticks to the W3C recommendations and standards
Interoperability and compatibility is bad business. It's a Mexican stand-off or Cold War between the big corporations. Nobody wants to be the loser, so it's easier to stick to your guns than to move towards cooperation.
All the mock reasons that are given why certain things are 'bad" is just to keep the masses distracted. I'm disappointed in the huge number of hipster developers that swallow this shit for truth and don't see that the advancement of technology has been hugely disabled by this war mongering.
10 years ago the 'browser wars' took up at least 50% of development time on the projects I worked on as a web dev, and now in 2013 this is still a heavy burden on many IT budgets. Imagine what we could have build if everything worked properly. All the wasted time and money, and so many still fall for the farcical discussion of why one tech is better than another...
There were quite a few VRML sites out there in the late 90's. You needed the Cosmo Worls player to view them. I used a free VRML editor called VRML Arena to build a few small scenes. I go the player from a book I got in 98, still have it but its been put away somewhere. VRML Arena worked in Windws 95 but in but 98 was missing a dll it required. Strangly in Windows XP it worked once again.
As for 3D even though VRML was pretty cool now that I look at it, why would I need 3D except for entertainment purposes? Give me a flat web so I can get my info right away.
by TheSpoom (715771) Uncaring Linux user here. I have nothing to add to this but please continue. *munches popcorn*
For most people, probably not a lot. However, there are some forms of data that can be better represented in 3 dimensions.
That said, a lot of those can still exist as Java plugins etc. Yeah, Java has security issues right now, but if we stack too much up on the web layer we'll probably see similar issues/bugs there too.
Really, for a 3d web-browsing experience to be useful, first we need a readily-available true-3d display (as in, hologram etc) to come around.