'유니티'에 해당되는 글 5건

  1. 2017.06.22 타일맵과 몬스터 배치를좀더 센스있게
  2. 2017.06.12 맵생성과 캐릭터클래스
  3. 2017.06.07 타일맵 배치 제작
  4. 2017.05.24 오랜만에 다시시작
  5. 2017.05.10 unite2017 Tokyo

하루에 몇시간 안나지만

그래도 재미를 붙인것같다.


일단 저번까지 타일맵생성에 몬스터 배치까지는 했는데

(포스팅은 안했지만 몬스터 인공지능도 일단 준비해서 넣어뒀다.)


이몬스터가 벽위에도 서고 막, 구멍에도 서있고 이건아니잖아..

그래서 언덕도,벽도,구멍도아닌 일반 타일에만 서있게 했다.


로직은 심플하다

일단 타일맵 매니저가 맵정보를 갖고있고, 몬스터를 어디에 배치할지 정하는데

몬스터를 어디다 배치를 할지를 정해야하니까

맵을 먼저 생성시키는데 이 맵타일이 둘래는 벽이고

벽 이외에는 일단 지금은 별생각없이 완전랜덤인데

각 타일은 tileType을 enum으로 갖게되는데

그중 일반타일만 따로 추스려서 List에 집어넣고

그 일반타일 리스트를 랜덤으로 돌려서 몬스터 마릿수만큼 뽑아내고,

각 몬스터들을 차례대로 배치시키는..


이번에 좀 생각했던건

Enum을 int형으로 겟셋할려고할때 어찌하나..하고 고민해서

        private MobiusEnumSet.TileType tileType;
        public int TileType{
            get{
                return (int)tileType;
            }
            set{
    tileType = (MobiusEnumSet.TileType)TileType;
        }

이랬더니

겟은 되는데 셋이 안되는걸..

죄다 0이 셋 되버리는거다..


그래서 또 여기저기 물어보고 찾아보고

한 결과

        private MobiusEnumSet.TileType tileType;
        public int TileType{
            get{
                return (int)tileType;
            }
            set{
                if(Enum.IsDefined(typeof(MobiusEnumSet.TileType),value)){
     tileType = (MobiusEnumSet.TileType)value;

                }else{
                    tileType = MobiusEnumSet.TileType.wall;
                }
            }
        }

요래 쓰면 되는거였다.

셋에들어있는 value가 결국 기본적으로 셋에서 쓰이는 인수며,

이때 셋 안에 들어갈 (위의경우)TileType는 생략?무시 된다고 생각하면 됨


결국 이걸로 잘 움직이게 되어서,

        public void setTileType(int setTileType){
            tileType = (MobiusEnumSet.TileType)setTileType;
        }

요 함수는 필요없게돼었다.

아,

덤으로 홀타일이 연속으로 아래위에 배치될경우

위의 홀은 밑으로 이어질수있는 그래픽으로 재구성하게했다.

요것도 별 어려울건없고,

타일배치가 끝난후 

한번 더 for문으로 홀타일을 검색해서 그 홀타일의 밑타일을 검색해서 위의 겟셋을 이용해서

tileType을 비교해서 같은 홀일경우엔 그래픽을 변경시키는걸로 완료~


오늘까진 이정도 진척~

맵타일 그래픽 좀 더 준비 함


이제 몬스터 인공지능

(현재 3초마다 뭘할건지 행동을 정해서 그 행동을 할 수있도록 준비시켜둠)

을 좀 다듬어야(아니 다듬는 중이다 벌써..)


이거 왠지 생각보다 테스트가 빨리 진행되겠는걸?

'강아지발 이야기' 카테고리의 다른 글

타일맵과 몬스터 배치를좀더 센스있게  (0) 2017.06.22
맵생성과 캐릭터클래스  (0) 2017.06.12
타일맵 배치 제작  (0) 2017.06.07
오랜만에 다시시작  (0) 2017.05.24
Posted by 멋지다재규어

댓글을 달아 주세요


게임만들기는 재미있다.


일단.

내가 신이니까 ㅋ


이번엔 저번에 만들던 맵을 자동생한걸 제대로 위치시킨후 사방 벽을 벽타일로 감싸도록 했다.

물론 이후에 이 벽들중 게이트가 될곳을 또 뚫어줄 예정


그리고 오늘은 크리쳐 클래스를 만들고, 요 클래스를 계승시킨 인간,몬스터 클래스를 만들었다.

그리고 크리쳐 메소드에 이동메소드를 만들었다.


요 메소드를

인간은 컨트롤러로, 몬스터는 자동으로 움직이게할 예정


개인적으로

게임만들때의 테스트용 그래픽은 흑백으로 만드는거같다.

그림그릴때의 스케치같은 느낌으로

혼자서 모든걸 만들다보니까 한번에 칼라로 만들기가 좀 그르타

뎃셍 그리듯이 덩어리부터 그려나가

세세한부분은 나중에 완성시킬때에 하는걸로.

채색은 어느정도 캐릭터도 움직이고 빌드가 시작될 정도즈음 부터 할 예정


이번엔 제대로 만들어가려다보니..

재밌네


개인적으로 퍼즐게임을 참 좋아라하는데

게임만들기는 퍼즐게임을 푸는것과 비슷한것 같다.


분명 정답은 있는데, 그 보이지않는 정답을 실현시키기위해 여러가지 시행착오를 거치고,

각종 문서를 뒤지고, 인터넷에서 힌트를 얻어서 그리고 코딩하고, 움직여봤을때에

생각했던데로 움직여주었을때..

마치 퍼즐을 풀었을때와같은 달성감을 느낀다.


게임만드는것 자체가 게임인셈이다.


천천히 하지만 착실하게 만들어 갈 예정!

'강아지발 이야기' 카테고리의 다른 글

타일맵과 몬스터 배치를좀더 센스있게  (0) 2017.06.22
맵생성과 캐릭터클래스  (0) 2017.06.12
타일맵 배치 제작  (0) 2017.06.07
오랜만에 다시시작  (0) 2017.05.24
Posted by 멋지다재규어

댓글을 달아 주세요

오늘의 결과물


오늘은 타일맵을 지정한 수만큼 배치가 되도록 했다.

이게..하루만에 못했는데..


스크립트 일부를 보자면



tiles[i,j] = Instantiate(tileMaster) as GameObject;
tiles[i,j].transform.parent = field.transform;
tiles[i,j].transform.position = new Vector3(i * tileSizePixel/100,j * tileSizePixel/100,0f);
tiles[i,j].GetComponent<Tile>().setTileType(Random.Range(0,4));


요부분이아주그냥 애를 먹였다.

뭐에 막혔냐하면

프레하브를 바로 인스턴스화시켜서 부모까지 지정하려고 했더니 한번에 처리가 되지않았던것이었다.


결국 구글링


참고사이트


한번 변수에담고 그 변수를 부모지정하는걸로 해결..

그리고 유니티에서 복수배열지정도 덕분에 같이 헤맸다..


어쨌든 맵은 원하는대로 잘 나왔다..


이제 제대로 가운데배치한다던가

맵타일을 랜덤하게 배치한다던가

타일별 속성지정이라던가

타일개수에따라 크기가 조절되도록 한다던가


캐릭터랑 몬스터 클래스도 예약

'강아지발 이야기' 카테고리의 다른 글

타일맵과 몬스터 배치를좀더 센스있게  (0) 2017.06.22
맵생성과 캐릭터클래스  (0) 2017.06.12
타일맵 배치 제작  (0) 2017.06.07
오랜만에 다시시작  (0) 2017.05.24
Posted by 멋지다재규어

댓글을 달아 주세요

유니티로 게임개발

개발이라고해서 거창한건아니고..

그냥 놀거리 만드는중

간단한 기획서, 화면이동, 파라메터등등 기본적인건 구글문서랑 메모등으로 구비했고..


요 며칠새에 그래픽작업좀 하다가

오늘부터 유니티로 작업시작~


하도 오랜만이라..(맨 그래픽관련작업만 하다보니까..)

씬 이동부터 까먹었다..

물론 검색해서 바로 해결


오늘한일

신이동을 위한스크립트


changeScene.cs작성 후 씬이동 테스트까지

원래는 SceneManager로 할려고했는데 이미 UnityEngine.SceneManager가 있어서..

일단 씬이동 스크립트긴한데 버튼계열이 어느정도 메소드가 정해지면 이것도 범용적으로 사용할 수 있게 수정해야지

이름부터 ManagerButton 으로 바꾸자


버튼소재 투입


그래픽작업은 포토샵에서 하고있는데

UI관련은 한 파일에 레이어별로 제작중이고, 그중 신이동에 쓰일 버튼(범용적인 버튼)소재를 미리 사용

범용적으로 사용할거라 9슬라이스가 되도록 제작, 실제로 슬라이스로 버튼크기가 자유자재로 바뀔 수 있게 했당

아트라스화는 나중에 시키는걸로


에디터세팅

집에선 맥을 쓰느라 비주얼스튜디오 무료판을 쓸수가없기에

검색해보니 바로 걸리는게 VisualStudioCode 링크로 다운가능(맥사용자를 위한것임 윈도우는 비주얼스튜디오쓰면 됨)

Unity 기본내장 에디터 MonoDevelop 보단 훨 사용하기 편했다.

Unity기본 에디터설정은

메뉴바 Unity메뉴 - Preferences선택 - External Tools탭선택 - External Script Editor에서 드롭다운으로 검색후 설정    


폰트다운

검색하면 못찾을게 없는세상

무료 라이센트 폰트가 넘처났다.

원하는 폰트를 패밀리세트로 다운, 유니티에 투입,버튼에 실제로 사용해보니 썩 맘에든다.



다음할일


각 씬 연결

이제 각 필요한 씬들끼리 연결시키기를 해야함

이건 버튼으로 이동도 있지만, 조건으로 씬이동이 되는 경우도 있으니까

버튼클릭,조건을 디버그할수있게 준비해서 씬이동, 사이클 테스트

캐릭터제작

이번에 만드는건 픽셀풍으로 할거라..

맵은 어느정도 이미지가 그려졌는데 캐릭터가 아직 고민이다.

픽셀분위기맵에 매끄러운 캐릭터가 어떻게 보일런지

그반대 등등 테스트 해 봐야할게 좀 있다.

주변에 피드백도 좀 받고

필요한어셋다운,준비

anima2D는 필수겠고, 유니티짱 툰셰이더도 준비해두자

UVscroll스크립트준비

특정맵은 UV스크롤로 애니메이션이 가능할거같으니까

이건 준비해두자.


뭐 이정도면 이제 시작이라 반은 왔네...;;


열씸히 만들자!

'강아지발 이야기' 카테고리의 다른 글

타일맵과 몬스터 배치를좀더 센스있게  (0) 2017.06.22
맵생성과 캐릭터클래스  (0) 2017.06.12
타일맵 배치 제작  (0) 2017.06.07
오랜만에 다시시작  (0) 2017.05.24
Posted by 멋지다재규어

댓글을 달아 주세요

unite2017 Tokyo

일상 2017.05.10 00:03 |

unite2017 tokyo

각종 프레젠테이션 자료들이 올라와있으니 관심이있다면 체크!


유니티 큰 이벤트
유나이트2017 동경이 5월8일,9일에 열렸다

골든위크 끝나자마자 이게 왠 이벤트냐..
덕분에 회사를 2주가량 쉬게됐네..바빠죽겠는데 

어쨌든 한동안 유니티 손놓고있다가
이런 이벤트를 함 가보니..
티셔츠도 받고 좋네..
엄청난 기능추가와 보다 간편해지고, 퍼포먼스도 향상된

슈퍼게임엔진이 되어가고있다는느낌이었다.

이번에 눈에 띈건(지극히 개인적으로 느낀점)
* VR/AR등의 강연이 꽤 많았다는것
* 신기능 타임라인(2017버젼이후)을 이용한 각종 리얼타임무비
* 어셋번들의 기능강화(개선)등등
였다

회장은 뎁따 넓었다..
동경국제포럼

배울것도 참 많았는데
이미 알고있는내용도 일부 강연에 나와서
전반적으로 도움이 될만한 내용은(들은것 중에서)
40%정도?

그래도 하루에
오전2강연
오후6강연을 들었으니..

고딩 이후로 하루8시간을 수업하는 분위기의 이틀이었다..
이건뭐 일보다 더힘들어..

암튼 많은 신기술을 알게되어 쫌 사그라들었었던 열쩡이 살짝 타올랐다..

열씨미해서 얼른 돈벌어야지!

[지루한 사진들 펼치기]


이 장소를 Daum지도에서 확인해보세요.
아시아 일본 | 도쿄
도움말 Daum 지도

'일상' 카테고리의 다른 글

근황잡설:해외 보드게임 직구  (0) 2017.08.22
어떤 에스 라는 배  (0) 2017.06.10
unite2017 Tokyo  (0) 2017.05.10
게임기 청소  (0) 2017.04.26
2016 어느여름날  (0) 2016.10.28
간만에 블로그 관리  (0) 2016.05.20
Posted by 멋지다재규어

댓글을 달아 주세요