Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 14 Next capture
2021 2022 2023
2 captures
13 Jun 22 - 14 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 MadMenyo · Apr 04, 2015 at 11:58 AM · c#spritespriterendererspritesheet

Prefabs and multiple tilesets?

I have created a bunch of prefabs from a tileset to build a map. Since my tileset layout will be the same I do not want to create prefabs for each tileset but just switch the main tileset/sheet and use the same source coordinate from that sheet. How would I do that?

Since SpriteRenderer just uses the actual sprite that is already cut up I cannot switch the complete sheet which is limiting me. One way I could think of would be to replace the string before _XX and put in the name of the other sheet but this feels kind of hacky.

Otherwise I might have to setup the complete sheet in code so I can set the initial sheet to use but I rather change my prefabs since these are a lot more then a GameObject with a sprite attached to it.

Following code just gets me the first sprite if I dump the complete sheet in the newSprite slot.

 public Sprite newSprite;
 
     void Awake () {
 
         foreach (SpriteRenderer sr in gameObject.GetComponentsInChildren<SpriteRenderer>())
         {
             sr.sprite = newSprite;
         }
     
     }

Let's say for level 1 I want to use tileset01 and a floor tile could be tileset01_08. For level 2 I want to use tileset02 and that same floor tile should be tileset02_08. And I want a flexible way to replace complete sets.

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

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

19 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 avatar image avatar image avatar image

Related Questions

(C#) Help with Spriterenderer.sprite 2 Answers

Swapping sprite of game object that has an animator. (Unity 2017.3.1) 0 Answers

Bottom of Sprite Showing the Top of the Sprite below it 0 Answers

Sprite Previews not displaying! 0 Answers

Is there a way to change the sprite for all instances of the same object simultaneously? 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