Microsoft Buys Github for $7.5 Billion

Not about OpenMW? Just about Morrowind in general? Have some random babble? Kindly direct it here.
Locked
Blue
Posts: 14
Joined: 07 Jun 2018, 00:26

Re: Microsoft Buys Github for $7.5 Billion

Post by Blue »

The entire build environment is incredible hostile to Windows NT based computing systems. More than that, this board disallows the use of outlook as a service provider for registration. Accordingly I am not surprised that many people here see Microsoft's acquisition of github as hostile takeover. I personally started make a version of OpenMW optimized for Windows, utilizing DirectX capabilities. First thing I did is removing Boost for File access operations replacing it with native WinAPI functions. Next thing to do is removing OpenAudio and replace it with DirectSound. Eventually, I want to get rid of any non Windows dependencies (except maybe OSG, as porting the rendering engine to DirectX graphics would be quite extensive work). I know the family of Windows NT operating systems fairly well and OpenMW doesn't utilize its abilities right now.
LoneWolf
Posts: 138
Joined: 26 Sep 2017, 19:13

Re: Microsoft Buys Github for $7.5 Billion

Post by LoneWolf »

Blue, DirextX DirectSound , WinAPI etc don't work on linux, OSX or virtually anything not created by Microsoft.

I've heard good things about MSYS2 , maybe using that to build on windows would be easier for developers ?
http://www.msys2.org/
MSYS2 is a software distro and building platform for Windows

At its core is an independent rewrite of MSYS, based on modern Cygwin (POSIX compatibility layer) and MinGW-w64 with the aim of better interoperability with native Windows software.
Disclaimer : As a longtime arch linux user I may be biased in favor of projects that use AL pacman for package management.
unelsson
Posts: 227
Joined: 17 Mar 2018, 14:57

Re: Microsoft Buys Github for $7.5 Billion

Post by unelsson »

Quite the news! Not much to add... It's interesting to observe how there are differing points of views here! I can understand the pro-Microsoft arguments like stability, longevity and "all companies are after money", but then, Microsoft has quite the reputation for non-friendliness towards open source too. This surely raises some doubts.

To partially debunk a comment that github would attract new devs better, compared to gitlab, personally, as a new dev, doesn't really matter which system is used. Whatever is used can be learned, and there are people here who know better which system is best for the project. Ethics and politcs do matter though, and are part of the decision, but that's a whole lot more complex issue.
Blue
Posts: 14
Joined: 07 Jun 2018, 00:26

Re: Microsoft Buys Github for $7.5 Billion

Post by Blue »

Blue, DirextX DirectSound , WinAPI etc don't work on linux, OSX or virtually anything not created by Microsoft.
I am aware, but I think Windows needs some serious attention. It has the largest user base and many developers in different fields, from designing lowest level digital circuits design for processors to high level frameworks like .NET are on Windows. I originally wanted to bring in deep learning combat NPC's with CUDA into OpenMW which did work out on v0.4.1.0, I couldn't make the jump to v0.4.2.0 due to compilation errors with Visual Studio neither did I manage to setup MSYS2 to compile v0.4.2.0 correctly. I normally use Clang, LCC, MinGW and for complex projects Visual Studio and didn't really want to get into another toolchain. So I left the OpenMW for a while. Well, compiling v0.4.4.0 with doesn't seem to be trivial with Visual Studio (let away if I integrate my CUDA code). Anyways, now I will make a Windows specific version of OpenMW. I compiled a list of things to eliminate from the source and replace with native Windows functions and also expand the AI framework with CUDA once the dependency hell is gone. Edit: Oh and yes, I will definitely upload to github :-).
Chris
Posts: 1625
Joined: 04 Sep 2011, 08:33

Re: Microsoft Buys Github for $7.5 Billion

Post by Chris »

Blue wrote: 07 Jun 2018, 00:34 Next thing to do is removing OpenAudio and replace it with DirectSound.
Be aware that since Windows Vista, DirectSound is emulated in software (even if you have a hardware card, it's processed in software and MMDevAPI/WASAPI is used for output). I believe Microsoft's preferred API of the day for game audio is XAudio2, though it too is still mixed in software using MMDevAPI/WASAPI for the actual output. The majority of game audio APIs available these days are on equal footing. Incidentally, if you have a Creative sound card, their OpenAL driver allows access to hardware accelerated audio since it can talk directly with their cards.

Similarly, there's little difference between OpenGL and Direct3D. In both cases, the commands are being sent to the graphics card which doesn't care what API they were issued by.

Also, I'd suggest using OpenCL instead of CUDA. CUDA is proprietary to nVidia and so may not be optimal for non-nVidia devices, whereas OpenCL is a collaborative standard by the major graphics card vendors (including nVidia).
User avatar
psi29a
Posts: 5356
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: Microsoft Buys Github for $7.5 Billion

Post by psi29a »

I find it interesting that there is a perception that OpenMW is somehow anti (or hostile) Windows, nothing could be further from the truth considering the amount of time and effort put into having windows builds, including my push for having AppVeyor support and Ace's nightlies. Anyone that perpetuates this does Ace and all of us a disservice.

Correct me if I'm wrong, but if people wanted a better Windows development experience then why don't they come forward to do so? Why should Linux and MacOS centric developers be bothered to work on something they care very little about? OpenMW is open-source and people are allowed to work on what they want when they want, no-one can really dictate who does what.

The real problem is that people like to blame other people or groups for shortcomings they see in a project. In this case, if you have a shitty time trying to develop OpenMW on windows then maybe you should help contributing to making it better. No one is stopping you and everyone will be thankful. Fix it for yourself and for everyone.

Blaming other people isn't going to solve anything.
raven
Posts: 66
Joined: 26 May 2016, 09:54

Re: Microsoft Buys Github for $7.5 Billion

Post by raven »

Blue wrote: 07 Jun 2018, 00:34 The entire build environment is incredible hostile to Windows NT based computing systems. More than that, this board disallows the use of outlook as a service provider for registration. Accordingly I am not surprised that many people here see Microsoft's acquisition of github as hostile takeover. I personally started make a version of OpenMW optimized for Windows, utilizing DirectX capabilities. First thing I did is removing Boost for File access operations replacing it with native WinAPI functions. Next thing to do is removing OpenAudio and replace it with DirectSound. Eventually, I want to get rid of any non Windows dependencies (except maybe OSG, as porting the rendering engine to DirectX graphics would be quite extensive work). I know the family of Windows NT operating systems fairly well and OpenMW doesn't utilize its abilities right now.
There is nothing hostile about the build environment. You are just blaming openmw for your own inexperience with cross-platform projects. But yeah, go ahead, show us your awesome windows haxor skillz.
User avatar
lysol
Posts: 1513
Joined: 26 Mar 2013, 01:48
Location: Sweden

Re: Microsoft Buys Github for $7.5 Billion

Post by lysol »

psi29a wrote: 07 Jun 2018, 07:04 Correct me if I'm wrong, but if people wanted a better Windows development experience then why don't they come forward to do so? Why should Linux and MacOS centric developers be bothered to work on something they care very little about? OpenMW is open-source and people are allowed to work on what they want when they want, no-one can really dictate who does what.

The real problem is that people like to blame other people or groups for shortcomings they see in a project. In this case, if you have a shitty time trying to develop OpenMW on windows then maybe you should help contributing to making it better. No one is stopping you and everyone will be thankful. Fix it for yourself and for everyone.
This.

We have one (1) major Windows developer nowadays, which is AnyOldName3. Before he came around, we had none, at least what I'm aware of. Why expect Linux and Mac guys to just fix stuff for you?
Blue
Posts: 14
Joined: 07 Jun 2018, 00:26

Re: Microsoft Buys Github for $7.5 Billion

Post by Blue »

@Chris
Be aware that since Windows Vista, DirectSound is emulated in software (even if you have a hardware card, it's
processed in software and MMDevAPI/WASAPI is used for output). I believe Microsoft's preferred API of the day for game
audio is XAudio2, though it too is still mixed in software using MMDevAPI/WASAPI for the actual output. The majority of
game audio APIs available these days are on equal footing. Incidentally, if you have a Creative sound card, their
OpenAL driver allows access to hardware accelerated audio since it can talk directly with their cards.
Last time I did something with audio DirectSound was the default Interface, but that was approximately 6 years ago. If there is an updated
sound API, which is available by default on Win, I will utilize its abilities.
Similarly, there's little difference between OpenGL and Direct3D. In both cases, the commands are being sent to the
graphics card which doesn't care what API they were issued by.
Right now, I am not intending on replacing the rendering engine, that's too much of a time effort.
I can spare 1-2 hours at evening removing libraries like OpenAL, Qt, Boost over time. But porting rom OSG to DX12,
not going to happen any time soon.
If I would attempt it, I probably wouldn't use < DX12 versions. As a low level API, it is quite different from OpenGL and a lot
closer to Vulkan.
Also, I'd suggest using OpenCL instead of CUDA. CUDA is proprietary to nVidia and so may not be optimal for non-nVidia
devices, whereas OpenCL is a collaborative standard by the major graphics card vendors (including nVidia).
I tried OpenCL once, compared the wall time performance with CUDA with 4 different methods: Using Windows Performance Counter,
C++ chrono, C clock() and measuring system time differences. After doing some statistical clean up, CUDA did perform around 23%
(could have been 22% or 24%, not sure, was a year ago) better with my code. I am aware that it only works on NV cards but this can be a simple
conditional compile feature.

@psi29
Correct me if I'm wrong, but if people wanted a better Windows development experience then why don't they come forward to do
so? Why should Linux and MacOS centric developers be bothered to work on something they care very little about?
I am coming forward to make things better by choosing to use the native API available on Windows. This is a great project
with impressive results thus far, but I firmly believe that it can do better on Windows.

@raven
There is nothing hostile about the build environment. You are just blaming openmw for your own inexperience with cross-platform
projects. But yeah, go ahead, show us your awesome windows haxor skillz.
I am inexperienced in developing across multiple operating systems (Aside from using scripting languages like Python which
run os independent). Still, I have seen quite some cross platform projects with significantly friendlier windows build environment.
I am here to make the Windows experience greater.
User avatar
psi29a
Posts: 5356
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: Microsoft Buys Github for $7.5 Billion

Post by psi29a »

Blue wrote: 07 Jun 2018, 10:22I am coming forward to make things better by choosing to use the native API available on Windows. This is a great project with impressive results thus far, but I firmly believe that it can do better on Windows.
You do realize that in doing this, you'll make OpenMW not work on non Windows systems which is kinda the reason why we use platform agnostic libraries to do the job right?

Why DirectX12 and not just do Vulkan? Or just wait around a bit and wait for OSG's Vulkan implementation?

I don't quite understand how making OpenMW run only on WIndows somehow makes OpenMW "do better on Windows"?

What are wrong the libraries being used now?

As for de-Boosting, we're already under way there... C++17 means that we can finally use std::filesystem instead of boost::filesystem. How still using native Windows API calls improve portability of OpenMW?
Locked