Software Rendering Engine GPU-Accelerated By WebCL
Phopojijo writes "OpenGL and DirectX have been the dominant real-time graphics APIs for decades. Both are catalogs of functions which convert geometry into images using predetermined mathematical algorithms (scanline rendering, triangles, etc.). Software rendering engines calculate colour values directly from the fundamental math. Reliance on OpenGL and DirectX could diminish when GPUs are utilized as general 'large batches of math' solvers which software rendering engines offload to. Developers would then be able to choose their algorithms for best suits their project, even native to web browsers with the upcoming WebCL."
...is something i'd really like to see -especially one that does Glide and the dither+undither characteristic of the first three Voodoo cards.
I know there's MAME/MESS but I don't think they do the infamous filtering.
Developers would then be able to choose their algorithms for best suits their project, even native to web browsers with the upcoming WebCL."
If web browsers were people, that statement would have caused a mass suicide of them. Guys, stop trying to turn the browser into a platform. It introduces so many layers of complexity and security issues that it's a miracle anyone has any trust or faith in the internet at all. It's getting to the point where the only way to safely browse the net is to shove the entire browser into a virtual machine... and even that only manages to protect your own computer, say nothing of your online activities, credentials, life, etc.
We need to be making browsers simpler, not more complex. Feature bloat is making these things a leper's colony inside your computer... a cesspool of malware and vulnerability. Don't add to it by coming up with some new way for developers to directly access the hardware of your computer because you're too fucking lazy to write an app to do whatever it is, and want to cram it into the browser instead. You're just encouraging them.
Seriously, we need a 12 step program for these "web 2.0" people.
#fuckbeta #iamslashdot #dicemustdie
I thought the point of GPU's was to not only offload the rendering of 3D graphics but also the algorithms. Game developers don't want to have to program primary rendering algorithms with every game they create. Do they? Am I missing something?
Great. I'd sure like my GPU, with its mad low level optimizations and surely ugly code to be used by unsigned code from random sources.
Java applets are far too secure, let's get to the lowest level!
Stupidity is the root of all evil.
Anyone care to post an alternate summary. I'm not dumb [1], but fuck if I can understand one coherent idea in that summary.
Sounds like a good infoworld article.
1. http://en.wikipedia.org/wiki/Illusory_superiority
There is no demonstration of anything.
Also, I tried to watch the video, but I've been on the internet enough to pick out a horsefucker in a crowd.
And that is a horsefucker.
The terminology in the summary is confusing and wrong.
First of all, software rendering vs. hardware rendering isn't the same as scanline rendering vs. "rendering from the underlying math", which I assume is a bad attempt at a layman's description of raytracing. You can have a scanline triangle renderer in software, and you can have a raytracer in hardware. It is true that most GPUs are built for scanline rendering and not raytracing, but plenty of raytracers have been written that run on GPUs.
Second, if your renderer runs on the GPU using OpenCL, then it is not a software renderer, it is a hardware renderer, perhaps with a little more of the work done in programmable shaders and a little less done on the fixed function hardware.
What they meant to say was that you can program your own hardware renderer using CL kernels, rather than rely on the ever-decreasing fixed-function hardware that the triangle pipeline normally uses.
The only fixed-function capabilities in a modern GPU are texture filtering and rasterization. The vertex processing, lighting, and shading are all programmable.
There is something interesting and new here, which is that maybe sometime in the future the programmable hardware will be good enough that the fixed-function stuff can be done away with completely.
Hamsters are at least as feathery as penguins. HamLix
Web based content is fine for every urban dweller out there with a 3Mb+ pipe but there are a lot of people that barely have 1Mb DSL. Ever try and do a 60M Steam update on one of those sucky lines?
Join the Slashcott! Feb 10 thru Feb 17!
Many 3D engines are carefully tuned to the limited bandwidth to the GPU cards that provides them just enough bandwidth per frame to transfer the necessary geometry/textures/etc for that frame. The results, of course, stay on the GPU card and are just outputted to the frame buffer. Now, in addition to that existing overhead, the engine writer would now have to transfer back the results/frame buffer back to the CPU to process, generate an image, that is then passed back to the GPU to be displayed as an image? Or am I missing something?
While I'm sure it would allow customized algorithms, they would have to be rather unique to not be handled by the current state of geometry/vertex/fragment shaders. Are they thinking some of non-triangular geometry?
Maybe there is a way to send the result of the maths directly to the frame buffer while it's on the GPU?
Things you think are in the Constitution, but are not.
This is stupid. It's still an API. It doesnt matter if it's OpenGL, DirectX, or proprietary software in the app. It's still an API that talks to the hardware.
I don't get it. Using a video card to render without the video card? Since so many machines on the market have 2+ cores, why not write a software renderer that will sit on one of the extra cores?
Fifty watts per channel, baby cakes.
Software rendering xor GPU acceleration.
GPU accelerated software rendering is just rendering.
Reliance on OpenGL and DirectX could diminish when GPUs are utilized as general 'large batches of math' solvers which software rendering engines offload to.
GPUs have never not been general 'large batches of math' solvers. It's just that games have never required a very large amount of math to be done apart from rendering 3D graphics. Hell, they still don't. Most of the time this kind of stuff is actively avoided, or faked when it cannot be avoided. Why? Because there are better things you can do with the development budget than try to bring a science project to life.
"Good" code doesn't pay as well as "fast" code. (and since it's a little ambiguous, the "fast" means development time, not run time..)
Then that makes two open specs that must be implemented: POSIX and X11. But you have a point that right now the only notable environments that focus on implementing these specs are desktop Linux and the free *BSDs. OS X, while based in part on FreeBSD, is not a free *BSD and no longer includes XQuartz as a standard feature.
Or if your users happen to have chosen a platform that gives the operating system publisher veto power over apps, and the operating system publisher has chosen to exercise this power over your app. For example, see Bob's Game or any story about rejection from Apple's App Store.
Guys, stop trying to turn the browser into a platform.
Then what's a better platform for developers who want to reach users of Windows, OS X, desktop Linux, Android, iOS, Windows RT, Windows Phone, and the game consoles? Making a program work on more than one platform requires severe modifications, sometimes including translation of every line of code into a different programming language. Windows Phone 7 and Xbox Live Indie Games, for example, couldn't run anything but verifiably type-safe .NET CF CIL. And all except the first four require permission from the operating system publisher before your code will even run, and said permission is not guaranteed.
Holy shit that guy talks so fast its like holding fast-forward or something
Other than that, developers of all kinds use software libraries to implement common tasks.
The problem comes when licensing such libraries becomes cost prohibitive or requires the developer to give up the keys to his own kingdom.
Websites will turn even slower, like they did after the javascript speedup enginery, and now everyone will have to upgrade their browser as well as their hardware to keep up with the webmonkeys' latest.
The computers keep becoming ever better room heaters but they're not accomplishing more, because the tasks they're set to cost so much more effort to achieve essentially the same as yesteryear. But at least it's that much more shiny! W000000t!
5. Repeat
Well, that actually accounts for eight of the twelve steps.
I suggest some modding:
1. round up politicians and remaining lawyers
2. add them to the "web 2.0" crowd
3. line them up
4. Shoot 'em
5. cover with lime
6. bulldoze 'em into a ditch
7. repeat (you can never be too careful here)
And there's your 12 step program!
Down With Slashdot BETA!!! I've been around the corner and seen the oliphant; you can only abuse me from your perspecti
I would encourage everyone to also look at the comment on the article from someone who is actually a graphics programmer. This guy has some really whacked ideas in his head about how GPUs and drivers actually operate. GPUs and drivers haven't rasterized triangles into scanlines in nearly a decade at this point - it's far more efficient now to simply throw the parallelism at it that they already have, and do a massively parallel point-in-polygon test on the triangle's screenspace bounding box.
This guy is obviously not a rendering engineer, and he is obviously not a GPU programmer. I guarantee you this guy's "brilliant ideas" have been thought of many times over by people at AMD and NVidia whose entire line of work is renderers and GPUs, and I would take anything he has to say on the topic with several truckloads of salt.
Comedy captcha: "Critics"
The guy blabbers hedonistically about GPUs and engines like he invented them in its (not so distant) infancy.
It's a Reader's Digest of the obvious and the trivial.
Another wannabee beardy infant with really nothing to say.
Not worth publishing on ./; maybe he's friend to someone in the staff.
If so, fire them both, as literally as possible.
R
Web browsers are quickly becoming bloated and vunerable, not only that, how long will it be before we see browser side DRM creep onto the scene? And if you choose to use a different browser, or even create your own, whats to stop the content provider from only allowing access from specific browsers?
If you make a distinction, you need to explain the difference. Where does a website end and an application begin? Slashdot and other web boards are essentially web-based workalikes of an NNTP user agent, and that's certainly an application. I had assumed that the line was that one reads a "website" but posts using an "application". If elsewhere, where do you draw the line?