Directx application commercial distribution [closed] - opengl

Closed. This question is not about programming or software development. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 28 days ago.
Improve this question
Can I distribute any Directx based application commercially? Do I need to get any permission from Microsoft? Actually I'm developing a software such like "Rendering Engine". But I don't know much about the EULA.
I also have the same issue with OPENGL and Metal.
Note: I'm not using Visual Studio for the development.

Can I distribute any Directx based application commercially?
Yes.
Do I need to get any permission from Microsoft?
No.
I also have the same issue with OpenGL and Metal.
It's not an issue at all. DirectX, OpenGL, Metal, and so on are merely APIs. For one it has been legally ruled out that the use of publicly documented APIs can be subjected to licensing. A particular implementation of an API may have licensing strings atteched to it. But just the interface itself, not so much.
As of writing this there's a lawsuit between Oracle and Google if independently reimplementing an API without permission is a copyright violation (in this case the Java runtime implemented in Android vs. the original Java runtime of the Sun/Oracle). But a lot of people agree, that it's probably not copyright-able.
As for APIs like DirectX, OpenGL, Metal and so on: There is a very stong interest for the creators of these APIs for them to be actually used. So there are no roalities attached to them.

Related

How to create an OpenVPN client in C++? (not a tun/tap manager, a true client) [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 3 years ago.
Improve this question
The way OpenVPN3 library works is by creating a TUN/TAP interface on the host system. On Android, for example, it's not possible to create two different VPN connections at the same time, but I really need to be able to use 2 or more connections at the same time on my Android app (and possibly iOS and other systems like macOS, Linux, Fuchsia).
I'm reading the OpenVPN3 source code. Of course it can be modified to be used as a library in C++ to open direct connections without calling the system but I'm afraid I end up with something insecure. It's very hard to write secure crypto code.
I cannot use other VPN protocols, it must be OpenVPN.
Is there another option? Since OpenVPN is based on OpenSSL, isn't it just a matter of connecting through OpenSSL and then sending packets to the server? (of course doing the proper interpretation of the .ovpn client file)
Is there another way of doing it that I'm missing?
UPDATE:
I opened an issue and the dev said that I can create a TunBuilder interface. Does someone know where to start? There are millions of classes there
There is another project on github, dubbed as OpenVPN which doesn't appear to be the one you've cited. This is all done in C++, using OpenSSL. This build looks like it was benched on a fairly recent of Microsoft Visual Studio (2017) -- so at least all the branches aren't stale! :) I think this project may be closer to what you are looking for.

MSHTML vs EdgeHTML [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
I have a Windows Desktop application that is written in C++/MFC/COM technologies. This application relies heavily on CHTMLEditView (MSHTML Editing platform) and extensively uses IHTMLxxx COM interfaces.
It seems to be working fine on Windows 10 right now, but I want to know if MS will switch to EdgeHTML anytime soon. If that happens, will IHTMLxxx interfaces stop working with EdgeHTML?
I am not an official MS representative. But I may have some helpful insight.
Edge is a Universal Window App. As far as I know, this makes it generally inaccessible from COM, or even managed code (.NET). Consequently, you won't be able to use COM interfaces to interact with the underlying rendering engine (might be WebKit? I'm not sure).
On the other hand, IE uses the Trident rendering engine, which is completely built with COM. Trident is an integral part of the OS, so I really doubt it will go away anytime soon. It's used for so many UI parts (including Windows Explorer) that I don't think Microsoft will have a compelling reason to obsolete it, at least not for a long, long time.
And, there isn't really a good interoperability story at the level of COM for working with Edge. Universal Apps interoperate via contracts, and to some degree, URL protocol handlers, command line arguments, and other "safer" ways of isolating the app. I suspect that it won't be long before actual containerization technology is used for UWAs.
So, no, I wouldn't hold my breath on IHtmlXXX being implemented using EdgeHTML in any timeframe that could be useful for you. Stick with Trident. While Microsoft will probably make sure Edge has the very, very latest in web standards compliance, I don't think they will let IE languish so far behind that you find it unusable.

Chromium OpenGL dead project? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 9 years ago.
Improve this question
I've recently started exploring the guts of VirtualBox's Guest Extensions on my Ubuntu Guest. Mostly from curiosity. Partly due to "OpenGL Warning: ... not found in mesa table" warnings. I noticed they are using Chromium OpenGL implementation. I have a two part question.
1.How do I get rid of those warnings? Are they indications of a larger problem? I'm noticing repaint issues which lead me down this path.
2.Am I missing something are is this a 12 year old project last touched 6 years ago!? Is it being actively developed some where else? Will it support OpenGL 3?
Online references would be appreciated as I'm having a hard time finding anything other than these below.
http://sourceforge.net/p/chromium/discussion/stats
http://chromium.sourceforge.net/doc/index.html
The chromium project is basically dead since 2008 or so. There is no support for GL3.x, and it is not planned. Actually, implementing the main purpose of chromium (application-transparent distributed rendering by manipulating the GL command stream) is incredibly hard to outright impossible with the programmable pipeline and modern GL features.
I'm not really familiar with virtualbox, but I am aware that they just used parts of the chromium project to implement a hw-accelerated guest GL simply by forwarding the GL command stream to the host. Such a task is much easier to adapt to modern GL, as no real stream manipulation is to be done. But I'm not aware of how far they have come on that path. So consider this only half of an answer to your question.

Qt pricing (most up to date) [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 11 years ago.
Improve this question
I am thinking about using QT for rich GUI commercial multiplatform programs. A would want to know how much the commercial license would cost.
I found just old prices (2008):
https://stackoverflow.com/questions/352896/qt-commercial-licenses
I am interested for the actual price (even earlier to see how it rises) for:
win+osx
The license is one time or I have to buy license yearly?
Is there anyone who uses the LGPL version commercially?
(I know that it can be done but I might need to make changes to QT without releasing the code for it: https://stackoverflow.com/questions/2945612/qt-lgpl-licencing-for-a-free-application-with-closed-source)
Actually this price policy (We don't tell you the price! We will call you!) is really strange to me, should I rather stay away form QT? I just tried it (15-20 hours) so going with other technology (.Net and just for Windows by dropping multiplatform support) is still an option
I'm no lawyer, so I'm not an expert in this area. I just wanted to point out that you can still develop closed-source software using an LGPL license. The catch is that you can't edit the Qt libraries without releasing the changes under LGPL.
Related SO thread: https://stackoverflow.com/questions/94346/can-i-legally-incorporate-gpl-lgpl-open-sourced-software-in-a-proprietary-cl. Read the top answer to that question, there is a much better explanation there.
Unfortunately I can't help you with the pricing, but if you're not altering Qt itself then you may not need to pay for it at all.
I have used Qt LGPL in commercial closed source applications. Besides the minor inconvenience of dynamic linking, I see no reason not to.
Your concern in bullet 3:
I know that it can be done but I might need to make changes to QT
without releasing the code for it
This is a very strange requirement. I don't know why you would want to hack on the Qt source, and then not release your changes to it. If you're comparing it to .Net, consider you wouldn't be able to make changes to that framework at all.

OpenGL on Android using C++ only [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 4 years ago.
Improve this question
I'm developing an Android application for Android 2.1.
I'm trying to code OpenGL's stuff with C++ only.
Do you know a tutorial or an article showing an example about how to do that?
UPDATE:
Sorry, I've forget to say that I will use a Java home application to launch main activity.
I'm trying to say if I have to code on Java glSurfaceView or this statement must be on C++ code.
Ok, better explained: If I have a complete openGl on C++, may I have to modify C++ code?
Thanks.
In the Android NDK there is a san-angeles demo under the samples directory which shows off using OpenGL ES 1.x in C code and a Java wrapper. As for changes to already existing C++ code be aware that there is no official STL implementation for the NDK r4 (although I believe there are some ports available) [edit: as of NDK r5 there is a STLport based implementation of STL]. And I'm guessing that you'll need to mimic what the demo does for the GLSurfaceView since outside events (touch, keyboard, etc.) along with the Android activity lifecycle must be to be handled by the Java side. If you are looking for a OpenGL ES 2.0 example, there is a basic one in the samples directory of the Android NDK as well.
According to http://developer.android.com/sdk/ndk you can't do it purely in C++. As you suggest in your update, you'll need to do the application with the standard (Java) SDK, but can create C++ libraries and call into them. With respect to OpenGL, the article suggests that you have full access to OpenGL ES, either 1.1 or 2.0. ES is not the same as the full OpenGL.
Try Arm Developer Center link.
It has native tutorials on basics of an OpenGL ES application.