본문 바로가기
유니티5 독학 & 게임 제작

유니티5 독학하기 그 2번째 걸음-아직까지는 순조롭습니다.

by 인터넷떠돌이 2017. 5. 22.
반응형

안녕하세요?


게임엔진인 유니티5의 독학을 지난번 포스팅에서 시작하였으며, 이번 포스팅에서 독학하기 2번째 걸음을 옮기고자 합니다. 우선 첫번째 작업으로 지난번 작성한 test라는 c# 스크립트를 열어서 확인해 보았습니다.



이 스크립트를 드래그해서 Game object에 옮겨 놓는 것으로 제대로 장착시키기(?)를 하도록 하고 이제는 게임 오브젝트에 다른 컴포넌트를 추가하는 작업을 하도록 해보겠습니다.



유니티 화면의 상단에 있는 Inspector화면에서 add component라는 버튼을 누르면 위 스크린샷과 같은 화면이 뜹니다. 여기서 저는 Effects를 선택한 다음에, 하위 항목에 있던 particle을 선택하였습니다.



유니티5의 화면에 있었는 Scene화면에서는 위 스크린샷과 같이 입자들이 퍼지는 것 같은 연출이 일어나는 것을 볼 수 있었습니다. 이제 add component를 추가하는 것을 실습해 보았으니, 다음은 3차원의 물체를 움직이는 것을 실습해 보도록 하겠습니다.



여기서 실습을 해보니까, X좌표의 경우에는 +값을 입력하면-위 스크린샷의 우측 상단에 있는 Position항목의 X값에 +값을 입력하면 박스가 오른쪽으로 움직이고, 반대로 -값을 위 스크린샷처럼 입력하면 왼쪽으로 움직이는 것을 볼 수 있었습니다.



다음은 역시 Test.cs를 도로 연 다음에, 기존에 있던 Hello World를 삭제하고 대신 변수를 선언하도록 합니다. float는 실수값으로 소수점까지 포함할 수 있는 변수의 타입이며, bool은 true/false로 나오는 값을 받는 변수입니다.



다음은 이 선언한 변수들 앞에 public을 붙이도록 합니다. 그리고 나서 다시 유니티5의 화면으로 돌아가면, 다음과 같은 변화가 일어난 것을 볼 수 있습니다.



단지 변수앞에 public을 선언했을 뿐인데, 유니티5에서 각각의 변수에 대해서 일일히 변경을 할 수 있도록 변경이 가능한 항목이 Inspector윈도우에서 뜨는 것을 확인할 수 있었습니다.



다만 주의해야 할 것은, 유니티5에서 변경한 값이 바로 C# script에 반영이 되지는 않는 다는 것입니다. 그리고 듣자니 유니티5에서는 스크립트 상에서 수정한 값보다 유니티5의 Inspector윈도우에서 수정된 값이 먼저 반영된다고 합니다. 이것을 앞으로 주의해야 겠다는 생각이 듭니다.


다음은 void sum()이라고 임의의 함수를 추가하는 작업을 시작해 보았습니다. 이전에 했던 안드로이드 스튜디오와는 다르게 public이나 private를 붙이지 않았지만, 그래도 임의로 함수를 제작해서 특정 타이밍에 실행을 시킬 수 있다는 점이 유사하다고 할 수 있습니다. 여기서는 단순하게 10+10을 해서 그 결과를 출력해 보고자 합니다.



여기서 유니티5의 상단에 있는 플레이 버튼-흔히 비디오나 뮤직 플레이어에 있는 그 삼각형 버튼 맞습니다. 이 버튼을 누르면, Project 옆에 있는 Console창에 위 스크린샷과 같이 20이라는 값이 뜨는 것을 볼 수 있습니다. 여기서 하나 잊으면 안되는 것이, 위 스크린샷에 표시한 우측 상단의 느낌표가 들어간 버튼을 눌려야 스크립트가 실행한 결과를 볼 수 있다고 합니다.



이번 포스팅 마지막 실습으로 위 스크린샷과 같이 코딩을 변경해 보았습니다. 먼저 void로 되어 있는 반환값을 int로 바꾸어서 int sum()으로 바꾸어 보았으며, 이전에 print(result); 라는 구문을 return result;로 변경해 보았습니다.


이후 제가 몰라서 약간은 해메었는데, 위에서 int result=sum();이라고만 선언해서는 결과가 출력되지 않고, 여기서는 print(result);라는 구문까지 추가해 주어야만 했습니다. 유니티를 독학하면서 알게된 새로운 코딩법이지만, 저로서는 안드로이드 스튜디오를 독학하면서 알게된 void 함수명()이 사용하기 더 편하다는 생각이 듭니다.

반응형