I believe that the issue isn't that they don't want to share, but that the code is a pile of patchwork that would need to be re-engineered before presenting it to anyone outside the company.
Unity has better marketing. The captured larger audience and thus got more content on their asset market and it has became default engine for beginners (C# seems much easier to learn than C++).
Unity is like Visual Basic of gamedev.