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 /
This post has been wikified, any user with enough reputation can edit it.
avatar image
5
Question by elbanditorosso · Jan 12, 2015 at 10:19 PM · iostexturescompression

What is the most practical way to convert NPOT textures to POT for an almost finished game?

Some friends and I developed our first game (2D) and did not think about compression while creating the textures for our sprites. So we did not create the textures POT and unfortunately there are many (~200). Consequently the textures cannot be compressed with PVRCT and our OS version of the game is way to big (300MB while the .apk is arround 40MB). What is the most practical way to fix this? Is it possible to automate the conversion? Can i force Unity to convert the textures at reimport? Any suggestion is really appreciated!

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 smoggach · Jan 12, 2015 at 10:52 PM -1
Share

I bet the real issue is import settings. Have you gone through all your texture assets and set up their import settings for iOS?

avatar image elbanditorosso · Jan 13, 2015 at 09:11 PM 0
Share

I use Sprite(2D) as texture type. Down at the bottom it tells me "Only POT Textures can be compressed to PVTRC format". If i switch to texture type: advanced i can select NPOT conversion but my sprites will not work anymore afterwards.

5 Replies

· Add your reply
  • Sort: 
avatar image
3

Answer by JiMMaR · Jul 02, 2015 at 02:59 PM

for sprites and UI elements.

I managed to reduce the size of the build by using the sprite packer, it's disabled by default but you can enable it from Edit -> Project Settings -> Editor.

You also gotta set the packing tags for the sprites to be packed together in the same Atlas.

by doing this, Unity makes sure that the Atlas is POT

http://docs.unity3d.com/Manual/SpritePacker.html

Comment
Add comment · Show 1 · Share
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 v01pe_ · Oct 20, 2016 at 08:53 AM 0
Share

Be aware tho! I recently discovered in our project, that when inspecting the used memory, Unity still used the uncompressed single frames (although the sprite atlas was loaded as well) - at least in animations if they were NPOT. This seems to be a bug and blew up our memory use by almost 300% ! Haven't filed a bug report yet, but will do as soon as I have a demo project! The Unity version we use it 5.4.1 btw.

avatar image
0

Answer by smoggach · Jan 13, 2015 at 09:21 PM

You can disregard that warning when building for iOS. If you set the Format to compressed then Unity will use the Max Size to convert your image to POT at that size when you build for iOS. Therefore the most practical way is to let Unity do it.

I don't think there's anything wrong with a 300MB ios file but if you want to provide your own compressed PVR to reduce build size then your option is to create your own spritesheets with an external tool like TexturePacker or cli like ImageMagick. Either way it's going to take a few days to figure out.

Comment
Add comment · Share
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
0

Answer by emcx · Jan 22, 2015 at 02:29 PM

I'm having this exact issue. This is pretty ridiculous, tbh, a game using non-POT sprites is really frustrating to build to iOS. You either have to spritesheet all your stuff, reassign textures to everything, rescale stuff if you used different points-per-pixel, etc, OR have uncompressed textures weighing tons and tons of bytes.

Up to this point it has been the biggest hurdle to seamless deployment among different platforms, in my experience.

Comment
Add comment · Share
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
0

Answer by virgilcwyile · Feb 29, 2020 at 12:47 PM

Hello, I and my team has made a tool to change the NPOT texture to POT texture. However it's just released, and it's free. It helps in reducing Memory on Android and IOS. Also disk space in your project. Check it out and share it with your fellow Unity developers. http://bluecreazione.com/imageprocessor/

Comment
Add comment · Share
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
0

Answer by raiden · Apr 12, 2020 at 02:29 PM

@virgilcwyile Nice tool, too my logo image down from 5.9 mb to 1 mb! Thanks for sharing!

Comment
Add comment · Share
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

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

9 People are following this question.

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

Related Questions

iOs weird textures (good on android) the reason? How to fix ? 1 Answer

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

Cartoon Shader FX 1 Answer

What is the best way to build a large game world, including texturing for iOS? 2 Answers

Can Rectangle pot PVRTC textures be used on iOS? 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