7 ms·
The article has a humorous history of graphics APIs that I very much enjoyed. I did the the Vulkan tutorial for kicks one month on Windows (with an nVidia GPU)
by SomeHacker44 3y ago
The article has a humorous history of graphics APIs that I very much enjoyed. I did the the Vulkan tutorial for kicks one month on Windows (with an nVidia GPU) and it was no joke, super fiddly to do things in. I look forward to trying WebGL in anything that isn't JavaScript (some language that compiles to WebASM or transpiles, I guess).
- javajosh 3y agoIt was interesting...except that it omitted SVG entirely. So one should take it with a grain of salt.
- mlatu 3y agohow is svg connected to opengl?
- dist-epoch 3y agoSVG is not considered a graphics API, just like PDF isn't.
- javajosh 3y agoYou mean YOU don't consider SVG a graphics API. But it's right there in the name, dude. If the article is going to bring in Canvas, it should bring in SVG. SVG shares more with opengl than Canvas does.
- dist-epoch 3y ago> SVG shares more with opengl than Canvas does. SVG is declarative. Canvas and OpenGL/Vulkan are imperative.
- javajosh 3y agoThese are all tools programmers use to draw to the screen. In the browser there are now 3 such tools: svg, canvas, and webgpu. svg's primitives are shapes and you program it with js and dom. canvas primitive is a 2D array of pixels, and you program it with js and an api. webgpu's primitive are pipelines (or whatever) and you program it with js and an api. Maybe you're hung up on using the dom instead of an api. But the dom is an api, and it is further specialized by svg. Mutating the screen is exactly equivalent to mutating the dom within SVG. The mental model is that of a persisting scene that you nudge around with changes. This, versus the mental model of canvas where shape persistence is up to you. My understanding of low-level 3d graphics (limited to that of a hobbyist) is that driver commands setup a pipeline and then nudge around a scene graph in a similar fashion to svg. So it is doubly ironic that she would omit it.
- dist-epoch 3y agoYou can create an HTML table with 1 pixel cells, and use the DOM api to change individual cell background colors to make it work like a canvas. Does that mean that HTML tables are a graphics API?
- VikingCoder 3y agoI'm going to give you the same unwarranted snark that you gave the author: "In the browser there are now 3 such tools: svg, canvas, and webgpu." That's wildly incorrect, and anyone should take your comments with a huge grain of salt. There are far more than 3 drawing tools in the browser. Why are you excluding CSS? You can draw with it, as well. https://codepen.io/matheuswf95/pen/wgRMwW https://codepen.io/matheuswf95/pen/wgRMwW Why are you excluding Video HTML elements? It's possible to pipe directly to them from Javascript. Why are you excluding drawing in the DOM? Do you hate ASCII and ANSI art? https://www.crummy.com/software/ansi2html/ https://www.crummy.com/software/ansi2html/ Why are you excluding the JS Console? You can draw to that. https://dev.to/shriji/game-on-console-log-5cbk https://dev.to/shriji/game-on-console-log-5cbk Why are you excluding the HTML Title? Someone made a game that you play entirely in the browser's Title? https://titlerun.xyz/ https://titlerun.xyz/ Why are you excluding GIF? I can't find it, but I saw someone made a remote desktop client that encoded the video as a never-ending GIF stream. Why are you excluding fonts? You can create custom fonts and use them to draw all kinds of crazy things. We draw the line somewhere. I thought the History of Graphics APIs in the article was great. Sorry it disappointed you. I felt your attack on the author's credibility, "[I]t omitted SVG entirely. So one should take it with a grain of salt" was pedantic and rude.
- overgard 3y agoSVG is just a file format though, that I suppose you can manipulate in the DOM. By your standard glTF files would be an "API" also. Have you written D3D/GL/Vulkan/Metal? It's not even remotely similar.
- VikingCoder 3y agoHow many game engines run on top of SVG? How many games target SVG as their graphics pipeline? How many applications, for that matter? The comparison to PDF was better than you probably realize. PDF is Turing complete, and there have been ray-tracers implemented in it.
- javajosh 3y agoOh the comparison to PDF was perfect. PDF and Metal have the same recent ancestry with postscript. What ugly prejudices so many people on this thread seem to have. And how trivial and nonsensical. All I said was she should not have omitted svg in her history of graphics apis since she's writing an article about browser graphics. To deny that svg is a part of that, or that people don't program to it... well, I was going to write "ridiculous" but the xkcd about people who don't know things comes to mind...is it possible you just don't know that so many people make things with SVG? In any event, it seems I've touched a nerve that I didn't want to, and I find it ugly, and this is my free time, so I'm leaving the convo. Peace.
- flohofwoe 3y ago> ...article about browser graphics Despite the name, WebGPU isn't limited to browsers, I think the article sort-of implies that without explicitly pointing it out (until late into the article). Instead WebGPU has a good chance to become the 'missing link' standard cross-platform 3D API that sits above D3D12, Metal and Vulkan and at the same time is relatively straightforward to use for mere mortals.
- pjc50 3y ago> it seems I've touched a nerve that I didn't want to, and I find it ugly Well, yes, but you can see how your original comment may have been read as dismissive of other people's work?
- DonHopkins 3y agoNot only that, his comments are factually incorrect, while glibly dismissing a well written factually correct article as untrustworthy, based on his incorrect assumption that his incorrect facts imply her true facts are false. "So one should take it with a grain of salt." Sheez. How rude.
- pjc50 3y agoIt's already god knows how many words long.
- VikingCoder 3y ago[flagged]