6 ms·
Most users spend >80% of their time in the browser. It's probably that simple. If you have a thing and you need users, are you really going to deliver it as a
by sillysaurus3 9y ago
Most users spend >80% of their time in the browser.
It's probably that simple.
If you have a thing and you need users, are you really going to deliver it as a Qt app? Unless you're bitcoin, it's hard to think of a case. I'd say "or a game," but many are webapps. And at this point some of the hollywood-grade games might figure out a way to be coming to browsers soon. Unreal did it.
- solarkraft 9y agoIt is that simple. And a bummer because I think HTML is a pain for things that aren't documents. And JS UI frameworks feel like hacks too. Unity already supports the web, but I don't think that'll matter for AAA games. People who buy computers specifically to play them will care about the slight performance hit and not want to keep the games they bought and spend a lot of time with as bookmarks to web pages. Non-performance intensive tools, even large ones, have already moved to the web. This will likely continue because there is not other platform delivering its level of portability and ease of delivery. It's a bummer because the web just kind of sucks. It was made for documents, damn it. Something like a java browser could've succeeded as jars are already very portable. This could've worked pretty well for small and large tools alike. But since the HTML stack is already widely adopted I guess we'll have to make the pain go away somehow. At least webassembly solves the problem computationally intensive tasks. The UI component is still quite a mess, but that's getting better too. I just find it annoying that they have to call everything Web-(what it traditionally was). It's basically the new reality, being used on non-web platforms as well as on the web.
- ehnto 9y agoUnity also has the slight delivery hitch of needing the browser plugin to run games in the browser. I tinker with Unity and I still didn't install the browser plugin. That is the same hitch the JVM had. For a non-technical user, that extra step feels risky and unintuitive. "Why doesn't it just work?" feels a bit unfair when you know what's going on, but to a normal user I think it's a fair question. We are the professionals after all, why can't we make it "just work"?
- qwerty456127 9y agoAren't browser plugins considered a deprecated technology already? The latest versions of the major browsers won't even let you run Java applets AFAIK, everything is forced to go entirely web-native (compile to HTML+CSS+JavaScript/wasm) and I'm not sure whether that's good or bad so far...
- sillysaurus3 9y agoYes. Please, someone, make gamedev in the browser a reality. There are a thousand hitches: Why can't I install a 9GB game on the browser? We need all that space for textures. "But what if –" Oh come on, we can figure it out. There must be some way. Also UDP. Yeah, we have WebRTC, but look up Beej's guide to network programming. That's the threshold of intelligence required. Currently to get WebRTC working with UDP for gamedev purposes, it's just... Not easy. Maybe not even possible. I don't know. We need UDP and we need an install manager. And a few other things. Start thinking about how to extend the browser so we can deliver world-class experiences to gamers.
- vvanders 9y agoIt's been proposed a few times[1], the WebRTC crowd just shows up and says that WebRTC is "good enough" and the cycle continues. Never mind that the dependency graph for WebRTC is way too large and that WebRTC is just too complicated for GameDev needs. [1] https://github.com/networkprotocol/netcode.io https://github.com/networkprotocol/netcode.io
- geocar 9y agoI’ve done webrtc “servers” (in C, not some nodejs bindings for the chromium implementation) and webrtc P2P. It really is “good enough” for a lot of things. But not game developers, who are used to dealing with a very forgiving environment that will let them do stupid things quickly. I have watched game developers in earnest busy wait a network thread “for speed reasons” but also derive approximate linear solutions to nonlinear problems using overflow, wraparound, and so on. Some of the dumbest guys I’ve ever met doing some of the cleverest things, or the smartest guys showing off just how dumb sleep deprivation makes you. I’ve never been quite sure. Games are beautiful. Game developers are beautiful. Game code almost never is.[1] Joining a new game dev team you think this is going to be it, finally some clean code the way the masters do it, but then it isn’t. That is to say: Games aren’t how to do software development, but proof of how far you can get by doing software development wrong. I have thought about packaging my webrtc “server” as a library and selling it to game dev shops, but I don’t think the professional browser market is there yet. [1]: I’m aware of a small number of examples to the contrary, but there are many more counter examples.
- qwerty456127 9y ago> HTML is a pain for things that aren't documents. Indeed it is but there seem to be no relevant alternative. The only thing that is better [for apps] is XAML (WPF) but it is Windows-only.
- javajosh 9y agoSVG + JS is really quite good. You will need a few abstractions to work comfortably with the SVG DOM, but you can easily write these as you need them.
- qwerty456127 9y agoSounds reasonable. Why don't people use it then? Are there any frameworks already available so one won't have to invent a GUI toolkit from scratch?
- Someone 9y agoOne of the “few abstractions to work comfortably with the SVG DOM” that “you can easily write […] as you need them” would be a layout engine. You need one to adjust your UI to the user’s screen size. Another, I think, is that, to add scroll bars to a view, you have to write SVG scroll bars, make them respond to the mouse scroll wheel, be accessible, etc. Even if we will get them, eventually, it won’t be “easily”. I think it is easier to use HTML for layout, and SVG (or canvas) for those views that need it. You can do that now.
- javajosh 9y ago>layout engine Absolute positioning gets a bad rap! And yes, if you want widgets then you have a lot of work ahead of you. But it's a lot of fun to just work with the primitives - don't believe them when they tell you always need a GUI toolkit!
- fastball 9y agoWhy not use something like Pug[0], which compiles to HTML? [0] - https://pugjs.org/api/getting-started.html https://pugjs.org/api/getting-started.html
- ehnto 9y agoI agree, they are in the browser and they searched for the software in the browser. Why not deliver it in the browser too, if there is no good reason not to.
- gnur 9y agoIs this the cause or the effect?
- inDigiNeous 9y agoIf you need performance, and portability, and something that can be more easily maintained, for example QT is the only way. Power tools that are graphics heavy, or music applications, or anything that requires heavy multimedia lifting, you're not gonna do that currently in the browser. Maybe this will change in the upcoming years though also, I have a feeling the client/server bridge will be getting closer and closer as we reach more performant ways of loading code from the servers but executing natively on the client/computer/handheld/phone whatever. Also, WebGL compatibility is still far away from really doing any production apps (I mean, to reach a state where you can guarantee your app to work on at least most computers people have). Many platforms/GPUs/driver combinations just point out blank refuse to work, or the browser has blacklisted problematic combinations, as these can in reality cause crashing of the whole OS and computer, this has happened to me many times while developing WebGL applications.
- pjmlp 9y agoMost of the time someone puts an WebGL demo here, it fails to work consistently across all my mobile devices. Some of which don't have any issue running OpenGL ES 3.x games.
- inDigiNeous 9y agoYeah I'm actually afraid to run some of the more complex WebGL on my laptop, as I've had occurences of them hard locking my computer, which should not happen.
- CyberDildonics 9y ago> I'd say "or a game," but many are webapps. Not yet, the though I think this will be true eventually