BMW i8 in WebGL
car.playcanvas.com
car.playcanvas.com
Porsche[1] and Renault[2] did something similar lately. It's great to see WebGL used for this in production. Honestly, I'm surprised it took so long. Visualizing cars with WebGL seems like a no brainer, especially when most current websites load dozens of images for their "360° views".
[1] http://www.porsche.com/microsite/911/germany.aspx#showroom/9...
http://www.turbosquid.com/Search/Index.cfm?featureID=5360209...
This was done by PlayCanvas, so the goal is marketing of their platform / engine.
This is both impressive, and makes me feel very old.
I didn't ask, but the thought was amusing to me.
So: no, not really impressive. Feels like a regression, actually.
(At least the mobile devices of 2015 managed to do 3D acceleration properly. Too bad that desktop never caught up and that the mobile landscape formed by accident due to commoditization, not due to an understanding of open standards.)
I doubt an equivalent Windows machine would fare better.
An occasional hanging frame, but nothing serious.
I'm viewing it in Firefox on Arch linux.
Linux machine with i5-2450M CPU @ 2.50GHz and i915 integrated graphics, running Chrome.
If it's as slow as you say, it sounds like you're getting software rendering.
(If you are on Mesa drivers you can try it with env LIBGL_ALWAYS_SOFTWARE=1 firefox http://car.playcanvas.com/)
Firefox 41.0.2 on Ubuntu Vivid Vervet (3.19.0-31-generic), on a LinuxCertified.com LC2430E. (Good laptop. No Microsoft tax. Yes, that is a blatant plug. So's this WebGL demo.)
I reckon this is quite RAM-intensive, at least a few hundred megabytes, which might be leading to problems for some people.
with other 25 chrome windows(god knows how many tabs), one showing live tv
As this visualization demonstrates in nice 3d form.
It can be best observed in white-blue color.
It definitely grabs your attention, but in a few years when electric cars are less rare I bet it will look kind of gimmicky.
But the people who buy them don't care. They'll just buy whatever the new thing is.
It's irrelevant if the i8 is still cool in 5 years to the people that can afford an i8.
Tesla doesn't have regular cars to distinguish from, so they can afford to make something that just looks like a normal luxury car (a Jag crossed with a Maserati).
You can also buy an electric RAV4 which looks just like a normal one but nobody does because what's the point of driving an electric car if strangers can't see how rich and virtuous you are?
However, I really don't think I can drive a car that looks like this. Especially with the silly blue trim.
The trick with the web is not the actual tech inside, as much as the instant delivery capability across a huge variety of devices which support the tech.
* Yes, yes, I know that there are tons of compatibility issues, but native support across the same range of devices is 10x harder. If not 100x or 1000x.
I think there is probably a slight shearing layer in the way WebGL integrates with the rest of the browser programming interfaces since it's the lowest level API by far that is exposed. Thus, platform developers who are served ala carte technologies that provide a facade for traditionally very non-trivial things (layout, font rendering and font server, vector graphics rendering, etc. etc.) are suddenly given raw substrate which requires one or two abstraction levels before it's near even SVG which itself can be considered really low level when compared with HTML and CSS.
Traditionally, web developers expect a higher level experience and I think the organizations that usually serve web development services have not taken into account that you need a team of computer graphics experts if one wants to develop anything on top of WebGL.
I'm not dismissing web developers - I'm a graphics programmer myself - but basically, for a non-genious level person like me even grokking the transform stack requires re-orientation every time I'm not touching linear algebra code for a couple of weeks.
It's not a fault of webgl, per se - the other graphics aspects a browser serves do have pretty well figured out conventions and grammar that can be standardized to provide the ala-carte publishing experience a browser provides. But we don't really have any "standard" conventions in computer graphics yet that could be formalized to the level a page layout can. And is it surprising? Publishing has a history as an industrial craft of 500 years. All the conventions have been figured out, and are implementable in algorithmic form.
While realistic art has been practiced thousands of years only 2D graphics really has the industrial basis where we can say that everyone understands and can formalize what they want from their image.
3D graphics is a whole new ballpark. When pixar introduced their shader language 30 years ago they laid out the foundations for formalizing the colorization in visual grammar. The concept of a scene graph is pretty formalized, as well as the perspective projection of a camera. There are some "usual" convention in 3D interaction like the arcball rotation in an editor like scene.
But other than that? The visual world is infinitely rich. We are not ready for a "standard" representation of an infinitely rich universe of expression.
Of course, that does not mean there are no representations that could not be formalized - there are the standard materials of 3D engines and so on, and physical rendering approaches are slowly converging on the best model - but, I don't know if we can ever reach the standardization of desk top publishing in 3D graphics.
Native Quake III on a Pentium 4-era system was much smoother than most of the WebGL stuff I see on a modern system, but the fact that a WebGL demo [1] of a subset of Quake III is very smooth seems to support this idea.
You make a lot of good points about the difficulties that the low-level nature of graphics programming present to standardization. I agree that there probably isn't necessarily an easy solution to this which doesn't unnecessarily restrict the space of possibilities in the name of performance or interoperability.
I only every see it as 'download' in comments.
Yeah. It's been a half-hour and it hasn't needed maintenance.
The only thing I wish it had was more interactions, but as is it demonstrates that WebGL is not just a toy, but something to be taken more seriously in the GL community.
What, have you never seen a WebGL demo before?
> it demonstrates that WebGL is not just a toy, but something to be taken more seriously in the GL community.
It already is taken seriously. WebGL is merely a variant of OpenGL ES for JavaScript. Heck, the whole of Unity and the Unreal Engine can run on it.
Oh and another thing. PlayCanvas looks great but also looks properly expensive. I'm having to cough some pretty serious dough as a single experimental developer, without even getting above bronze support. Not hugely garage-outfit friendly though I will say it looks very professional.
Why does something have to be revolutionary to enjoy it? Why can't you just enjoy it because it's enjoyable?
Also, there's a huge difference between "it should be this way" and "it is this way." The fact that the person who made this made it the way it should be is impressive, when so few people seem capable of that.
If I were to mind read I would say the general objection is usually the over abundance of praise for projects that do not "deserve" it. I can't say that I'm not sympathetic to such viewpoints. For e.g. "You're great at math" can mean anything from you can do long division in your head to you passed college to you won the fields medal. Raising the floor of appreciation reduces the number of bits at the top end to accurately communicate the emotional importance of things. Its a fair criticism in general. The other end of the argument is that encouragement motivates people to greater things, and that certainly is also valid.
I'm not a diehard gamer, myopically focused on only AAA to the detriment of my livelihood. I'm a developer. There is more business for me in "casual" games--whatever that actually means, because it seems to only ever be used as a pejorative that means "not Call of Duty"--than is realistically possible in AAA.
What you're really really after is a single OS, single hardware platform world. That would require the least amount of porting effort which is your goal.
People (and you might not be one of those) think that the Web is going to bring about this great cross-platform revolution, but its a lie except for the basic UI, low-perf applications for two easy-to-identify reasons. First, the standards themselves are poorly specified and contain ambiguities (by design to give leeway to implementors on different hardware). No standard body even puts out a reference implementation. Second, each platform implementation will be implemented differently causing people shipping cross-platform to care about weird implementation quirks that cause the performance of their game to tank in weird ways.
Cars are legally required to do so, aren't they? Otherwise, electric vehicles would be quiet enough to kill people.
As an owner of a Tesla, no, there is no such thing (at least in the US), and please stop spreading misinformation (if you are talking about the US).
And the car is not COMPLETELY silent... the wheels make noise on the road. I've driven a completely electric car for at least a year, never got even closely into a pedestrian "situation", and I live in a highly populated area (NYC and its suburbs).
Not yet in the US, though there are active proposals to change that.
> Otherwise, electric vehicles would be quiet enough to kill people.
A completely silent car, driven properly, wouldn't kill anyone.
Well done!