프로그래밍 언어 입문서가 아닌 프로그래밍 기초 개념 입문서
문과생, 비전공자를 위한 프로그래밍 입문책입니다.
jobGuid 꽃미남 프로그래머 "Pope Kim"님의 이론이나 수학에 치우치지 않고 실무에 곧바로 쓸 수 있는 실용적인 셰이더 프로그래밍 입문서 #겁나친절 jobGuid "1판의내용"에 "새로바뀐북미게임업계분위기"와 "비자관련정보", "1판을 기반으로 북미취업에 성공하신 분들의 생생한 경험담"을 담았습니다.
Posted by 밥을먹는선비

이번부터 한번은 일리히트 한번은 유니티를 번갈아 강좌를 해보도록 하겠습니다.

아무래도 일리히트만 했더니 너무 마이너하게 간다는 생각이 들어 고민을 많이했습니다. 유니티의 탈을쓴 일리히트엔진강좌(??먼소리지?)정도라고 오해를 해주시면 감사하겠습니다.

이것도 반응 시원찬으면 언리얼스크립트로 바꾸도록하겠습니다. ㅡ.ㅡ;;




본론으로....

오늘은 첫시간이니 디버깅 객체에 대해서 좀 알아보도록하겠습니다.

웹을 하셨던 분들은 아마도 디버깅을 위해서 alert() 이나 console.log() 등의 함수들을 많이 썻을겁니다. 

유니티에서는 Debug 라는 객체를 제공합니다.

Debug.Log() 라는 함수로 콘솔창에 메씨지나 변수 값들을 출력해 보실수있습니다.

일단 새로 프로잭트를 만들고 다음과 같이 레이 아웃을 세팅합니다.



새로운 씬을 만듭니다.



카메라 객체 하나만 있는 초기 상태입니다.



프로잭트 창에 마우스 우클릭후 나온 메뉴에서 자바스크립트를 추가합니다.



이름을 hellounity하시고 오픈 버틍을 눌러줍니다.



모노디벨로퍼가 실행되고 소스창이 나옵니다.




아래와 같이 소스를 수정하고 세이브를 합니다.



 다시 유니티 창으로 돌아와서 프로잭트창에 있는 방금 편집한 hellounity.js를 카메라 오브잭트에 끌어다 줍니다.



Main Camera 인스펙터창에 스크립트가 추가 된것 확인



실행시켜보면 맨아래에 hello unity가 찍혀있음.
(글씨 왼쪽의 느낌표를 눌러주면 콘솔창이 따로 팝업됨)

  

Debug.Line() 이용해서 즉석해서 디버깅용 직선을 그릴수있습니다.

픽킹광선을 만들어 디버깅라인을 출력 해보도록 하겠습니다.

raycast.js를 만들고 아래와 같이 작성합니다.

GameObject.Find 함수는 이름으로 다른 오브잭트를 찾는 함수입니다.

ScreenPointToRay 는 이차원 마우스 좌표를 삼차원 광선으로 만들어 주는 함수입니다.


GameObject 메뉴에서 Sphere 를 추가 해주고 이름을 ball로 합니다.


빈 오브잭트를 만들어줍니다.



방금 만든 오브잭트를 선택하고 BoxCollider를 추가시켜줍니다.




BoxCollider 스케일을 조정하고 다음과 같이 스크립트를 연결시켜줍니다.




실행결과



 


댓글을 달아 주세요

  1. Favicon of https://gamedevforever.com 대마왕J 2012.03.17 14:59 신고  댓글주소  수정/삭제  댓글쓰기

    오옷 좋아요 이 강좌 >_< / 저같은 초보를 위해서 쉽게 써주세요!!

    • 도플광어 2012.03.18 20:39  댓글주소  수정/삭제

      대부분 유니티 강좌가 유료거나.. 아니면 디자이너를 위한 단순 기능 사용위주라서...
      프로그래머뿐만아니라 비프로그래머도 쉽게 프로그래밍을 시작해볼수있도록 강좌를 꾸며나갈까합니다.
      감사합니다. ^^;

  2. Favicon of https://gamedevforever.com 친절한티스 2012.03.17 18:37 신고  댓글주소  수정/삭제  댓글쓰기

    오옷~

    유니티다!! 유니티가 나타났다!!

    좋은 강좌 감사합니다.

  3. Favicon of https://gamedevforever.com 죠쉬 2012.03.18 12:51 신고  댓글주소  수정/삭제  댓글쓰기

    오오오오오오오~~~~~~~~
    원했던 바로 그 강좌 임미닷

    그런데, 내 사랑 어셈블리를 바퀴벌레 취급 하시다니
    님 고소

    • 도플광어 2012.03.18 20:40  댓글주소  수정/삭제

      오랜기간 생존할거며 그리고 또 앞으로 그어떤 생명체들보다 최후까지살아남을것이라는 의미에서 저의 짧은 소견으로 어셈블러를 바퀴벌레에...비유를 해버린거같습니다.
      죽을 죄를 지었습니다. 고소를 부디 취하해 주세요. 엉엉엉!!!

  4. Favicon of http://blog.naver.com/sion1116 짜짜로니 2012.03.29 15:59  댓글주소  수정/삭제  댓글쓰기

    헛 유니티~
    C# 스크립트를 사용하고 있는 저로서는
    '자바스크립로 전향해야 하나?' 하는 고민이 드는군요.
    그럼 C#과 C#스크립트의 관계는 어떻게 되나요?
    이것도 파충류 포유류인가요?

    • Favicon of https://gamedevforever.com 밥을먹는선비 2012.04.05 00:38 신고  댓글주소  수정/삭제

      사실 유니티엔진은 JS보단 C#에 최적화 된거같고요. 일단은 c#쓰시고요. 당장은 그래도 미래를 생각하신다면 조금씩 공부해보시는것도 나쁘지않을거같네요.

  5. Favicon of https://gamedevforever.com ozlael 2012.03.30 12:10 신고  댓글주소  수정/삭제  댓글쓰기

    "ㅂㅌ같은 우리회사 플머아자씨"에서 ㅂㅌ는 병특을 이야기 하는건가요? 절대 플머가 변태라는 소리는 아닐꺼야... 암...

  6. 채소룡 2012.03.30 15:03  댓글주소  수정/삭제  댓글쓰기

    교수님 안녕하세요 (_ _)

    유니티 + irrlicht 기대 됩니다 +_+

  7. Favicon of https://gamedevforever.com 김포프 2012.04.02 10:48 신고  댓글주소  수정/삭제  댓글쓰기

    왠만하면 와콤 하나사셔서.... 글자를 위에 쓸때 이쁘게...... 쓰시죠....ㅎㅎㅎ 저건 마우스인게 너무 티가 나요!

  8. 옥색바다 2012.06.13 09:31  댓글주소  수정/삭제  댓글쓰기

    Unity3d를 이용하는 디자이너로써..
    프로그램 툴을 모르는 사람으로써..
    매우 기대되고 흥분되는 강의 제목이네요^^
    열심히 따라하겠습니다.^^