Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
1
Question by LeviS · Oct 31, 2010 at 12:30 AM · guiresolutionnativematrix4x4

Taking the user's screen resolution before running a GUI.matrix?

Okay, I'm fairly new to GUIs, so correct me if I'm wrong.

  1. I can just use Screen.width and Screen.height, but without a matrix images will be stretched.

  2. To keep things in a good ratio, you use a GUI.matrix.

  3. The GUI.matrix needs the native resolution of the user to function properly.

So how can I take their native resolution and then plug those numbers into my matrix? Here is my code, just using my own native resolution (the relevant parts):

var nativeVerticalResolution = 1050.0; var nativeHorizontalResolution = 1680.0;

GUI.matrix = Matrix4x4.TRS (Vector3.zero, Quaternion.identity, Vector3 (Screen.width / nativeHorizontalResolution, Screen.height / nativeVerticalResolution, 1));

GUI.Label(Rect ((nativeHorizontalResolution / 2) - (image.width / 2), 0, image.width, image.height), image);

This puts my image at the (center / top) of the screen and works great on my resolution. But it won't work as well on another resolution, I know because I wasted a ton of time when I had the nativeVerticalResolution set wrong.

Seems like at the moment I've set it up great to scale on any ratio I use on my computer, but I want it to work on any computer I move it to. Any solutions, or maybe I'm going about this the wrong way?

Thanks in advance!

Comment
Add comment · Show 1
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image Argenex · Dec 07, 2010 at 05:20 AM 0
Share

I'm watching this myself as I cant even get GUI.matrix to parse without the error asking if I scaled Z by zero, and I have literally the same code as you.

0 Replies

· Add your reply
  • Sort: 

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

No one has followed this question yet.

Related Questions

Is that a resolution-related issue? 1 Answer

Screen Resolution and GUI cutoff issue. Android. 1 Answer

Resolution & aspect ratio GUI 1 Answer

Cannot see full view of Screen in Unity preview 2 Answers

Button and resolution problem 1 Answer


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges