Live data from Hacker News

Porting the Unity Editor to Linux: Stuff I Wish We’d Done Then

natoshabard.com

11–20 of 114 posts

Re: Porting the Unity Editor to Linux: Stuff I Wish We’d Done Then

#11

> it’s the place where case sensitivity problems really show up Who made the decision to have case insensitive file systems? If I had a time machine they would be high on the list of people to visit and give a stern talking to.

I don't think the problem is having case insensitive file systems, the problem is having both on different platforms. A similar problem as with different endians. If everything were case insensitive, it wouldn't cause issues. While as a programmer, I prefer the level of precision case sensitivity provides, I'm hard pressed to make the case that it is better for an average computer user.

... which exact type of case insensitivity would you do? Only for latin letters in ascii? or such letters plus just one accent type? or also less familiar symbols used in other writing systems? Did you know that different languages can contradict one another? [1] Are you also going to normalize unicode representation, like Mac OS X does? (it uses a variant of NFD normalization, which is arguably the wrong one to do but that's life) (I only know this because I've been tripped up by it)

Basically, you can't "just do case insensitive everywhere", that doesn't fix the confusion and inconsistency.

[1] http://www.i18nguy.com/unicode/turkish-i18n.html (see table titled "English vs. Turkish Case Mappings") (this is just the first example I could find with a quick search)

Re: Porting the Unity Editor to Linux: Stuff I Wish We’d Done Then

#12

Gtk does sound like a better choice than raw X11, particularly as Wayland, Mir, and friends continue to grow.

Just curious. Why not go for QT for the whole GUI on all platforms?

Because native GUI on Windows and OSX is better for those users and already exists?

Re: Porting the Unity Editor to Linux: Stuff I Wish We’d Done Then

#13

With .NET Core, is there any reason to not just drop IL2CPP completely? (The whole thing only existed in the first place because they are stuck on a completely outdated Mono version, due to Xamarin changing the license of newer Mono versions trying to extract money from Unity.)

Can we kill off the Mono libel already? Mono changed the license so that it could be used in Unity to begin with . Mono was available under a copyleft license. To everyone. Including Unity. Unity couldn't/wouldn't accept it under those terms, so folks at now-Xamarin said, "We'll offer it to you under a commercial license if you won't take the copyleft offering." That's standard fare. Unity said, "Okay, deal." Mono co…

That seems like a very unfair description of the situation.

Do you know the specific licensing terms that Xamarin offered to Unity? Probably none of us here do. Given that, why would you assume Unity was the unreasonable party, and not Xamarin?

Regarding the copyleft license, while it is an option for everyone in general, it isn't an option for Unity, which needs to ship on platforms that do not allow such licenses (iOS, game consoles). Products like Unity will always need a commercial license as long as such platforms exist.

Re: Porting the Unity Editor to Linux: Stuff I Wish We’d Done Then

#14

With .NET Core, is there any reason to not just drop IL2CPP completely? (The whole thing only existed in the first place because they are stuck on a completely outdated Mono version, due to Xamarin changing the license of newer Mono versions trying to extract money from Unity.)

Can we kill off the Mono libel already? Mono changed the license so that it could be used in Unity to begin with . Mono was available under a copyleft license. To everyone. Including Unity. Unity couldn't/wouldn't accept it under those terms, so folks at now-Xamarin said, "We'll offer it to you under a commercial license if you won't take the copyleft offering." That's standard fare. Unity said, "Okay, deal." Mono co…

Dude, relax?

Re: Porting the Unity Editor to Linux: Stuff I Wish We’d Done Then

#15
post #12

Earlier quoted context omitted.

Just curious. Why not go for QT for the whole GUI on all platforms?

Because native GUI on Windows and OSX is better for those users and already exists?

I'm new to GUI programming and foreign to both Windows and OSX so please forgive my ignorance.

In what way are the native GUIs better? Are they faster/more responsive or do they look better?

Which would be more work over the e.g. 1,2 and 5 year period maintaining three guis or one? (Or is QT not quite cross platform so one ends up maintaining three inferior versions anyway?)

Re: Porting the Unity Editor to Linux: Stuff I Wish We’d Done Then

#16
post #8

> it’s the place where case sensitivity problems really show up Who made the decision to have case insensitive file systems? If I had a time machine they would be high on the list of people to visit and give a stern talking to.

People always bring up the point that it's supposed to be more user-friendly, but all of those concerns are really better addressed in the UI rather than in the filesystem layer.

I guess back then things were just more connected, there probably weren't great "best practices", I have seen how there are still some projects that need evolve to be more modular rather than "one file to do EVERYTHING". The OS is just another software project, isn't it?

Re: Porting the Unity Editor to Linux: Stuff I Wish We’d Done Then

#17
post #12

Earlier quoted context omitted.

Just curious. Why not go for QT for the whole GUI on all platforms?

Because native GUI on Windows and OSX is better for those users and already exists?

I think native UIs are overrated and just cause headaches for developers. E.g. take the most popular UI system: HTML/CSS/JS: users have no problem with the fact that all their favourite websites look different.

IMHO it is a better idea when the application enforces the same UI across platforms (like QT) than the platform expecting the same UI for all programs. On top of that QT does support native look&feel.

Re: Porting the Unity Editor to Linux: Stuff I Wish We’d Done Then

#18
post #12

Earlier quoted context omitted.

Because native GUI on Windows and OSX is better for those users and already exists?

I'm new to GUI programming and foreign to both Windows and OSX so please forgive my ignorance. In what way are the native GUIs better? Are they faster/more responsive or do they look better? Which would be more work over the e.g. 1,2 and 5 year period maintaining three guis or one? (Or is QT not quite cross platform so one ends up maintaining three inferior versions anyway?)

They behave exactly the way you'd expect, because they don't attempt to copy the expected behaviour. They define the expected behaviour.

Re: Porting the Unity Editor to Linux: Stuff I Wish We’d Done Then

#19
post #11

Earlier quoted context omitted.

I don't think the problem is having case insensitive file systems, the problem is having both on different platforms. A similar problem as with different endians. If everything were case insensitive, it wouldn't cause issues. While as a programmer, I prefer the level of precision case sensitivity provides, I'm hard pressed to make the case that it is better for an average computer user.

... which exact type of case insensitivity would you do? Only for latin letters in ascii? or such letters plus just one accent type? or also less familiar symbols used in other writing systems? Did you know that different languages can contradict one another? [1] Are you also going to normalize unicode representation, like Mac OS X does? (it uses a variant of NFD normalization, which is arguably the wrong one to do b…

Point taken; I made the mistake of writing a prescription for the world based on my narrow English speaking world view.

I stand by what I said for ASCII, but in a Unicode world, I think you're right. When the mapping stops being simple, the principle of least surprise reverses in the favor of case sensitivity.

Re: Porting the Unity Editor to Linux: Stuff I Wish We’d Done Then

#20
I gave Steam (should be Valve) credit for their work to bring games to Linux, I should have mentioned Unity. Some of the best games I've played in the past 2 years were based on Unity. The Unreal platform brings new promises and will be nice to see games unfold from those on Linux. My money is good for Linux games for my lifetime which hopefully is still decades.
Post reply on HN