«یا اللهُ یا رَبِّ یا حَیُّ یا قَیّوم یا ذَالجَلالِ وَ الاکرام اَسئَلُکَ بِاسمِکَ اَلعَظیم اَلاَعظَم اَن تَرزُقَنی رِزقاً حَلالاً طَیِّباً بِرَحمَتِکَ الواسِعَه یا اَرحَمَ الرّاحِمِین.»
کلاس Random برای تولید اعداد تصادفی در unity یونیتی :: گیم اور _ بازیسازی با unity + مطالب متفرقه

گیم اور _ بازیسازی با unity + مطالب متفرقه

آموزش های علمی با اجازه ی خدا تقدیم به هرکس خدا بخواد

آموزش های علمی با اجازه ی خدا تقدیم به هرکس خدا بخواد

به نام خدا
--
گروه قدیم ما promakers.ir یا پرومیکرز بود که بالای هزار اموزش توش ساخته بودم به اسم sajjad3011 ولی حیف ادمین سایتش عوض کرد
حالا سوالی بود کاری بود این شمارمه

قدیمیا دلم براتون تنگ شده... فقط معرفی کنید توی پیامک یا تماس یاد بیارید.
اگه جواب ندادم شاید موقعیت نداشته باشم.
بگید توی پیام از بچه های پرومیکرز هستید.

---
سوالی بود بذارید
نظر خصوصی نذارید
پاسخش سخته
دوست داشتید شماره بذارید تو واتساپ یا ایتا یا .... گروه بزنیم.
09358077198

بایگانی
پیوندها

کلاس Random برای تولید اعداد تصادفی در unity یونیتی

يكشنبه, ۲۴ خرداد ۱۳۹۴، ۰۵:۴۵ ق.ظ

کلاس Random در یونیتی :
این کلاس برای تولید اعداد تصادفی به کار می رود.
متغیرهای static از کلاس Random عبارتند از :

متغیر insideUnitCircle:
یک نقطه تصادفی از بردار دو بعدی داخل دایره ای به شعاع 1 تولید می کند.
با کمی تغییر می تونیم کارهای دیگه ای هم انجام بدیم.
شکل کلی :

کد:
static var insideUnitCircle: Vector2;

متغیر insideUnitCircle : برای ایجاد نقطه ی تصادفی دو بعدی داخل یک دایره :
مثال : اسکریپ زیر موقعیت ابجکت جاری را داخل دایره ای به شعاع 5 و موقعیت مرکزی صفر(x=0,y=0,z=0) تنظیم می کند.
کد PHP:
using UnityEngine;
using System.Collections;

public class 
Example MonoBehaviour {
    public 
Vector2 newPosition Random.insideUnitCircle 5;
    
void Example() {
        
transform.position.newPosition.x;
        
transform.position.newPosition.y;
    }

متغیر insideUnitSphere : ایجاد نقطه ی تصادفی داخل کره
کد:
static Vector3 insideUnitSphere;
مثال :
اسکریپت زیر مثل اسکریپت فوق است فقط برای یک کره(sphere):
کد PHP:
using UnityEngine;
using System.Collections;

public class 
Example MonoBehaviour {
    
void Example() {
        
transform.position Random.insideUnitSphere 5;
    }


متغیر onUnitSphere: برای ایجاد نقطه ی تصادفی روی کره به شعاع 1
مثال :
کد PHP:
using UnityEngine;
using System.Collections;

public class 
Example MonoBehaviour {
    
void Example() {
        
rigidbody.velocity Random.onUnitSphere 10;
    }


متغیر rotation: برای ایجاد یک چرخش تصادفی
مثال :
کد PHP:
using UnityEngine;
using System.Collections;

public class 
Example MonoBehaviour {
    
void Example() {
        
transform.rotation Random.rotation;
    }


متغیر rotationUniform:برای ایجا یک چرخش تصادفی با توزیع یکنواخت
مثال:
کد PHP:
using UnityEngine;
using System.Collections;

public class 
Example MonoBehaviour {
    
void Example() {
        
transform.rotation Random.rotationUniform;
    }



متغیر Random.seed :مجموعه دانه(seed) برای مولد عدد تصادفی.
مولد عدد تصادفی است واقعا تصادفی نیست، بلکه تولید اعداد در دنباله از پیش تعیین شده (ارزش در دنباله "jump" در اطراف محدوده در چنین راهی که آنها ظاهر می شود تصادفی برای اغلب اهداف).
با استفاده از مقدار ineger تصادفی که تولید میشه می تونیم game play های غیر قابل پیش بینی رو برای دشمن ایجاد کنیم و کاربر نتونه اونا رو حدس بزنه.به طور معمول از برخی از مقادیر دلخواه مانند ساعت سیستم قبل از توابع عدد تصادفی استفاده می شود.
مثال:
کد PHP:
using UnityEngine;
using System.Collections;

public class 
Example MonoBehaviour {
    private 
float[] noiseValues;
    
void Start() {
        
Random.seed 42;
        
noiseValues = new float[10];
        
int i 0;
        while (
noiseValues.Length) {
            
noiseValues[i] = Random.value;
            print(
noiseValues[i]);
            
i++;
        }
    }


متغیر Random.value : عددی بین 0.0 و 1.0 را بر می گرداند.
هر دو مقدار باید به طور مناسب تولید شوند. این تابع با توابع تولید عدد تصادفی دیگر کمی فرق دارد که عددی کچکتر تر از اما دقیقا مساوی با 1.0 تولید می کند.
مثال :
کد PHP:
using UnityEngine;
using System.Collections;

public class 
Example MonoBehaviour {
    
Color RandomColor() {
        return new 
Color(Random.valueRandom.valueRandom.value);
    }


توابع کلاس Random :

Random.Range : عدد تصادفی بین دو عدد رو بر می گردونه که حداقل min و حداکثر max باشه:
شکل اول:
کد:
static float Range(float min, float max);
مثال:
کد PHP:
using UnityEngine;
using System.Collections;

public class 
Example MonoBehaviour {
    public 
GameObject prefab;
    
void Start() {
        
Vector3 position = new Vector3(Random.Range(-10.0F10.0F), 0Random.Range(-10.0F10.0F));
        
Instantiate(prefabpositionQuaternion.identity) as GameObject;
    }


شکل دیگر:
کد:
static int Range(int min, int max);
مثال:
کد PHP:
using UnityEngine;
using System.Collections;

public class 
Example MonoBehaviour {
    
void Example() {
        
Application.LoadLevel(Random.Range(0Application.levelCount));
    }

مقدار برگشتی هرگز max نیست مگر اینکه min و max برابر باشند.
مترجم:sajjad3011
موافقین ۰ مخالفین ۰ ۹۴/۰۳/۲۴
مدیرکل

نظرات (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی