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
0
Question by Hobsie · Jul 02, 2013 at 06:57 PM · iostexture2dcompression

Only RGBA32bit works when setting Texture2D pixels on iOS?

I recently hit an issue on a personal project where one of my textures wasn't showing up on the iOS build. The Texture in question is a Texture2D that is created from a sprite sheet manually via Texture2D.SetPixels and then applied to a GUITexture icon on demand.

This requires that a texture be read/writable and has an alpha channel.

This works fine with RGBA Compressed DXT5 on OSX but on iOS I have only been able to use this method with RGBA32 (which is a whopping 1MB for a 512x512 texture). It doesn't seem to work with any of the compressed formats and to my surprise it didn't even with using RGBA16.

Is this really a restriction on iOS using this method? Almost seems worth my while breaking the spritesheet up into micro textures instead.

Regards Hobsie

Comment
Add comment · Show 2
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 Graham-Dunnett ♦♦ · Jul 02, 2013 at 08:23 PM 1
Share

Don't know the "official" answer, but I suspect to write pixels to a compressed texture, that texture needs to be decompressed, you then write the pixels, and then the texture is re-compressed. That means Unity would need to know how to uncompress and re-compress textures. I suspect that Unity cannot do this, since, I believe, conversion into iOS compressed formats is handled by ImgTech's PVRTexTool when you make a build.

avatar image Hobsie · Jul 02, 2013 at 09:49 PM 0
Share

That seems rather annoying but makes a lot of sense with what I'm seeing.

I was hoping to build my GUI without OnGui methods (for performance on iOS) or 3D primitives so the GUITexture system seemed well suited for my purposes. However, since you can't specify UV co-ordinates directly on a GUITexture it seemed reasonable to create textures from a sprite sheet using SetPixels when loading the scene.

I guess if I want to continue using this method I might need to put up with a bloated on disk size if I have several sprite sheets?

Edit: Although thinking a little more about it, why does it fail to work with RGBA16 but works with RGBA32? Strange.

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

16 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

iOS Sprites in PVRTC? 1 Answer

is it possible to use JPG compression on iOS export for non PVRTC textures? 0 Answers

iOS Unity game: what format video files should I use? 0 Answers

Cross platform zip compression library for Unity? 0 Answers

Textures turn black when on iOS ? 0 Answers


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