Unity(4)
-
[Unity]개발#6 미니맵 만들기, 맵 이탈시 쓰러지는 애니메이션, 도착지 인식
1. 미니맵 만들기 - 미니맵을 만드는 과정 미니맵에 사용할 카메라를 생성하여 각도를 잘 맞춰준다. 프로젝트 - Create - Render Texture 생성 Rawlmage 생성해서 Texture에 아까 만든 Render Texture 넣기 아까 생성했던 카메라에 Target Texture에 Render Texture 넣기 2. 맵 이탈시 쓰러지는 애니메이션 맵 이탈을 막기 위해 맵 주변에 투명벽 (콜라이더) 설치후 태그는 'Wall' 이라고 지정해준다. void Update() { if (DeathCheck && animator.GetCurrentAnimatorStateInfo(0).normalizedTime >=0.9f ) //죽는 애니메이션이 끝나면 { transform.position = st..
2021.05.25 -
[Unity][개발#4]블록코딩, Canvas Group, 캔버스그룹 온오프, 코루틴문제
public void OnButtonClick() { gameObjectOpen.SetActive(true); gameObjectClose.SetActive(false); } 지금까지 항상 둘 이상의 캔버스를 사용할때는 버튼을 누를때 하나는 true를 반환하고 하나는 false를 반환했다. 그런데 비활성화된 캔버스의 하위 오브젝트를 찾을때 여러 어려움도 존재하고 코루틴을 사용하다보면 비활성화된 오브젝트의 코루틴을 실행되지 않는다는 오류를 보았다. 이를 해결하기 위해 캔버스가 비활성화 되지는 않지만 눈에 비활성화처럼 눈에 보이지 않고, 클릭이 불가능하게 설정하는 방법을 Canvas Group을 통해 해결하였다. public void OnButtonClick() { OpenCanvasGroup = gameO..
2021.05.12 -
[Unity][개발#3]반복문, for문, 블록코딩
저번 글에서 단일동작에 대한 블록코딩까지 완료되었다. 구현할 반복문은 for문이다. 아이디어는 for문에서 돌아갈 동작을 임시로 담아둘 커다란 박스를 하나 만들고 박스를 실행 시키는 방식이다. 고민인 점은 현 프로젝트는 VR을 고려하고 있기 때문에 웬만한 인터랙션은 버튼과 드래그로 하려고 한다. 그래서 텍스트를 받지 않을것이기 때문에 몇번 반복할지, 혹은 그 반복을 어떻게 정의해 줄지는 추가적인 논의가 필요하다 IEnumerator ForBox() // For()에서 돌아갈 블록들을 여기에 한번 저장을 한다. { int nSize = transform.childCount; for (int i = 0; i < nSize; i++) { GameObject Child = transform.GetChild(i)..
2021.04.29 -
[Unity][개발#2]단일동작 블록, 블록코딩,이동,회전
이전 작업물 단일행동을 가지고 있는 블록을 오른쪽 블록(Panel Main Loop)에 넣기 성공 단일 동작에는 Z축으로 1이동(블록에는 X로 되어있네요), 좌우 90도 회전, 180도 회전으로 규명했습니다. 구조설명 : Z축으로 1이동 스크립트명 : FunctionMove.cs 회전 스크립트명 : FunctionRotate.cs Panel Main Loop 에 블록이 들어왔음을 인식하는 스크립트명 : player_holder.cs player_hloder.cs public IEnumerator Go() //스타트버튼을 눌렀을때 실행되는 코루틴함수 { yield return new WaitForSeconds(1f); //1초 딜레이 Blocks = GameObject.FindGameObjectWithTa..
2021.04.29