• Home
  • About
    • KKsDev photo

      KKsDev

      게임 프로그래머를 목표로 Unity, C#을 공부하고 있습니다.

    • Learn More
    • Email
    • Github
    • Steam
  • Posts
    • All Posts
    • All Tags
  • Projects

내일배움캠프 16일차 TIL

07 Aug 2023

Reading time ~1 minute

내일 배움 캠프 8기를 시작하는 마음

생각보다 짧았던 사전 캠프가 끝이 나고 내일 배움 캠프 8기 본 캠프가 시작 되었다.

사전 캠프에서 함께 공부하면서 혼자 공부할때 보다 훨씬 낫다는걸 느꼈는데 본 캠프가 시작되니

함께 팀 프로젝트도 시작하게 되었다. 팀 프로젝트는 처음 해보고 12시간 앉아서 공부하는 것은

쉽지는 않지만 함께 달리다보면 금방 12월이 될것 같다고 생각한다.

오늘 공부한 내용

  1. 리눅스, Git, GitHub 기본 명령어.

  2. 첫번째 팀 프로젝트 게임 구조 설계 및 역할 분담

  3. GameManager 작성 시작

nbcbanner

리눅스, Git, GitHub 기본 명령어.

첫 특강으로 Git의 명령어에 대한 강의를 해주셨다.

Git을 평소에 Git Desktop을 이용해 사용했는데 협업을 위해서 사용해 본적은 없었고,

명령어는 잘 몰랐기 때문에 많은 도움이 된 것 같다.

git switch directoryName
git add .
git commit -m " "
git push origin directoryName



첫 번째 팀 프로젝트 게임 구조 설계 및 역할 분담

첫 번째 팀 프로젝트로 기초반 4주차 강의 때 만들어본 카드 뒤집게 게임을 바탕으로

여러 기능을 추가해서 팀원 카드 뒤집기 게임을 제작하게 되었다.

팀 프로젝트는 처음이였는데 팀원 분들이 잘 이끌어 주셔서 인터페이스를 맞추고 구조를 설계한

후 역할 분담을 하였고 Gamemanager 부분을 담당하게 되었다.



## GameManager 작성 시작

GameManager 작성을 시작했다. 다른 부분은 담당한 팀원분이 만들고나야 완성을 할 수 있어서

먼저 카드를 생성하고 배치하는 부분을 만들기 시작했다. 전에 강의에서는 System.Linq 라이브러리를

사용해서 카드를 섞는 부분을 일단 구현했는데 내일 좀 더 수정을 해봐야겠다.

void CardShuffle()
{
    int[] cards = new int[cardNum];

    for (int i = 0; i < cards.Length; i++)
    {
        cards[i] = i / 2; // 빈자리 n에 카드를 넣는다.
    }

    cards = cards.OrderBy(x => Random.Range(-1.0f, 1.0f)).ToArray();
    
    for(int i =0; i< cards.Length; i++)
    {
        GameObject newcard = Instantiate(card);
        newcard.transform.parent = cardSlot.transform;
        float nextX = cardSlot.transform.position.x + i % 4 * 1.4f;
        float nextY = cardSlot.transform.position.y + i % 4 * 1.4f;
        newcard.transform.position = new Vector3(nextX, nextY, 0);

        newcard.transform.Find("front").GetComponent<SpriteRenderer>().sprite
            = Resources.Load<Sprite>("" + cards[i].ToString());
    }

}

nbcthumbnail



TIL내일배움캠프스파르타 Share Tweet +1