3 ms·
If compatibility isn't an issue (I have yet to have any compatibility problems with my Steam Deck), I don't see why they shouldn't move to SteamOS. However, I f
by novagameco 3y ago
If compatibility isn't an issue (I have yet to have any compatibility problems with my Steam Deck), I don't see why they shouldn't move to SteamOS. However, I fear a future in which people develop games on Linux targeted directly at SteamOS: I find C++ development to be far better with First party Microsoft tools (Visual Studio, MSVC, DirectX, DirectXTK) than on Linux. I vastly prefer Microsoft style APIs to Linux style APIs (DirectX over OpenGL especially, though Vulkan is ok), and I have yet to find a C++ development environment that I like as much as Visual Studio. With solution files, vcpkg, and project files native to Visual Studio, managing projects and dependencies has become a breeze in Windows. Comparably, few IDEs on Linux provide comparable debugging tools or good UI (CLion being the only one I can think of, though I personally hate most of Jetbrains' UI) and cmake is such a poorly designed tool and syntax to me, I would hate to have to deal with it directly than just having vcpkg manage the builds and dependencies for me (though I think vcpkg is compatible with Linux). I don't mind targeting Linux as a platform via Proton, but I would really hate to have to write Linux specific bindings for a game
- WhereIsTheTruth 3y agoUnity started as a game engine on macOS with monodevelop as the official IDE I think you overestimate the number of game developers who depend on Microsoft's tools, game engine devs who target Xbox/PS5/Switch, sure, vendor tools require windows, but for 1 engine dev, you find 100 game devs Besides, cross compilation is a solved issue nowadays, all it takes to target Linux, Windows, mobiles or console is a checkbox in Unity/Unreal/Godot https://steamdb.info/tech/ https://steamdb.info/tech/ This data speaks for itself DirectX 12 wasn't a huge success, except for Xbox; wich sells 3x less than both PS5 / Switch [1], you don't see it anywhere else Vulkan gets on on both Windows/Linux, but also Switch and Android, so if you are a small indie studio who work on your own engine, Vulkan makes a lot more sense .. and even cloud gaming ;) https://www.phoronix.com/news/Amazon-Linux-Graphics-Jobs https://www.phoronix.com/news/Amazon-Linux-Graphics-Jobs .. even for Ubisoft, even for their Windows release https://www.ubisoft.com/en-gb/game/rainbow-six/siege/news-updates/6VFn74oMO2nVQGZxvFhBb5 https://www.ubisoft.com/en-gb/game/rainbow-six/siege/news-up... [1] - https://www.vgchartz.com/ https://www.vgchartz.com/
- novagameco 3y agoI'm not talking about the industry in general, I'm talking about my personal preferences. I like to use C++ with Visual Studio and DirectX. I would hate to find myself in a position where I had to develop everything in Linux for compatibility reasons. I hate the fact that some web dev tools only run on Linux or Mac right now and I have to use WSL2 (bun), I would really hate to see game dev go the same direction. Personally, I like Windows as a platform and I don't go out of my way to target Linux or Mac
- pjmlp 3y ago> Unity started as a game engine on macOS with monodevelop as the official IDE It certainly did not. Unity only added Mono to their stack when they went cross platform, during their Mac OS X days, they only supported Boo and JavaScript for scripting.
- ffgjgf1 3y agoBoo ran on Mono though. Their flavor of JavaScript, UnityScript wasn’t even remotely similar to standard JS besides syntax, it also ran on Mono. I vaguely remember them trying Python initially but IIRC Boo and “JavaScript” were always based on Mono.
- pjmlp 3y agoSo I went into some archelogy, turns out we were both kind of right. Me less so. Unity 1.0 did not have .NET in the picture in 2005, however they went cross-platform already in Unity 2.0 around 2008, so Mono was anyway part of the story early on.
- ShamelessC 3y ago> but I would really hate to have to write Linux specific bindings for a game What are you upset about? You’re worried people will target windows to target steam? Or worried people will…target Linux?
- novagameco 3y agoI'm worried that SteamOS would make Linux to default target and game development platform and that a lot of tooling would shift in the direction of Unix-likes and the Windows + DirectX ecosystem would wither as a result. I want windows to continue to be a good platform for game development and not have to move over to an ecosystem I find really grating
- ShamelessC 3y agoThat’s a bold strategy. We’ll see if it works out for you.
- rfl890 3y agoIt's not like everyone's going to switch to Linux immediately. I think Windows will stay on desktop for a while. On a side note, what about Windows APIs do you like? I always thought they were a disorganized mess.
- novagameco 3y agoWithin DirectX I like the usage of types compared to OpenGL, where everything is GLuint. I like the explicit management of state and the use of views on resources to bind the same memory to different contexts. I vastly prefer HLSL to GLSL also. I know there's vulkan, but my experience was going to DirectX 11 from OpenGL 3+ Within Win32, it's similar though there's an overuse of HANDLEs. I like initializing things as structs and I like that ComPtrs provide built in memory management. A lot of posix APIs feel underpowered (semantically designed around reading files from tapes), and Microsoft often provides a safe _s version of most of them (Yes, some of which are part of the C standard library and some of which are not). There are various Win32 APIs I like (IOCP, for example), and it's all tied together with MSVC and the static analyzers available to the compiler (SAL). I don't think GCC has anything even close to SAL. I also haven't found a C++ IDE I like nearly as much as Visual Studio. I used to hate jetbrains UI but I actually tried IntelliJ recently and they redesigned the entire thing to be quite nice now, so maybe clion is nice (but I'm not willing to pay for it). I also VASTLY prefer powershell to bash