Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 12 Next capture
2021 2022 2023
1 capture
12 Jun 22 - 12 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 The_Icaruz · Feb 02, 2018 at 07:05 AM · c#mobileunity 2dplatformerbackground

Number rain background

Hello everybody,

I'm really new to Unity 2017.3 and I'm currently working on a mobile platformer with the tilemap system and i want to implement a background that drops random prime numbers.

I struggle with the problem that i dont know how to make different numbers to fall down.

Also my idea is to drop some farer away (smaller) and make them fall slower so it gives the game more depth.

How do i give the spawner a list from wich it randomly picks prime numbers in different scaling sizes and different falling speeds?

Can I make one Spawner for all or should i make one spawner for each size for the numbers?

I hope you understand my question and you can help me with my problem.

Thank you very much.

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

2 Replies

· Add your reply
  • Sort: 
avatar image
1
Best Answer

Answer by Cycy · Feb 02, 2018 at 09:59 AM

Hello,

You may take a look at "3d Text" object in Unity (here some doc) :

https://docs.unity3d.com/Manual/class-TextMesh.html

https://docs.unity3d.com/ScriptReference/TextMesh.html

You could intantiate 3d object where you want and a some gravity or physics to make them fall.

In my opinion only one script is needed, it will manage the creation, fall, scale, number, etc....

I may help you with scripting if you want :)

Comment
Add comment · Show 12 · 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 The_Icaruz · Feb 02, 2018 at 11:13 AM 0
Share

I would really appreciate if you could help me with the script 'cause i never worked with 3D objects before only with 2D and there i'm also really new to scripting and program$$anonymous$$g :P

avatar image Cycy The_Icaruz · Feb 02, 2018 at 11:44 AM 1
Share

Well :)

3D object are like other objects ^^ The way i see it : you create a 3d object in your scene (Don't forget to add a rigidbody to activate the gravity) and you make prefab with it.

Then like every other object you instanciate it via script (cf following code). I see something like this.

 public GameObject text3dPrefab; // your text prefab - drag and drop it in inspector
 public Transform text3dContainer; // your empty object which will contain all the clone - drag and drop it in inspector
 Vector3 instanciatePosition; // the position to create a new text
 int numberToDisplay; // the number to diplay in your 3d text

 // all values for random position for 3dText
 int $$anonymous$$X;
 int maxX;
 int topY
 int $$anonymous$$Z;
 int maxZ;

 void Update()
 {
     instanciatePosition = new Vector3(Random.Range($$anonymous$$X, maxX), topY, Random.Range($$anonymous$$Z, maxZ)); // set a new position 

     numberToDisplay = Random.Range(0, 9); // find a new number

     GameObject go = Instantiate(text3dPrefab, instanciatePosition, Quaternion.identity, text3dContainer); // create a new 3D tex object based on your prefab

     go.GetComponent<Text$$anonymous$$esh>().text = numberToDisplay.ToString();// set the text to display in the new 3DText

    // you can also set the scale, color, etc...
 }
avatar image The_Icaruz Cycy · Feb 02, 2018 at 11:56 AM 0
Share

For the Random.Range is it possible to let him only pick Prime Numbers from say 3 to 97?

And how can i change the speed of the spawn rate?

The color should also be random so could i also make a random range with 8 different predefined colors?

and with scale and drop speed is there also a random range from that size/speed to this size/speed ?

I hope you understand the meaning of my sentence ^^

The main problem is i can first test it in barely 2 hours but then i could send you pictures and details what i mean

Show more comments
avatar image
0

Answer by The_Icaruz · Feb 04, 2018 at 02:13 PM

So this is the code for the Rain Spawner :

 using System.Collections;
 using System.Collections.Generic;
 using UnityEngine;
 
 public class PrimeRain : MonoBehaviour {
 
     public GameObject text3DPrefab;
     public Transform text3DContainer;
 
     Vector3 instanciatePosition;
 
     int numberToDisplay;
 
     // values for Rigidbody mass
     public int massMin;
     public int massMax;
 
     // values for Scale Range
     public int scaleXmin;
     public int scaleXmax;
 
     public int scaleYmin;
     public int scaleYmax;
 
     public int scaleZmin;
     public int scaleZmax;
 
     void Update() {
         // Position for Spawn
         instanciatePosition = new Vector3 (Random.Range (transform.position.x - 13, transform.position.x + 13), transform.position.y + 9, Random.Range (transform.position.z -1, transform.position.z -5));
 
         // Find a Number
         numberToDisplay = Random.Range (0, 9);
 
         // Create a new 3D Text Object from Prefab
         GameObject go = Instantiate (text3DPrefab, instanciatePosition, Quaternion.identity, text3DContainer);
 
         // Set the Text to display in the 3D Text
         go.GetComponent<TextMesh> ().text = numberToDisplay.ToString ();
 
         // List of Colors
         List<Color> listColor;
         listColor = new List <Color> ();
         listColor.Add (new Color (0, 0, 0));
         listColor.Add (new Color (0, 0, 0));
         listColor.Add (new Color (0, 0, 0));
         listColor.Add (new Color (0, 0, 0));
         listColor.Add (new Color (0, 0, 0));
         listColor.Add (new Color (0, 0, 0));
         listColor.Add (new Color (0, 0, 0));
         listColor.Add (new Color (0, 0, 0));
 
         // Get the Color from List
         go.GetComponent<TextMesh> ().color = listColor [Random.Range (0, listColor.Count - 1)];
 
         // Get Mass for Rigidbody
         go.GetComponent<Rigidbody> ().mass = Random.Range (massMin, massMax);
 
         // Get Scale for Object
         go.transform.localScale = new Vector3 (Random.Range (scaleXmin, scaleXmax), Random.Range (scaleYmin, scaleYmax), Random.Range (scaleZmin, scaleZmax));
     }
 }


i've made a 3D Cube and a 3D Text and made a Prefab of it and assigned it to the Script. And then assigned the script to the Main Camera. When i press Play nothing happens. The Colors are just for testing set to the same.

Comment
Add comment · Show 12 · 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 The_Icaruz · Feb 04, 2018 at 02:20 PM 0
Share

This is the Code from the Prime Number Calculate Script.

 using System.Collections;
 using System.Collections.Generic;
 using UnityEngine;
 
 public class PrimeCalculate : $$anonymous$$onoBehaviour {
 
     // Use this for initialization
     void Start () {
         // Name for the Numbers
         const int PRI$$anonymous$$ = 1;
         const int NOT_PRI$$anonymous$$ = 2;
 
         // End is the last Number to check for Prime Number
         int end = 100;
         int[] array = new int[end + 1];
 
         // First Number is a Prime Number so every $$anonymous$$ultiplied Sum is not a Prime Number
         for (int i = 2; i <= end; i++) {
             if (array [i] == NOT_PRI$$anonymous$$)
                 continue;
             else {
                 array [i] = PRI$$anonymous$$;
                 for (int j = i + i; j <= end; j = j + i) {
                 }
             }
         }
 
         // Show all Numbers wich are Prime
         for (int i = 2; i <= end; i++)
             if (array [i] == PRI$$anonymous$$)
                 Debug.Log ("Prim: " + i);
     }
 }
 
avatar image Cycy · Feb 04, 2018 at 02:22 PM 0
Share

Do you see clones, child of your text3dContainer in the hierachy on the scene ?

avatar image The_Icaruz Cycy · Feb 04, 2018 at 02:46 PM 0
Share

No nothing changes and nothing happens.

avatar image Cycy The_Icaruz · Feb 04, 2018 at 03:12 PM 1
Share

On which gameobject did you put the script ? An active one ?

Show more comments

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

450 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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

Programmatically changing brightness setting on Android using c# 0 Answers

Help with Spawning & Destroying Background Objects in 2D 2 Answers

I'm making a 2D mobile platformer and I just figured out how to make the mobile buttons work. But I can't get the jump limit to work. Does anyone know how to create maybe a ground detection with this script? 1 Answer

I have a problem with coins 1 Answer

How to move 2d object with touch anyscreen point 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