![]() |
|
CGSL vs GLSL - Printable Version +- Dolphin, the GameCube and Wii emulator - Forums (https://forums.dolphin-emu.org) +-- Forum: Offtopic (https://forums.dolphin-emu.org/Forum-offtopic) +--- Forum: Delfino Plaza (https://forums.dolphin-emu.org/Forum-delfino-plaza) +--- Thread: CGSL vs GLSL (/Thread-cgsl-vs-glsl) |
CGSL vs GLSL - Squall Leonhart - 01-29-2011 Split from http://forums.dolphin-emu.org/showthread.php?tid=14737&pid=136153#pid136153 coz the op doesn't want valid discussion in his topic. (01-28-2011, 11:00 PM)Winter Knight Wrote: The advantages of open source over closed source is not an appropriate topic for this thread. I started this thread in the Code Patches forum for the purpose of sharing my progress on a GLSL video plugin for Dolphin, and for soliciting help. Since open source vs closed source and GLSL vs CG isn't even really specific to dolphin, I believe a more appropriate forum would be Delphino Plaza. Your reasoning for GLSL lacks basis, for starters CG is an extensible shading language that is not proprietarily closed at all, the basic language comes as is and you can do what you like to extend its functionality, and implement as you see fit. Quote:Is Cg Proprietary? It is not locked to nvidia hardware, and is closer to HLSL than it is GLSL, making it more natural for native Dx developers to work with (to a point.) Quote:Does Cg replace OpenGL or Direct3D? Further, CG is not locked to x86, it is implemented on ARM devices and Cell BE as well. RE: CGSL vs GLSL - Winter Knight - 02-28-2011 Hi Squall. You're right, this is a valid discussion, but it's not a valid "Code Patches" discussion. Also, starting a discussion with words like "GLSL is crap ATI fed to ARB" isn't really something you should say if you want to have a mature, adult conversation about the merits of one technology over another. You're right that somebody could in theory write an open source Cg library, but Nvidia released their first Cg binaries about 10 years ago, and no one has written an open source version yet. That means that sticking with Cg makes Dolphin dependent on proprietary code from Nvidia. If anybody were to write an open source Cg library, it would always be playing catch up with Nvidia, because Nvidia controls the specs as well. Unlike OpenGL, 1 company controls the specs for Cg. Nvidia has a vested interest in a subset of video cards, and they will always be the first to release binaries for any given version of Cg. Cg only works on the platforms that Nvidia has chosen to release binaries for. This could be partially alleviated with an open source version of Cg, but for some of the above reasons, that is not likely to happen in the future. Platforms such as FreeBSD are SOL as long as Dolphin depends on Cg. Nvidia provides binaries for Linux, but what if they decide to drop Linux support in the future? Or what if they decide that running at 50% efficiency on Linux is good enough? Cg is subject to the whims of Nvidia. Because Dolphin is GPLv2 with no proprietary linking exception, linking against the proprietary Cg library makes Dolphin undistributable (under some interpretations, at least). We've gotten away with distributing it so far, and no one is likely to complain, but other open source projects won't touch it with a 10 foot pole. RE: CGSL vs GLSL - Squall Leonhart - 02-28-2011 Well, the other problem is that the functionality that dolphin requires, brings out GLSL's shortcomings. RE: CGSL vs GLSL - glennric - 07-30-2011 Squall: You are actually wrong about NVidia Cg not being proprietary. The language itself is published for free usage, but the library that is required to use that language is closed source. As such it violates the Dolphin's own license to even use it. Linking against the NVidia Cg toolkit libraries makes Dolphin undistributable. Thus the only way that dolphin will ever get accepted into repositories for linux distributions is by switching to GLSL. To compound matters using DirectX violates Dolphin's own license. There are ways around all of the issues, yes even the speed issues that Ector and others have spoken of, with switching to GLSL. There are many other advantages as well for the future of the OpenGL backend in Dolphin. It really just comes down to someone putting the work into properly making the switch happen. Seriously, who is feeding everyone this crap that Nvidia Cg is that great. I know some of it comes from Ector, and no offense or disrespect intended Ector, but I am rather certain that you are wrong. RE: CGSL vs GLSL - lamedude - 07-30-2011 (07-30-2011, 12:02 PM)glennric Wrote: To compound matters using DirectX violates Dolphin's own license.I think DirectX is a system library. RE: CGSL vs GLSL - glennric - 07-30-2011 (07-30-2011, 06:00 PM)lamedude Wrote: I think DirectX is a system library. That depends. DirectX is in a bit of a gray area. It is not really clear cut as to if it is a system library or an add on library. That may vary with the version of Windows in use also. In any case the real point is that the OpenGL backend of Dolphin could perform just as well as the DirectX backends. The only reason that it does not is because so much focus has been put on the damn DirectX backends. When I get the time I will go to work on the OpenGL backend and get it up to speed. To much deprecated code depending on slow per vertex operations is a large part of the problem. |