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

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

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

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

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

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

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

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

۷۲۶ مطلب با موضوع «یونیتی+unity3d+uity2d+پکیج» ثبت شده است

http://s5.picofile.com/file/8152660100/mech_walk.jpg

لینک شیلتر نیست اگه بود بگید آپ کنم یه جا دیگه. مرغ رو دانلود کنید(توی قسمت قبل لینک دانلود مدل انیمیت شده مرغ در بلندر رو گذاشتم) و طبق اموزش جلو برید و مشکلات رو پ.خ کنید سادست.

با استفاده از همین ایده می تونید اولین بازی سه بعدی خودتون رو برای عظیمت از game maker به unity بسازید.
اسکریپت js برای دکمه ی x و z و چرخش 20 درجه منفی و مثبت به چپ و راست حول محور UP(همون محور Y) بسازید و این کد رو بریزید توش و بدید به مدل مرغ که گفتم دانلود کنید :

کد PHP:
//char controller simple.js
function Update () {

  if (
Input.GetKey (KeyCode.Z)) {

    
transform.RotateAround (Vector3.zeroVector3.up20 Time.deltaTime);

  } else if (
Input.GetKey (KeyCode.X)) {

    
transform.RotateAround (Vector3.zeroVector3.up, -20 Time.deltaTime)

  }


کد بالا هیچی نداره .
تابع RotateAround سه پارامتر می گیره و الگوش اینه:
کد PHP:
RotateAround(pointVector3axisVector3anglefloat): void
point : نقطه ی چرخش که اگه Vector3.zero باشه به معنی نقطه ی مرکزی صفر ( دقیقا وسط ابجکت) حساب می شه.
دومین پارامتر axis یا بردار یا محور چرخش مدل هست که محور y هست و با دستور Vector3.up تنظیمش کردیم.
سومی هم زاویه چرخش هست.

(KeyCode.Z) فشردن کلید Z رو بررسی می کنه و (KeyCode.X) فشردن کلید X رو . اگه روی صفحه کلید نگاه کنید می بینید Z سمت چپ X هست .پس X باید باعث چرخش به راست و Z باعث چرخش به چپ بشه(یعنی حول محور Y) که توی کد فوق باید به وضوح ببینید.
البته در کد فوق احتمالا با کلید Z مرغ به راست می چرخه و با X به چپ که خودتون می تونید توی اسکریپت -20 رو با +20 در قسمت دلخواه تغییر بدید.

اگه یه نفر هم موفق بشه و نمونه کارشو بعد از این اموزش ها بذاره من ایده های دیگه و راهکارهای دیگه و ترفندهای زیادی یاتون میدم که مطمئن باشید با استفاده از همین چیزا می تونید بازی های خوبی بسازید که در حین گرافیک کم ایده های جالبی میشه ساخت.
۰ نظر موافقین ۰ مخالفین ۰ ۲۱ اسفند ۹۳ ، ۱۵:۳۳
مدیرکل

http://s5.picofile.com/file/8152662668/Rigify11.png

http://s5.picofile.com/file/8152665376/b...g.zip.html

سپس مدل ریگ شده ی حاوی انیمیشن راه رفتن رو  می برید و با ماوس می اندازید توی پروژه در یونیتی و بعدش توی صحنه یا hierarchy.

البته کامپوننت انیماتور (animator component)در یونیتی رو باید بلد باشید.

۰ نظر موافقین ۰ مخالفین ۰ ۲۱ اسفند ۹۳ ، ۱۵:۲۹
مدیرکل


دوستای که میخوان از گیم میکر(استادیو) به unity کوچ کنن شاید ابتدا دنبال اکشن و رویداد و چیزای ساده باشن و فکر کنن یونیتی سخته. برای راحتی این مطالب مختصر رو بدونید(سوالی بود فقط پ.خ کنید من آموزش رو ادامه میدم همینجا ) :

گیم میکر اگه event داره یونیتی هم داره.

اگه توی گیم میکر رویداد کلیک داریم توی یونیتی می گیم رویداد های onMouseDown و غیره داریم:

رویداد های ماوس + تکستچر گذاری gui

کد PHP:
var normalTex Texture2D;

    var 
hoverTex Texture2D;
     
    function 
OnMouseEnter () {
     
guiTexture.texture hoverTex;
    }
     
    function 
OnMouseExit(){
     
guiTexture.texture normalTex;
    }
     
    function 
OnMouseDown(){
     
Debug.Log("clicked");
    } 
منبع :
http://www.unity3dstudent.com/2010/10/be...se-events/

مثال2 :
بار گذاری یک مرحله توسط رویداد onMouseDown :
کد PHP:
    // Loads the level named "SomeLevel" as a response
    // to the user clicking on the object

function OnMouseDown () { Application.LoadLevel ("SomeLevel"); } 
منبع :
http://docs.unity3d.com/ScriptReference/...eDown.html
کدهای بالا به زبون js بود.

۰ نظر موافقین ۰ مخالفین ۰ ۲۱ اسفند ۹۳ ، ۱۵:۱۳
مدیرکل

هر ماشین نیاز به یک مرکز ثقل در زیرش داره که معمولا در نقطه ی وسط و کمی پایین تر از سطح لاستیک ها با استفاده از یک ابجکت empty اونو باید بسازید و اونقدر اونو جابجا کنید که دقیقا در مرکز ماشین قرار بگیره و چون اینکار از لحاظ تئوری کمی دشوار هست با آزمون و خطا ماشین رو تست کنید تا ماشین از عقب یا جلو یا پهلو ها تک چرخ نزنه.

در ساخت کنترلرهای ماشین و وسایل نقلیه معمولا با پارامترهای زیادی روبرو هستیم.

بعضی از این پارامتر های اصلی در کامپوننت wheel collider قرار داره که به تک تک چرخ ها نسبت میدیم:

http://s5.picofile.com/file/8151252792/wheel_collider.jpg


mass: (جرم یا وزن و سنگینی لاستیک) یکی از مهمترین پارامترهاست که اگه کم باشه لاستیک ها سنگینی لازم برای ایجاد تعادل ماشین رو نخواهند داشت. بقیه پارامترها رو خودتون ترجمه کنید سادست (مربوط به ترمز و اصطکاک پهلو ها و جلو و مسافت تعلیق میشه و ...)

radius: بهش عدد بدید و در صحنه نگاه کنید تا دقیقا دایره ای هم اندازه با لاستیک ایجاد بشه.(البته با scale خود گیم ابجکت های empty ای که واسه تکتک چرخ ها ساختید هم می تونید بازی کنید. rotation هم واسه تنظیم زاویه دقیقا هم زاویه با لاستیک به منظور فرمون دادن درست لاستیک ها و نداشتن حالت غیر عادی)

از جمله پارامترهای دیگه ای که می تونید به ماشین نسبت بدید دو یا چد لامپ هست که می تونید با اسکریپ اونها رو کنترل کنید و همینطور دود و غیره که البته من دود برای هر چهار چرخ رو توصیه نمی کنم چون particle محاسبات زیادی می بره و cpu میخوره و optimize(بهینه) نیست.

http://s5.picofile.com/file/8151253534/car_207.jpg

۰ نظر موافقین ۰ مخالفین ۰ ۲۱ اسفند ۹۳ ، ۱۵:۱۱
مدیرکل

http://s5.picofile.com/file/8151249350/divar.jpg

دانلود آموزش:حجم:200 کیلوبایت PDF

http://s5.picofile.com/file/8151245626/divar.pdf.html

۰ نظر موافقین ۰ مخالفین ۰ ۲۱ اسفند ۹۳ ، ۱۵:۰۹
مدیرکل

http://s5.picofile.com/file/8117682642/rain.jpg



Unity.Pro.v4.3.4f1 رو باز کنید و یک پروزه new کنید و یک planeبندازید و دوربین رو در مکان دلخواه بذارید.

پکیج بارون رو از اینجا دانلود کنید :
حجمش 800 کیلوبایته :
http://s5.picofile.com/file/8117681700/rainpackage_259.zip.html
سپس بکشید با ماوس و بندازید توی پروژه در بخش assets رها کنید.
سپس بکشید با ماوس و بندازید توی پروژه در بخش assets رها کنید.

سپس در زیر شاخه ی Fire->Rain باورن یا rain رو در کادر assets انتخاب کنید و با ماوس بگیرید بکشید توی hierarchy روی Plane یا یکی از game Object های دلخواه رها کنید تا اعمال بشه.

بارون ساخته شد. فقط می مونه صدا.
یک فایل صوتی صدای بارش باران رو دانلود کنید و ببرید توی پروژه درگ(drag) کنید(با ماس بگیرید و بکشید توی پروژه رها کنید تا اضافه بشه به بخش assets)
یک آبجکت تهی از طریق gameObject->Create Empty ایجاد کنید.(می تونید از ابجکت های دیگه هم استفاه کنید ولی لازم نیست)
سپس اونو انتخاب کنید و منوی component->audio->Audio Source رو بزنید تا یک منبع صوتی بهش اضاف بشه.
سپس فایل صوتی رو از توی پروژه بگیرید و روی AudioClip در inspector رها کنید.
http://s5.picofile.com/file/8117681576/audio_source_add.jpg
پروژه رو اجرا کنید و لذت ببرید.تشکر هم بی زحمت بزنید .
۳ نظر موافقین ۰ مخالفین ۰ ۲۱ اسفند ۹۳ ، ۱۴:۰۳
مدیرکل


Unity.Pro.v4.3.4f1
شاید دلتون بخواد در حین اجرا با فشردن یک کلید تکستچر عوض بشه یا متریال .


ابتدا دو متریال ایجاد کنید به نام های mat1 و mat2 و تکستچر های دلخواه یا رنگ دلخواه رو بهش نسبت بدید.

نکته: برای ایجاد متریال در قسمت project راست کلیک کنید و Create Material رو بزنید.
(اگه تکستچر می خواد بذارید باید تکستچر رو بکشید با ماوس توی assets در بخش project به پروژه اضافه کنید و بعدش متریال رو انتخاب کرده و سپس تکستچر رو بکشید روی texture توی inspector از متریال انتخاب شده و رها کنید یا اونجا از کادر باز شده تکستچر رو براش set کنید که من فرض می کنم اینو بلدین اگه سوال داشتید بپرسید ازم)

سپس یک Plane ایجاد کنید.

سپس یک اسکریپت java بسازید و اسمشو بذارید: chColor.js و اونو بکشید روی Plane در hierarchy و کدهای زیر رو بریزید توش:


Material mat1,mat2;

void
Update () 
{
if (
Input.GetKeyUp (KeyCode.R)) renderer.material mat1;
if (
Input.GetKeyUp (KeyCode.G)) renderer.material mat2;


سکریپت رو با ctrl+S ذخیره یا Save کنید.

(نکته : بعضی اوقات یونیتی قاطی می کنه و مجبورید اسکریپت رو ببندید و دوباره باز کنید تا کد ها درست کپی بشن)
بعد از ذخیره ی اسکریپت به محیط پروژه برگردید و Plane رو انتخاب کنید .
توی inspector(پنجره ی خصوصیات)، در زیر شاخه ی همین اسکریپتی که اضاف کردید به Plane،باید دو تا گزینه Mat1 و Mat2 اومده باشه که جلوی هر کدوم یه کادر هست.از توی اون کادر متریال 1 و 2 رو به هر کدوم نسبت بدید(mat1 و mat2)

شکل پروژه باید شبیه این باشه:
http://s5.picofile.com/file/8117468600/change_material_using_js_unity_sajjad3011.jpg

http://s5.picofile.com/file/8117468600/c...ad3011.jpg

پروژه رو Play کنید
اگه R بزنید باید رنگ plane قرمز بشه و اگه G بزنید باید رنگش سبز بشه.
شما می تونید تکستچر دلخواه رو بدید ولی من تکستچر ندادم فقط رنگ قرمز و سبز رو به ترتیب به متریال mat1 و متریال mat2 نسبت دادم.
امیداورم لذت برده باشید.
نکته:
(فقط روی دکمه ی play بزنید تا Run بشه و دوباره برای خروج روی Play بزنید . دقت کنید روی دکمه های دیگه مثل pause و اینا نزنید کمی قاطی می کنه و undo میشه و اگه مبتدی هستید شما رو گیج می کنه و مجبورید دوباره تنظیمات اسکریپت ها رو بنویسید و اعمال کنید)
۰ نظر موافقین ۰ مخالفین ۰ ۲۰ اسفند ۹۳ ، ۱۷:۴۳
مدیرکل

ابتدا تکسچر آسمون رو به صورت دوار یا گرد پیدا کنید:
http://www.tutorialsforblender3d.com/Tex...ome_1.html
بعد از دانلود ببرید توی blender یا max یا maya یا ...
سپس یک نیمکره بسازید.
بعدش unwrap کنید و تکستچر رو بندازید دقیق روش بعدش obj file و uv map texture رو اکسپورت کنید ببرید توی یونیتی یا ... استفاده کنید.

http://s6.picofile.com/file/8176323934/sky_asemoon_blender_unity.jpg

۰ نظر موافقین ۰ مخالفین ۰ ۲۰ اسفند ۹۳ ، ۱۷:۳۷
مدیرکل

http://s6.picofile.com/file/8174732376/tank.jpghttp://s4.picofile.com/file/8174732334/_Refraction_improved2.jpg

http://s4.picofile.com/file/8174732350/chev.jpg


۰ نظر موافقین ۰ مخالفین ۰ ۱۳ اسفند ۹۳ ، ۰۷:۱۲
مدیرکل

کلید ctrl+shift+F

۰ نظر موافقین ۰ مخالفین ۰ ۰۹ اسفند ۹۳ ، ۰۱:۱۹
مدیرکل
چرخش یک ابجکت وقتی ماوس روی آن قرار می گیرد:
public float rotationSpeed = 50f;
public GameObject target;
private bool rotate = false;

void OnMouseDown() {
    rotate = !rotate; //this line toggles the bool "rotate" every time the object is clicked
}

void Update() {
    if(rotate) {
        target.transform.Rotate (new Vector3(0, Time.deltaTime, 0) * rotationSpeed );
    }
}

۰ نظر موافقین ۰ مخالفین ۰ ۰۶ اسفند ۹۳ ، ۰۵:۱۶
مدیرکل
۰ نظر موافقین ۰ مخالفین ۰ ۰۳ اسفند ۹۳ ، ۰۶:۲۷
مدیرکل
برای اینکار می تونیم تگ بدیم :

Ray ray = new Ray(transform.positiontransform.forward);
           RaycastHit hit;
 
 if (Physics.Raycast(rayout hitRange){
 
 if(Hit.collider.tag == "تگ دلخواه")
{
    Application.LoadLevel(" نام مرحله");
}

 
}
۰ نظر موافقین ۰ مخالفین ۰ ۲۴ بهمن ۹۳ ، ۰۷:۲۳
مدیرکل
void Update(){
if(Input.GetKey(KeyCode.W)){
Audio.Play("/*نام صدایی که می خواید*/");
}
}
۰ نظر موافقین ۰ مخالفین ۰ ۲۴ بهمن ۹۳ ، ۰۷:۱۹
مدیرکل

یک کد جالب دیگرو امروز براتون میزارم که با اون می تونین مقادیر مربوط به اشیای دیگرو دستکاری کنین.
مثلا فک کنین می خواین خون خودتون یا دشمنتون رو کم کنین در اثر برخورد گلوله. ( این یه مثال هست )

ابتدا دوتا شی ایجاد کنین و نام هاشونو تغییر بدید که هم خودتون اشتباه نکنین هم یونیتی. مثلا دوتا Cube با نام های Cube1,2 ایجاد کنین.سپس دوتا کد جاوا اسکریپت با نام های cube1,2 نیز ایجاد کنین و هر کدوم رو به شی مربوطه متصل کنین.
حالا برید تو کد اول و کد زیر رو قرار بدید.

1
2
3
4
5
6
7
var target : GameObject;var Health : int;
function Start(){Health=100;}
function Update()
{
Health = target.GetComponent(cube2).h;
print(Health);
}


کد رو ذخیره کنید و سراغ کد دوم برید و کد زیر رو درونش بریزید.

1
2
3
4
5
6
var target : GameObject;var h : int;
function Start(){}
function Update()
{
h = target.GetComponent(cube1).Health - 10;
}


حالا هر کدوم از اشیا رو برای اون یکی کد معرفی کنین.
بازی رو اجرا کنین و نتیجرو ببینین.
۰ نظر موافقین ۰ مخالفین ۰ ۲۴ بهمن ۹۳ ، ۰۷:۱۸
مدیرکل
gameover.bog.ir
Destroy( gameObject, 3f );

۰ نظر موافقین ۰ مخالفین ۰ ۲۴ بهمن ۹۳ ، ۰۷:۱۳
مدیرکل
این کد برای این هستش که اگه دو Object به هم برخورد کردن یک اتفاق بیفته و انیمیشنی اجرا بشه


#pragma strict
function Update(){
 
function OnControllerColliderHit(hit : ControllerColliderHit){
if(hit.gameObject.tag == ""/*برچسبی که جسم دوم داره*/)
{
  hit.gameObject.animation.Play(""/*انیمیشنی که قراره اجرا بشه*/);
}
 
}
 
}
البته از رویداد onCollisionEnter هم می تونید استفاده کنید که وقتی یک جسم به جسم دیگه برخورد کرد کاری انجام بشه وگرنه کار دیگه ای.یکم خلاقیت به خرج بدید حله. فقط باید درک کنید کار توابع رو.
برای دو بعدی:
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { void OnCollisionEnter2D(Collision2D coll) { if (coll.gameObject.tag == "Enemy") coll.gameObject.SendMessage("ApplyDamage", 10); } }



۰ نظر موافقین ۰ مخالفین ۰ ۲۴ بهمن ۹۳ ، ۰۷:۱۳
مدیرکل
مولف: alimokh
#pragma strict
var target :Transform;//جسم اول
var target1 : GameObject;//جسم دوم
var target3 : GameObject;//جسم اول
function Update () {
if ( Physics.Raycast( target.position , target.transform.position , 0.1 ))
{
Destroy(target3);
Destroy(target1);
}
}

۰ نظر موافقین ۰ مخالفین ۰ ۲۴ بهمن ۹۳ ، ۰۶:۳۷
مدیرکل
۰ نظر موافقین ۰ مخالفین ۰ ۲۴ بهمن ۹۳ ، ۰۶:۳۴
مدیرکل

transform.position = Vector3(x,y,z);

 

مثال 2 : حرکت جسم با حرکت ماوس

using UnityEngine;

public class ExampleClass : MonoBehaviour
{
    //movement speed in units per second
    private float movementSpeed = 5f;

    void Update()
    {

        float x= Input.GetAxis("Horizontal");
        float y= Input.GetAxis("Vertical");

        transform.position = transform.position + new Vector3(x* movementSpeed * Time.deltaTime, y * movementSpeed * Time.deltaTime, 0);

        Debug.Log(transform.position);
    }
}
۱ نظر موافقین ۰ مخالفین ۰ ۲۴ بهمن ۹۳ ، ۰۶:۰۴
مدیرکل

مسیر  game object->create other ->wind zone  رو طی کنید.
در صحنه یک آیکن ساخته میشه که جهتش رو می تونید تغییر بدید(Rotate و ... )
پارچه یا درخت یا چمن توی محوطه ی بادی بذارید تا در حین اجرا متوجه بشید.

http://t3.gstatic.com/images?q=tbn:ANd9GcQb4dzp-ubpab8SJYFPRH34J0BYFwzoE3enD3LRyvzKVoE6pKe4Ag

http://vermontartsliving.com/wp-content/uploads/2014/09/SOVAL-06.fob_.route_7.Randy_Adams_alumwindblown.jpg

۱ نظر موافقین ۰ مخالفین ۰ ۲۴ بهمن ۹۳ ، ۰۴:۴۶
مدیرکل
var speed : float = 6.0;
 var twiceSpeed : float = 10.0;
 var jumpSpeed : float = 8.0;
 var gravity : float = 20.0;
 var rotateSpeed : float = 3.0;
 
 private var moveDirection : Vector3 = Vector3.zero;
 
 function Update() {
     var controller : CharacterController = GetComponent(CharacterController);
     if (controller.isGrounded) {
         //Grounded, so recalculate
         //Move directly from axes
         moveDirection = Vector3(0, 0, Input.GetAxis("Vertical"));
         
         //Rotation Code
         transform.Rotate(0, Input.GetAxis("Horizontal") * rotateSpeed, 0);
         
         moveDirection = transform.TransformDirection(moveDirection);
         moveDirection *= speed;
         
         if (Input.GetButton ("Jump")) {
             moveDirection.y = jumpSpeed;
         }
         
         //Animation Code
         if (Input.GetKeyDown("w"))
         {
             animation.Play("Full Walk");
         }
         else if (Input.GetKeyUp("w"))
         {
             animation.Stop();
             animation.Play("Idle");
         }
     }
     
     //Apply Gravity
     moveDirection.y -= gravity * Time.deltaTime;
     
     //Move Controller
     controller.Move(moveDirection * Time.deltaTime);
 }


اینم یکی دیگه :

http://www.scottpetrovic.com/blog/2009/11/unity3d-3rd-person-basic-movementrotation-wsource/


۰ نظر موافقین ۰ مخالفین ۰ ۲۳ بهمن ۹۳ ، ۲۲:۵۶
مدیرکل
using UnityEngine;
using System.Collections;
public class NewBehaviourScript : MonoBehaviour {
    public int playerSpeed=4;
    // Use this for initialization
    void Start () {
        }
    
    // Update is called once per frame
    void Update () 
        {
            
            if (Input.GetKey (KeyCode.RightArrow)){
                transform.Translate(new Vector3(playerSpeed*Time.deltaTime,0,0));
                animation.Play("اسم انیمیشن حرکت به راست");
            }
            if (Input.GetKey (KeyCode.LeftArrow)) {
                transform.Translate(new Vector3(-playerSpeed*Time.deltaTime,0,0));
                animation.Play("اسم انیمیشن حرکت به چپ");
                
            }
        }//update
    }




مثال حرکت با جوی استیک مجازی برای اجرا روی اندروید:
http://gameover.blog.ir/1394/08/11/%DA%A9%D8%AF-%D8%AD%D8%B1%DA%A9%D8%AA-%D9%BE%D8%B1%D8%B4-%D8%AF%D8%A7%D8%A8%D9%84-%D8%AC%D8%A7%D9%85%D9%BE-%D8%B1%D8%A7%D9%87-%D8%B1%D9%81%D8%AA%D9%86-%D8%AF%D9%88-%D8%A8%D8%B9%D8%AF%DB%8C-player-%D8%AF%D8%B1-%DB%8C%D9%88%D9%86%DB%8C%D8%AA%DB%8C-%D8%A8%D8%A7-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B2-Easy-touch-version-3-%D8%B3%DB%8C%D8%B4%D8%A7%D8%B1%D9%BE



۲ نظر موافقین ۰ مخالفین ۰ ۲۳ بهمن ۹۳ ، ۲۰:۴۲
مدیرکل
از کلاس application در یونیتی میشه بعد از خروجی اپلیکیشن روی موبایل استفاده کرد.

مثلا برای لرزش گوشی این کد رو داریم:


برای اینکه شماره فردی رو توسط خود گوشی اندروید Call کنیم این کد رو اجرا می کنیم:
  1. Application.OpenURL ("tel:شماره");

کلاس Application تحت جاوااسکریپت و سیشارپ توی یونیتی شناخته شده هست و می تونید اسکریپت رو به هر یکی از دو زبان که دلتون خواست بنویسید.
۰ نظر موافقین ۰ مخالفین ۰ ۰۱ بهمن ۹۳ ، ۲۲:۴۵
مدیرکل

گاهی وقتا موقع build کردن پروژه به apk در unity با خطای zip align مواجه میشیم .

برای رفع این خطا باید فایل zipalign.exe رو از در مسیر AppData\Local\Android\android-sdk\build-tools\ و در پوشه های زیرین اون یافته  پس از کپی فایل zipalign.exe رو در مسیر AppData\Local\Android\android-sdk\tools ، پیست(paste) کنیم.

در نهایت پروژه رو با اندروید build کنید.

یکی از دوستان فایل zipAlign رو می خواست:
http://s7.picofile.com/file/8257635700/zipAlign.jpg
اینم لینک دانلود:

https://xip.li/l2FtPT
 

۰ نظر موافقین ۰ مخالفین ۰ ۱۳ آبان ۹۳ ، ۱۸:۵۴
مدیرکل

http://s5.picofile.com/file/8146627626/mesh_explosion_unity.jpg
فکر کنم برای اینکار ساخته شده باشه و یه سری تنظیمات باید داشته باشه.
لینک دانلود :

https://s5.picofile.com/file/8146636992/meshExplosionUnity.zip.html


فقط 105 کیلوبایت هست
گه می خوای حالتش طبیعی تر بشه فکر کنم باید خصوصیت Type رو روی Physic بذاری نه Visual :
http://s5.picofile.com/file/8146635534/meshExplotion_csharp_unity.jpg
کارشم اینطوری هست که اسکریپت meshExplosion.Cs رو می کشی میندازی روی هر شی بازی ای که میخوای.
مثلا میندازی روی یک مکعب. بعدش خصوصیت رو توی کادر خصوصیات hierarchy تنظیم می کنی.
مثل حداقل و حداکثر سرعت و حداکثر چرخش و زمان محو شدن (fade) و الی آخر.
--
بازم چیزای دیگه می تونی اضافه کنی مثل پارتیکل و خون و نور و ...
--
ضمنا اسکریپت زمانی انفجار رو انجام می ده که تابع یا متد Explode() از کامپوننت MeshExploder (دقت کنید explode  هست نه explore.چون Explore نیست و Explode هست از مصدر Explosion که به معنی انفجار میشه) رو صدا بزنی(call کنی در اصطلاح) یا اینکه پیام "Explode" رو به گیم ابجکتی که می خوای منفجر کنی بفرستی(فکر کنم تابع sendMesage واسه این چیزا بکار می ره)

 


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

۳ نظر موافقین ۰ مخالفین ۰ ۲۷ مهر ۹۳ ، ۰۲:۱۳
مدیرکل