강의

멘토링

커뮤니티

게임 개발

/

게임 프로그래밍

절대강좌! 유니티6 - 네트워크 게임 개발 마스터클래스 (Part3) : Netcode로 개발하는 2D RPG

미니 RPG 2D 게임을 제작하며 2D 개발 기법을 익히고, 완성된 게임을 Netcode for GameObject로 전환해 네트워크 게임으로 확장하는 과정을 배우는 강좌입니다. 2D 게임에 필수적인 타일맵의 다양한 기능을 다루고 있으며, 자연스럽게 SOLID 원칙을 준수한 클린 코드 작성 기법을 학습할 수 있도록 준비했습니다. 또한, 최신 유니티 6 버전에서 변경된 Netcode API를 활용한 네트워크 게임의 기초를 다지는 강의입니다.

(5.0) 수강평 10개

수강생 74명

  • 이재현
유니티
유니티2d
mmorpg-유니티
네트워크프로그래밍
netcode
Unity네트워크unity2d유니티6

먼저 경험한 수강생들의 후기

수강 후 이런걸 얻을 수 있어요

  • 유니티 2D 게임 개발 - 타일맵, AutoTile, Rule Tile, Animated Tile

  • Netcode for GameObject

  • Lobby, Relay, Matchmaking SDK 활용

  • 최신 Multiplayer Service SDK를 활용한 Quick Join

  • SOLID 원칙을 준수한 클린 코드

Netcode for GameObject를 활용한 미니 2D RPG 네트워크 게임

본 강의는 Netcode for GameObjects(NGO)의 기초부터 로비, 릴레이, 매치메이킹까지 단계적으로 학습하는 과정을 다룹니다. 강의에서는 타일맵 기반의 2D RPG 게임 개발을 실습하며, Netcode 기능을 적용해 네트워크 게임 제작 기법을 익힙니다. 대부분의 Netcode 강좌에서는 위치와 애니메이션 동기화 처리만 다루고 있는데 반해서 실전 프로젝트에서 활용할 수 있는 Lobby, Relay, Matchmaking 기능을 실습합니다.

특히, Unity 6부터 새롭게 제공되는 Multiplayer Service를 통해 네트워크 게임 개발을 보다 편리하게 지원하는 API를 활용합니다. 이에 따라 기존 Lobby, Relay 기능을 먼저 학습한 후, Multiplayer Service를 이용한 랜덤 매치메이킹 기능까지 구현해 볼 수 있도록 구성하였습니다.

LittleSword Netcode Project

전투시스템

이런 내용을 배워요

1⃣ 타일 맵 기반의 2D 게임 개발 기법

2D 타일맵의 기본 사용법을 익히고, 단순 반복 작업을 줄여주는 Rule Tile 기능을 학습합니다. 이어서 유니티6에 새롭게 추가된 Auto Tile을 활용하여 맵을 효율적으로 디자인하고, 다채로운 2D 연출을 위해 Animated Tile 기능을 적용합니다.

Rule Tile, Auto Tile, Animated Tile 활용

전투씬의 타일맵 디자인

전투 시스템

2⃣ 커스텀 에디터 활용 

커스텀 에디터는 인스펙터나 별도의 뷰를 확장·재구성할 수 있는 기능으로, 개발 프로세스에서 다양한 용도로 활용됩니다. 본 강의에서는 버튼을 통해 데이터 초기화나 피격 데미지 적용, 캐릭터의 상태를 변경하는 기능을 구현하며, 이를 통해 기초를 다집니다. 나아가 추후에는 여러분이 프로젝트에 필요한 기능을 직접 제작할 수 있도록 기반을 마련합니다.

3⃣ OOP 구조와 상태 패턴 구현

본 강의에서는 주인공 캐릭터를 상속 구조로 설계하여 확장가능하도록 구현하고, 적 캐릭터는 NPC AI 구현 자주 활용되는 상태 패턴을 적용합니다. 기본적인 상태 패턴의 동작 원리와 구현 방법을 학습하며, 생성자를 통한 Context 전달 방식과 공격 상태의 최적화 기법까지 다룹니다. 또한, 기본 게임 로직과 Network 로직을 분리해 SRP 원칙을 준수합니다.

  • 제너릭 싱글턴 패턴

  • 옵저버 패턴

  • 의존성 주입

4⃣ Netcode for GameObject

본 강의에서는 Unity Netcode for GameObjects의 기본 활용법을 학습하고, 로비(Lobby)와 릴레이(Relay) 기능을 통한 매치메이킹 실습을 진행합니다. 기존의 Lobby, Relay 패키지가 Multiplayer Service로 통합되면서, 더욱 간편하게 로비 및 릴레이 기능을 활용할 수 있는 Multiplayer Service SDK 또한 함께 다룹니다.

  • 네트워크 토폴로지(Topology)의 이해 : Server/Host/Client

  • Transform, Animation 동기화 처리

  • 서버 권한 피격 판정

  • Network Variable 활용법

  • ServerRPC, ClientRPC, RPC 활용법

  • Lobby 생성 및 조인

  • Relay 서비스를 활용한 연결 (aka. 포톤 클라우드)

  • Multiplayer Service SDK를 활용한 퀵 조인 (랜덤 매치메이킹)

Lobby

Lobby UI

수동 Lobby 생성 및 Quick Join 구현

수강 전 참고 사항

실습 환경

  • 운영 체제 및 버전(OS): Windows, MacOS

  • 사용 도구: Unity 6.2.x , Rider (Visual Studio, VSCode 관계없습니다.)


학습 자료

  • 매 강의마다 프로젝트 코드를 제공하며 마지막 강의에 최종 프로젝트를 제공합니다.

  • 분량 및 용량: 각 섹션별로 학습 자료 제공

선수 지식 및 유의사항

  • 유니티 : 기본 사용법은 알고 계셔야 합니다.

  • C# : 기초적인 C# 문법 정도 이해하신다면 따라오는데 무리가 없습니다.


이런 분들께
추천드려요

학습 대상은
누구일까요?

  • 유니티 Netcode를 활용해 네트워크 게임을 개발하려는 분

  • SOLID 원칙에 입각한 구조화 된 프로그래밍을 학습하려는 분

  • 유니티 6.x의 최신 Netcode API에 대해 학습하려는 분

선수 지식,
필요할까요?

  • C# 프로그래밍 기초

  • 유니티 기초 사용법

  • 네트워크 기초 지식

안녕하세요
입니다.

419

수강생

31

수강평

44

답변

4.9

강의 평점

6

강의

안녕하세요, 이재현입니다.

1인 게임 개발자를 꿈꾸며 유니티를 독학으로 시작했고, 2009년부터 2012년 까지 1인 개발로 모바일 게임 10여종을 출시했습니다. 절대강좌! 유니티 출간 및 오프라인 강의를 진행했습니다. 강의를 진행하면서, 잘 아는 것과 잘 가르치는 것은 다르다는 사실을 매번 깨닫고 있습니다. 이러한 경험을 바탕으로, 제가 가진 지식을 여러분들께 더 효과적으로 전달하기 위해 늘 노력하고 있습니다.

이번 강의가 여러분께 좋은 출발점이 되어, 즐거운 게임 개발자의 세계로 나아가는 데 작은 보탬이 되기를 기원합니다. ~


주요 강의 이력

  • 패스트캠퍼스 - 유니티 캠프 1기 ~ 8기

  • 팀 스파트르타 온라인 튜터

  • T아카데미

  • NHN 엔터테인먼트

  • 넷마블 게임아카데미

  • ETRI (한국전자통신연구원)

  • 한콘진, 경콘진, 성남산업진흥원

  • KAIST, 서강대, 중앙대, 한성대, 단국대 특강

주요 활동

  • 절대강좌! 유니티 집필 (일본, 중국 출판)

  • 유니티 UNITE 2014 세션 특강

  • 유니티 UNITE 2018 핸드온 세션 특강

  • 유니티 인더스트리 2022 핸드온 세션 특강

  • 유니티 코리아 공인 마스터스 2기부터 5기까지 활동

     

 

커리큘럼

전체

41개 ∙ (9시간 41분)

해당 강의에서 제공:

수업자료
강의 게시일: 
마지막 업데이트일: 

수강평

전체

10개

5.0

10개의 수강평

  • 양승근님의 프로필 이미지
    양승근

    수강평 5

    평균 평점 5.0

    5

    49% 수강 후 작성

    멀티플레이 기능을 공부하러 왔는데 항상 강사님의 깔끔한 코딩을 보고 많이 배웁니다. 더불어 라이더로 한 번 변경해봤는데 왜 이제야 알았나 싶네요.

    • 이재현
      지식공유자

      소중한 수강후기 감사합니다. 라이더 정말 편하실거에요~ 완강하시길 응원합니다~

  • 정현철님의 프로필 이미지
    정현철

    수강평 6

    평균 평점 5.0

    5

    32% 수강 후 작성

    • 김성관님의 프로필 이미지
      김성관

      수강평 18

      평균 평점 3.5

      5

      88% 수강 후 작성

      유니티 에디터만 절대강좌 책 1권으로 간단히 익히고 들었는데, 매우 어렵다. 설명은 잘해주신다. 앞선 강의에 선수과목을 들었다고 생각하고 진행하는 강의라 모르는 부분이 많기에 코드 부분은 거의 따라 가지 못했지만 따라치면서 그대로 실행되게 하는데도 강의시간보다 3배는 걸렸다. 2회독 3회독을 하면서 코드를 찬찬히 살피면 큰 도움이 될 것 같다.

      • 이재현
        지식공유자

        소중한 후강 후기 감사드려요. 차근차근 복습하시면서 모르는 부분을 채워가시면 분명 도움이 되실겁니다. 마지막까지 완강하시길 응원합니다.

      • 완강했습니다. 감사합니다!

    • 까만돌님의 프로필 이미지
      까만돌

      수강평 67

      평균 평점 4.8

      5

      32% 수강 후 작성

      소중한 강의 감사합니다. 다음에는 3D도 부탁드립니다.

      • 이재현
        지식공유자

        소중한 후기 감사합니다. 3D 적극 고려 하겠습니다.~ 꼭 완강하시길 응원합니다.

    • DongJu Yoo님의 프로필 이미지
      DongJu Yoo

      수강평 1

      평균 평점 5.0

      5

      100% 수강 후 작성

      Netcode for GameObject 를 활용한 네트워크 기능 개발에 대한 학습 자료가 많지않았는데 정말 많은 도움이 됐습니다. 추후 기술선정에 있어 선택지가 늘어나 만족스럽습니다.

      • 이재현
        지식공유자

        도움이 되셨다니 저도 기쁩니다~ 소중한 후기 감사합니다.

    월 ₩24,200

    5개월 할부 시

    ₩121,000

    이재현님의 다른 강의

    지식공유자님의 다른 강의를 만나보세요!

    비슷한 강의

    같은 분야의 다른 강의를 만나보세요!