๋ฑ ๋ชฉํํ๋ ๋นํ๊ธฐ ์ด๋๋ฐฉ์์ ๊ตฌํํด๋ด์ ๋๋ฌด ๊ธฐ์ฉ๋๋ค
ย ย ย Vector3 originalPos;
ย ย ย Vector3 movePos;
ย ย ย void Update ()
ย ย ย {
ย ย ย ย ย ย ย Move();
ย ย ย }
ย ย ย private void Move()
ย ย ย {
ย ย ย ย ย ย ย if (Input.GetMouseButtonDown(0))
ย ย ย ย ย ย ย {
ย ย ย ย ย ย ย ย ย ย ย originalPos = Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y));
ย ย ย ย ย ย ย }
ย ย ย ย ย ย ย else if (Input.GetMouseButton(0))
ย ย ย ย ย ย ย {
ย ย ย ย ย ย ย ย ย ย ย movePos = Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y));
ย ย ย ย ย ย ย ย ย ย ย this.transform.position = this.transform.position + (movePos - originalPos);
ย ย ย ย ย ย ย ย ย ย ย originalPos = Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y));
ย ย ย ย ย ย ย }
ย ย ย }
์ด๋ฐ ์์ผ๋ก ๊ตฌํํ ์ํ์์
๊ทธ๋ฐ๋ฐ ์ ๊ฐ mapRotation์ด๋ผ๋ ์คํฌ๋ฆฝํธ์์ static์ผ๋ก ์ง์ ํ rotatingTime์ด๋ผ๋ ๋ ์์ด 1์ผ ๋์๋ง Move()๋ฅผ ํ์ฑํ์ํค๊ณ 0์ผ ๋์๋ ๋นํ์ฑํ์ํค๊ณ ์ถ๊ฑฐ๋ ์
๊ทธ๋์
ย ย ย void Update ()
ย ย ย {
ย ย ย ย ย ย ย if (mapRotation.rotatingTime == 1)
ย ย ย ย ย ย ย ย ย ย ย Move();
ย ย ย }
์ด๋ฐ์์ผ๋ก ํด๋ดค๋๋ฐ์
์ ๊น๋์ ๋นํ๊ธฐ ์ด๋์ด ๋ฉ์ถ๊ธฐ๋ ํ๋๋ฐ ์์น๋ ๋ฐ๋์ด์ ธ์๋๋ผ๊ณ ์
์ค๋ช ์ฉ ์์งค
๋์๊ฐ๋ ๋์์ rotatingTime์ด 0์ด ๋ฉ๋๋ค
๋ฌธ์ ๋ ๋์๊ฐ๋ ๋์์ ์ ๋ ๊ฒ ๋ง์ฐ์ค๋ฅผ ์์ง์ด๋ฉด ๋๋ฌ์ ๋ ์์น๊ฐ ๋ฐ๋์ด์์ต๋๋ค
์ด๊ฑธ ๋ฐฉ์งํ๋ ค๊ณ rotatingTime์ด 0์ผ ๋์๋ ๋ง์ฐ์ค ํด๋ฆญ์ ๋ฐฉ์งํ๋ฉด ๋์ง ์์๊น ์ถ์ด์ ์ฌ์ญค๋ด ๋๋ค
์๋๋ฉด ๋ค๋ฅธ ๋ฐฉ๋ฒ์ด ์๋ค๋ฉด ๋ง์ํด์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋คใ
ใ
์ ๊ฑฐ ๋กํ ์ดํธ ์ํฉ์์๋ ๊ณ์ ๋๋ฅด๊ณ ์์๋ ์ ๋ ๊ฒ ๋๋ค๋๊ฑด๊ฐ์ผ?
๊ณ์ ๋๋ฅด๊ณ ์์ด์ ์ ๋ ๊ฒ ๋๋ค๋๊ฑด ๋จ์ ํ์ด๋ฐ์ด ์ด์ง ์ด๊ธ๋๋ค๋๊ฑฐ๋๊น 0์ด ๋ ๋ ๋ฒํผ์ ๋๋ฅด๊ณ ์์ผ๋ฉด ์ค๋ฆฌ์ง๋ ํฌ์ง์ ๊ฐ์ ๋ค์ ์ฐ์ด์ฃผ๋ฉด ๋ ๊บผ ๊ฐ์๋ฐ.....
๋ค์ ์ฐ์ผ๋ผ๋๊ฒ else if (Input.GetMouseButtonDown(0) && mapRotation.rotatingTime == 0) {originalPos = Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y)); } ์ด๋ ๊ฒ ๊ทธ๋ฅ ๋๊ฐ์ด ์ฐ๋ฉด ๋๋๊ฑฐ์์??
๊ฐ๋จํ๊ฒ ๋ง์๋๋ฆฌ๋ฉด ๊ทธ๋ฅ ๋์๊ฐ๋ ์์ค์๋ ๋ญ์ง์ ํด๋ ๋นํ๊ธฐ๊ฐ ์์์ง์ด๊ฒ๋ง ํ๋ฉด ๋๋๋ฐ ๊ทธ๊ฑธ ๋ชปํ๊ฒ ์ด์...ใ
๊ทธ ๋กํ ์ดํธ ํจ์์๋ค๊ฐ ๋๋๋ ์ํฉ์์ ์ดํ๋ฌธ ์ถ๊ฐ ์์ผ์ ์ค๋ฆฌ์ง๋์ ์ฐ์ด์ฃผ๋ฉด ๋ ๋ฏ ใ ใ // ๊ทผ๋ฐ ํ ์์ง์์ ํฝ์ค๋ ์๋๊ณ ์ ๋ฐ์ดํธ์๋ค๊ฐ ๋ฃ์ด๋๋ฉด ๋์ค์ ๋๋ ๋๊ธด๋น
์ผ์ด ์ ์๋๋ค์ ์ฒ์ฒํ ๊ณ ๋ฏผํด๋ด์ผ๊ฒ ์ด์...๊ทธ๋ฆฌ๊ณ ๋๊ธฐ๋๊ฑฐ ๋ฐฉ์งํ๋ ค๋ฉด ์ Update()๋ฅผ FixedUpdate()๋ก ๋ฐ๊พธ๋ผ๋ ๋ง์์ด์์ฃ ? ๊ฐ์ฌํฉ๋๋น
ํ์ด ์ฐ๋ ์ด๋ ๋ฐฉ์ ์์ฒด๊ฐ ํ ๋ ํฌํธ ๊ฐ์ด ์์ง์ด๋ ๋ฐฉ์์ด๋ผ ์ ๊ฑด ๋์๊ฐ๋๊ฐ ๋ฌธ์ ๊ฐ ์๋๋ผ ๋์๊ฐ๊ณ ๋์ ๋ฉ์ถฐ์๋ ๋์์ ํฌ์ง์ ๊ฐ๋งํผ์ด ์ ์ฉ ๋๋๊ฑฐ ๊ทธ๊ฒ ๋ฌธ์ ์ธ๊ฑฐ๋ผ๊ณ ์๊ฐํด ๊ทผ๋ฐ ๋ง์ฐํ ๋ด์๊ฐ์ผ๋ฟ์ด๋๊น ์ฐธ๊ณ ๋ง ํด์คญ ์ผ๋ฅธ ํด๊ฒฐ ํ๊ธธ ๋ฐ๋๊ป ํ์ดํ ใ ใ //
๊ทธ๋ฅ ์คํฌ๋ฆฝํธ๋ฅผ ๋ฐ๋ก ๋นผ์ mapRotating์ด 0์ผ ๋์ ์คํฌ๋ฆฝํธ๋ฅผ ๋นํ์ฑํ์ํค๊ณ ๋ค์ 1๋๊ณ && ๋ง์ฐ์ค ๋์ ๋ ๋ค์ ํ์ฑํํ๋๋ก ํ๋๊น ๋๋ค์ใ ใ ๋๋ ๊ธฐ์๋น ๊ณ ๋ง์์ใ ใ
if (mapRotation.rotatingTime == 1) ์ Move()๊ฐ ์๋๋ผ this.transform.position = this.transform.position + (movePos - originalPos); ์๋ค ๊ฑธ์ด๋ด
์งค ๋ณด๋๊น ํน์ REVOLVER360๊ฐ์๊ฑฐ ์๊ฐ์ค?
์ฐพ์๋ณด๊ณ ์๋๋ฐ ๊ทธ๋ฐ๊ฑฐ๋ ์๋๊ตฌ ์ข ์คํฌ๋กค ํก์คํฌ๋กค ์๋ค๊ฐ๋คํ๋ ๊ฒ์์ด์์ ๋ชจ๋ฐ์ผ ์ ์ฉ์ผ๋ก - dc App
์คํ ์ดํธ ๊ด๋ฆฌํ๋ฉด ๋๋ ๊ฒ ์๋?