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
2
Question by ChrisYummi · Jan 25, 2013 at 10:56 AM · guilistfacebookscrolling

Best approach for a large scrolling list

I have a situation in our game where we want to select players from a list of the users facebook friends. We use our own GUI system that makes up each entry in the list from a backing texture, the avatar image and some text labels in 3D. My existing system can scroll a number of these "panels" up and down by generating them all and moving their single parent.

However if a facebook member has 1000 or even 5000 members I fear that pre-generating that many panels would be both memory hungry and even if most don't draw there will be a per object overhead.

Does anyone have any suggestions of other approaches I could try? I am thinking of writing a solution where it uses just, say 10 panels, and reuses these over and over but I think this will be a huge task as some panels can also have different things in them, such as buttons and other extra images.

Comment
Add comment · Show 6
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 robertbu · Jan 25, 2013 at 02:14 PM 0
Share

What target platform? Does your own system use any form of texture atlas? For "text labels in 3D" how are these generated and textured? How big are the avatar images? How do you plan for the user to navigate when the list becomes long?

If it were me, I'd fake up some data so I could generate a list that was 1000 and 5000 long to see where I had issues. $$anonymous$$y guess is that for up to 1000 entries you would be okay generating the whole list, but deferring the loading of images. That is, images are loaded and unloaded as that become near to being seen.

avatar image ChrisYummi · Jan 25, 2013 at 02:25 PM 0
Share

Its for mobile devices so you'll see 5-10 entries on the screen. Our system doesn't use a texture atlas. A good example is the friends list selector in "Scramble with Friends". This shows a similar amount per screen, allows for normal flick scrolling and adds a scrollbar button to allow you to drag it to the bottom of a long list. We are currently using the dynamic fonts of Unity4 with Text $$anonymous$$eshes, but this may become fixed fonts if we see performance issues. We are planning to load the avatars "on-demand" as you suggest.

avatar image robertbu · Jan 25, 2013 at 04:00 PM 0
Share

Using a texture atlas for some common items on the list might help...even if you have to code it by hand. I wouldn't write off building the whole list until you tested it. I wrote a test app a year ago that displayed a book inside unity. It used a bitmap font displayed using meshes. Performance was fine on the iPad. Never tested it on an iPhone. You may find that scroll and memory usage is fine, but that layout takes too long for reasonable use. Or that all three work, but it is just too painful to scroll through and find someone in a list of 5000.

avatar image sradforth · Mar 14, 2013 at 12:33 PM 0
Share

I too am interested in this capability. $$anonymous$$y limited understanding would be use something like Futile for the 2D batched rendering with a bitmap font to draw the text in the list. Given only say 10 rows are visible on screen it needs to have a set 10+1 more 'row entities' that are recycled. I.e. as one scrolls out of the frustum at the top it is moved to the bottom and the row info is set to the new information. $$anonymous$$y concern is will floating point errors start being an issue when it's 1000+ rows long, or how stable is the memory allocation/freeing for large async lists? Personally I'd love to jointly write this with someone as it's quite a bit of work getting the 'flicks', async loading/unloading, edge fading, scroll bars, etc..

avatar image robertbu · Mar 14, 2013 at 05:29 PM 1
Share

@sradforth - You might try a full list implementation first. I don't know your platform, but I wrote some list code and tested it by displaying a novel on an iPad 3 (using a bitmap font). Load time was under one second. No performance issues. Even if you wanted to conserve memory by dynamically creating the font, you could still do the layout of the whole list (assu$$anonymous$$g fixed height entries). For collaborations, see the forums.

Show more comments

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

12 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

Related Questions

A node in a childnode? 1 Answer

scrolling list of image, text, button 0 Answers

Having trouble moving item from one list to another! 1 Answer

How to get a list of all the GUI elements in a scene? 1 Answer

List or Grid View of lots of text data in Bitverse 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