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

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

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

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

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

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

۱ مطلب با کلمه‌ی کلیدی «بارگذاری sprite در لحظه ی runTime» ثبت شده است

منبع:gameover.blog.ir

یک 2d object->sprite ایجاد و اسکریپت سیشارپ با نام changeSprite  (حتما باید همنام با کلاس داخل اسکریپت باشه) بسازید و بدید بهش:
//changeSprite runTime
//lang:csharp
//author:sajjad3011
//attach this script to your 2dobject sprite
using UnityEngine;
using System.Collections;

public class changeSprite : MonoBehaviour {
	public Sprite spr1;//set it in the inspector
	public Sprite spr2;//set it in the inspector
	SpriteRenderer sprRndr1;
	// Use this for initialization

	void Start(){
		sprRndr1=this.gameObject.GetComponent<SpriteRenderer> ();//access to component SpriteRenderer
	}
	// Update is called once per frame
	void Update () {
		if (Input.GetKey (KeyCode.Keypad1)||Input.GetKey (KeyCode.Alpha1)) {
			sprRndr1.sprite = spr1;
		}
		else
		if (Input.GetKey (KeyCode.Keypad2)||Input.GetKey (KeyCode.Alpha2)) {
			sprRndr1.sprite = spr2;
		}
	}
}
یادتون نره دو تا عکس بندازید روی پارامترهای spr1 و spr2 در ورودی اسکریپت(در inspector)
سپس اجرا کنید. با کلید 1 و 2 اسپرایت ها تعویض میشه.

روش دوم بدون متغیر public و با استفاده از مسیر فایل png :

نکته ی بسیار مهم :

ابتدا حتما باید پوشه ای به مسیر Assets/Resources ایجاد  کنید.


سپس پوشه ای که حاوی اسپرایت ها هست بریزید توش. مثل spritesFolder به مسیر Assets/Resources/spritesFolder

حال داخل پوشه ی Assets/Resources/spritesFolder یک فایل به اسم mySprite.png داریم که می خوایم با کد اونو در لحظه ی اجرا لود کنیم.

به زبان سیشارپ اینطوری می شه :

GetComponent<SpriteRenderer>().sprite = 
    Resources.Load<Sprite>("spritesFolder/mySprite");

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