์๋ ํ๋คย ์์ฆ ๊ฐ๋ฐ์ ํน ๋น ์ ธ์๋ย ๋ด๋น์ผ
์ ๋ํฐ 4.5๋ฒ์ ๊ธฐ์ค์ผ๋ก ๋ง๋ค์ด์งย ๋ฐฐ๊ฒฝ ์คํฌ๋กค๋ง ๊ฐ์ ๋ณด๊ตฌ ์๋๋ฐ (์ํ ๊ฒ์ ๋ฑ๋ฑ์์ ๋ฐฐ๊ฒฝ ๋ค๋ก ๋ฐ์ด๋ด๋๊ฑฐ)
renderer.sharedMaterial.SetTextureOffset
๊ฐ์ํ๋ ์ฌ๋์ด ์ API๋ฅผ ๋ฐฐ๊ฒฝ ๋ฐ์ด๋ด๋๋ฐ ์ฐ๋๋ผ๊ตฌ
๊ทผ๋ฐ ์ง๊ธ ๋ด๊ฐ ์ฐ๊ตฌ ์๋ ์ ๋ํฐ 5.6๋น๋์์๋ ์ ์ฉ์ด ์ ๋ผ ์๋ฌด๋๋ย ์์ด์ง API์ธ๋ฏ..
๊ฒ์ํด๋ด๋ ์ ๋์ค๋๋ฐ ํน์ ์ด๋ป๊ฒ ๋ฐ๋์๋์ง ์๋ ์ฌ๋ ์์๊น?
๋งํฌ๋ ๊ฒ์ํค์๋ ๊ฐ์๊ฑฐ๋ผ๋ ๋์ ธ์ฃผ๋ฉด ๊ณ ๋ง๊ฒ ์ด ์ง์ ์๋ ค์ฃผ๋ฉด ๋ ์ข๊ตฌ
์คํฌ๋ฆฝํธ ์ ๋ฌธ:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class OffsetScroller : MonoBehaviour {
ย ย //์ผ๋ง๋ ๋นจ๋ฆฌ ์คํฌ๋กคํ ๊ฒ์ธ๊ฐ?
ย ย public float scrollSpeed;
ย ย void Update()
ย ย {
ย ย ย ย //Mathf.Repeat API๋ฅผ ์ด์ฉํด ๊ฒ์๋ด์์ํ๋ฅด๋์๊ฐ*์คํฌ๋กค์๋๋งํผ ์์ง์ด๋ ์ต๋๊ฐ์ Offset 1
ย ย ย ย //์ด๋ ๊ฒ ์์ฑํ๋ฉด float y๋ 0๋ถํฐ 1๊น์ง ์ปค์ ธ๊ฐ๋ ๊ฐ๋ค์ ๋ฐ๋ณต์ ์ผ๋ก ์ ์ฅํ๊ฒ ๋จ
ย ย ย ย float y = Mathf.Repeat(Time.time * scrollSpeed, 1);
ย ย ย ย //์๋ก์ด ๊ฐ์ ์ ์ฅํ Vector2 ๋ณ์ offset์ ๋ง๋ ๋ค, x๊ฐ์ 0์ผ๋ก ๋๊ณ ์์์ ์ ์ฅํ y๊ฐ์ ๊ฐ์ ธ์ Vector y๊ฐ์ผ๋ก ์ ์ฅ.
ย ย ย ย Vector2 offset = new Vector2(0, y);
ย ย ย ย ย Renderer.SharedMaterial.SetTextureOffset("_MainTex", offset);
ย ย }
}
private Renderer ren; ์ ์ธํ๊ณ void awake์์ ren = Getcomponent<Renderer>(); ํ๋ค์ ์ฐธ์กฐํด์ ์ฐ๋๊น ๋๋ค!
์๊ณ ํ์ด!