Hello to everyone!
I’m Mac/Unity programming newbie and looking for some help detecting user’s monitor (model) and screen resolution.
I want to show an object in “real size”. If it’s meant to be 5 cm, you have to see it that big, being able to measure it on your computer monitor and it should be 5 cm long in “real world units” (your ruler should say 5 cm after measuring).
To do that, I need to know two things: user’s current screen resolution (I’d go full screen, but keeping user’s resolution) and monitor model (only those connected to Mac!) so I could look up (database listing monitor models and their X and Y size in real world units) physical screen size (X and Y) to determ my object’s size.
I hope you understand what I’m talking about.
In short, I have to “profile” user configuration, within Unity, and find that you’re trying to run my app on your 23" Cinema set to 1920x1200 resolution.
Any ideas where to start? 
Screen.currentResolution gives you the current resolution of the screen.
I have no idea how to find out what monitor you have attached. If i go to the System profile in Mac OS X it doesn’t tell me what kind of monitor i have. So maybe it doesn’t actually know.
Go to System profiler
It can detect digital (DVI) apple displays–but at home I have a non apple display, Ill have to see if it recognizes it.
Anyway, you’ll have to figure out the dot pitch off all detectable monitors, and back calculate the size. Pixel size isn’t standard among monitors.
It will be tough to make it that accurate. Monitors aren’t standardized that way–
You might even have to test each monitor in photoshop or something, with a 100x100 shape, and calculate the px/inch
One thing is sure: You can’t count on it.
At my desk I have a CRT monitor (like a lot of people do for graphical work) - on this, I can adjust the size of the display. The computer has no way of knowing if I have actually configured my screen to go to the edge or not.
How about showing something on-screen asking the user to measure it? Then you can either count on the scale being correct or at least be able to blame the user.
Thanks guys.
Screen.currentResolution solves half the problem. 
But I still have no clue how to “profile”. I obviously have to do the same thing that Apple’s System Profiler does. But it’s still unknown territory to me. :?
There is some way to get the monitor ID, but I wouldn’t know how to go about it myself in my own programs. The Apple system profiler doesn’t do it for me, but I have DisplayConfigX installed, and the Monitor tab tells me (correctly) the name, manufacturer ID, and model ID of my monitor.
Although I agree that there are a lot of variables in how people have things set up, so that trying to automate this is going to be really hard if not impossible even if you do figure out how to get the model ID into Unity.
–Eric
I’d be happy if I could solve this for Apple displays (connected to Mac) only. So, we’re talking Cinema Displays and built-in screens (notebooks/iMacs/…).
I’m browsing through Apple’s Developer’s docs, but still nothing useful. I’m sure it’s there. Somewhere. 