inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

176만명의 커뮤니티!! 함께 토론해봐요.

안녕하세요 어플 에서 실행

해결됨

[Unity] 함께 만들어가는 방치형 게임 개발

안녕하세요 선생님 컴퓨터로 강의 실행은 잘되는데 인프런 어플로 재생했을때 34강 부터 실행이 안됩니다 ㅠㅠ 동영상을 준비중에 있습니다 이렇게 나옵니다 확인 부탁드립니다

  • C#
  • unity
  • firebase
  • 게임기획
  • json-parsing
anhyeokjun 댓글 3 좋아요 0 조회수 219

UI 창이 안떠요

해결됨

유니티 시스템 프로그래밍 Pt.1 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지

UI 화면 관리 시스템 Pt4와 게임설정 강의에서 팝업 창과 설정창이 안뜹니다.. 하이어라키 창에서는 창이 존재는 하는데 씬창과 게임 창에서 보이지 않습니다.. .

  • C#
  • unity
  • 객체지향
댓글 2 좋아요 0 조회수 304

지금 강의의 유니티 클라를 IOCP 서버와 연동하는 것

해결됨

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)

안녕하세요. 서버를 IOCP로 준비 중입니다. 레퍼런스는 루키스님 C++ 서버 강의를 생각하고 있습니다. 문제가 클라이언트인데 지금 강의가 UE5 + IOCP 연동뿐이라서 그것만 참고하기는 부족하다는 생각이 들었습니다. 그래서 컨텐츠까지도 구현되어 있는 유니티 클라 강의를 일단 따라가고 서버는 C++ IOCP와 연동하고 싶은데, 이게 될까 싶어서 문의 드려 봅니다. 물론 현업자나 경력자 입장에서는 되겠죠. 수많은 서비스가 이종 언어 간에도 잘 돌아가니까요. 신입 공채 지원이 아니라 경력 지원으로 들어가려고 생각 중이기 때문에, 이걸 이뤄내면 참 좋겠지만 걱정이 앞서는 건 사실입니다. 제가 현재 결제해 둔 루키스님 C# 쪽 강의가 Part4: 게임서버, Part5: 데이터베이스, Part7: MMO 컨텐츠 구현, Part9: MMO 컨텐츠 구현 이렇게 4가지입니다. 클라를 C#으로 할 거면 Part3: 유니티도 결제해야 할 것 같긴 한데, 이 험난한 길을 가고자 하는 한 마리 늙은 양에게 조언 부탁드립니다.

  • C#
  • unity
literate_t 댓글 2 좋아요 0 조회수 378

데드락 이렇게 이해했는데 맞을까요?

미해결

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버

class SessionManager { static object _lock1 = new object(); public static void Test() { lock (_lock1) { UserManager.TestUser(); } } public static void TestSession() { lock (_lock1) { } } } class UserManager { static object _lock2 = new object(); public static void Test() { lock (_lock2) { SessionManager.TestSession(); } } public static void TestUser() { lock (_lock2) { } } 강의에는 두 클래스에 같은 _lock 써서 헷갈려서 lock1, lock2 로 나누었습니다. SessionManager.Test(); 하려면 lock1을 열고 들어가서 lock2를 열어야함. UserManager.Test(); 하려면 lock2을 열고 들어가서 lock1을 열어야함 예를 들어, t1이 lock1을 열고 들어가서 TestUser()을 하려고 했지만, 하필 t2가 lock2를 열자마자 들어갔을경우 t1은 lock2가 잠겨있어서, t2는 lock1이 잠겨있어서 둘다 아무것도 못하는 상황 = 무한 대기 걸려서 프로그램이 멈춘것 처럼 보이는 데드락 상황 이렇게 이해했는데 맞을까요?

  • C#
  • unity
  • 네트워크
아휘 댓글 2 좋아요 0 조회수 229

BaseUI, ConfirmUI에서 질문있습니다.

해결됨

유니티 시스템 프로그래밍 Pt.1 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지

함수에서 어떤 행위를 하고 Action 변수를 사용하고 null로 초기화 해주는데 이유가 궁금합니다.

  • C#
  • unity
  • 객체지향
moonfgg 댓글 2 좋아요 0 조회수 243

쓰레드의 작업 순서가 너무 헷갈립니다.

미해결

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버

안녕하세요. 강의 잘 보고 있습니다. 질문 드립니다. t1, t2 두 개의 쓰레드를 만들고 실행시켰습니다. t1.Start(); t2.Start(); Start()라는 함수가 쓰레드 클래스 말고 싱글 쓰레드 개발환경에서의 그냥 아무 함수라고 가정한다면, t1.Start()가 먼저 실행되고 Start함수가 끝날때 까지 기다린 후 t2.Start()가 먼저 실행되는게 '문법적으로' 맞잖아요?? 하지만 쓰레드 클래스의 경우에는 t1.Start() 가 들어왔을때는 t1 쓰레드한테 어떤 일을 실행 시킨 후 t1이 작업 끝나던 말던 바로 다음줄 코드를 실행 시키는건가요? 즉, t2.Start() 를 실행 시키는건가요? 그렇게 해서 각 쓰레드(일꾼)이 작업을 하다 여러 문제들이 생기는거구요 멀티 쓰레드 개발환경에서 일어날 수 있는 문제점은 확실하게 이해하고 있는데, 제일 첫 부분인 이게 도통 이해가 안돼서 질문 남깁니다. 그동안 해오던 코딩이 부정당하는 기분이라... 쓰레드 클래스만 저런식으로 작동된다는 정보가 어디에도 없네요.. 문법적으로 저렇게 된다고 확신이 필요합니다 ㅠㅠ 요약하자면, 컴파일러는 'Start 함수' 를 만나게 될 경우 그 쓰레드한테 작업을 실행시키지만, 그 쓰레드의 작업을 기다려 주지는 않고 바로 다음 줄 코드를 실행 시키는건가요?

  • C#
  • unity
  • 네트워크
댓글 2 좋아요 0 조회수 253

다른형식의 근접공격에 대해 질문할것이 있습니다.

미해결

[유니티 레벨 업!] 모듈식으로 개발하는 스킬 시스템

다크소울과 몬스터헌터 같은 게임의 근접공격 구현은 스킬의 액션에 새로운 액션을 만든 다음 피격 판정이 있는 무기에 콜라이더를 넣어준 다음 기존의 투사체 공격에 있는 소켓을 이용해서 구현하면 될까요

  • unity
  • modules
고우진 댓글 2 좋아요 0 조회수 207

안녕하세요 루키스님 코드 라이선스 관해서 질문드립니다.

미해결

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버

과거에 해당 강의로 공부하고 최근에 다시 복습 중인데 혹시 코드 라이선스가 어떻게 될까요? 외주 작업을 받게 돼서 네트워크 관련 코드를 작성하려고 하는데 문제가 생길 수 있을 거 같아 질문드립니다. 덕분에 공부 너무 잘 하고 있습니다. 감사합니다.

  • C#
  • unity
  • 네트워크
ghwls328 댓글 2 좋아요 0 조회수 173

웹서버로 구현되는 기능들이 궁굼합니다.

미해결

[켠김에 출시까지] 유니티 캐주얼 모바일 MMORPG (M2)

안녕하세요! 선생님 강의를 거의 빠짐없이 듣고 열심히 공부하고 있는 수강생입니다. MMORPG 개발 9개 시리즈부터 번외편, M1 강의까지 2~3회씩 반복해서 수강하며, 이제는 새로 올라오는 M2 강의를 매주 주말마다 기다리고 있습니다! 강의를 기다리며 채팅 기능, 길드, 파티, 우편 시스템을 직접 구현해보려고 하는데, 처음으로 강의 내용과 다른 것을 시도하다 보니 제가 제대로 하고 있는지 확신이 들지 않더라고요. 제가 생각하기에 채팅, 길드, 파티, 우편 기능은 ACCOUNT 서버처럼 WEB 서버로 구현하는 게 좋을 것 같아서, MMORPG 시리즈에서 배운 WEB 서버를 기반으로 위에 기능들을 하나씩 만들어가고 있습니다. 서론이 길었네요 ㅠㅠ 궁금한 점이 있습니다! 실제 현업에서는 위에 언급한 기능들이 웹 서버로 구현되는지 아니면 게임 서버로 구현되는지 궁굼합니다!

  • C#
  • unity
  • mysql
  • MMORPG
  • ef-core
  • asp.net-web-api
소리차 댓글 2 좋아요 0 조회수 281

스크롤에 아이템을 선택했을때 강조하는 효과는 어떻게 구현하면 될까요?

해결됨

유니티 시스템 프로그래밍 Pt.1 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지

안녕하세요. 인벤토리 스크롤 영역에 선택한 아이템을 강조하는 효과는 어떤식으로 구현하면 될지 궁금합니다. 강의를 본 뒤 선택한걸 강조하는 내용이 있나 돌아봤는데 해당 내용은 없는것 같아서요. 아이템을 선택하면 선택된 아이템을 강조하는 효과의 이미지를 활성화 시키려고 했는데 오브젝트를 재활용하는거다 보니 엉뚱한 오브젝트에 이미지가 활성화 되는데 어떤식으로 해야 좋은 구조로 선택표시를 할 수 있을지 알려주실 수 있으실까요?

  • C#
  • unity
  • 객체지향
댓글 2 좋아요 0 조회수 259

Item 깨짐 현상

해결됨

[Unity] 함께 만들어가는 방치형 게임 개발

10강 수강 중 Other > Item에 있는 아이템 삽입 시 화면처럼 마젠타 색으로 모든 아이템이 전부 깨져서 표시됩니다 제가 가지고 있는 패키지에는 Item 항목이 없어 섹션3의 패키지 파일을 다운 받아 유니티에 드래그드롭으로 넣고 Import 된 Item을 꺼냈더니 저렇게 뜹니다 어떻게 해결해야 하는지 질문 드립니다

  • C#
  • unity
  • firebase
  • 게임기획
  • json-parsing
KUMU 댓글 2 좋아요 0 조회수 358

Input 스킬 구현 질문

해결됨

[유니티 레벨 업!] 모듈식으로 개발하는 스킬 시스템

안녕하세요! 좋은 강의 감사합니다. 리븐 Q와 아트록스 Q와 같이 Input형 스킬이면서 n번째 사용 스킬이 다른 경우(ex) 리븐 Q 3타 에어본) 어떻게 구현하면 좋을 지 질문 드립니다!

  • unity
  • modules
장원 댓글 3 좋아요 0 조회수 337

C++강의 듣다가 왔습니다.

미해결

[켠김에 출시까지] 유니티 캐주얼 모바일 MMORPG (M2)

C++과 언리얼로 만드는 mmorpg 시리즈를 구매한 학생입니다. 1주차부터 이해가 안돼서 찾아보니 Part3 유니티 (클라 프레임워크) Part4 게임서버 (서버 프레임워크 ServerCore) Part7 게임서버&클라 연동 (클라 서버 연동 기본기) Part8 EF Core (ORM) 를 읽어보면 이해하기 쉽다고 하셨는데 part4. 게임서버는 C++강의로 들어도 괜찮을까요??

  • C#
  • unity
  • mysql
  • MMORPG
  • ef-core
  • asp.net-web-api
유민영 댓글 2 좋아요 0 조회수 315

멀티 스레드 관련 의문점

미해결

[켠김에 출시까지] 유니티 캐주얼 모바일 MMORPG (M2)

안녕하세요 강의 잘 보고 있습니다. 코드를 보면서 멀티 스레드 관련해서 궁금한게 있어 질문 남깁니다. 1.ClientSession에서 Lock을 잡지 않는 이유는 Receive쪽에서 하나의 스레드만 들어오기(낚시대 비유) 때문에 안걸어도 되는건가요? 즉 하나의 스레드가 메서드 안의 메서드를 타고 타고 들어와서 안전한건가요? 2. 1번이 맞다면 ClientSession 에서 GameLogic Push 하는 이유는 스레드 안전성 때문이라기보단 멀티 스레드를 활용하기 위함이라 보면 될까요?

  • C#
  • unity
  • mysql
  • MMORPG
  • ef-core
  • asp.net-web-api
toyboy0113 댓글 1 좋아요 0 조회수 193

코드 자료를 받을 수 있을까요?

미해결

따라하면서 배우는 고박사의 유니티 하이퍼캐주얼게임 시리즈 02

코드 자료를 받을 수 있을까요?

  • C#
  • unity
초롱초롱이1234 댓글 1 좋아요 0 조회수 194

포폴용으로 AWS 인스턴스 1개와 탄력적 IP 1개를 항시 켜놔도 비용이 부과될까요?

미해결

[켠김에 출시까지] 유니티 캐주얼 모바일 MMORPG (M2)

루키스님 안녕하세요? C# AWS 답변 보고 여기로 와서 클라 입장 공인 IP를 가지고 사설 IP에 접근하는 것 성공했습니다. 아침 답변 감사합니다. 제가 포트폴리오 작성 간에 데모 프로그램을 준비해보려고 하는데 (기준은 C# 파트7 수강 이후입니다) 첫 번째 방법은 클라, 서버 exe 한폴더에 넣고 .bat 파일 만들고 이거 하나만 실행시키서 서버 실행 -> 클라 실행 순으로 입장시키기 입니다. 그런데 이 방법은 .net이 안깔려 있으면 서버부터 크래시가 나길래 인사담당자나 면접관이 못볼 수도 있겠어서 찜찜해서 두 번째 방법으로 생각한건 AWS입니다. 윈도우 프리티어와 인스턴스 프리사양, 그리고 고정용 IP용 탄력적 IP를 만들어서 항시 켜놓으려고 합니다(보안 정책은 여기 강의처럼다 뚫어놓긴 합니다). 그리고 데모 프로그램은 클라이언트만 제시하는 방법을 생각 중입니다. 이 경우 AWS 서비스가 무료거나 소액이면 해볼만한 방법이라고 생각되는데 둘 중에 어느 방법이 괜찮을지 의견 여쭈고 싶어서 질문 드립니다.

  • C#
  • unity
  • mysql
  • MMORPG
  • ef-core
  • asp.net-web-api
mhyim 댓글 1 좋아요 1 조회수 256

혹시 어드레서블 강좌 추가계획이 있으실까요?

미해결

레트로의 유니티 C# 게임 프로그래밍 에센스

에센스 도서에 보니까 어드레서블 관련 개정판 내용이 있던데요. 혹시 강좌에도 추가해주실 계획이 있으신가 궁금해서 문의드립니다.

  • C#
  • unity
꿈냥이 댓글 1 좋아요 0 조회수 176

JobTimer 클래스의 우선순위 큐 질문

해결됨

[켠김에 출시까지] 유니티 캐주얼 모바일 MMORPG (M2)

안녕하세요. JobTimer 클래스에서 사용된 우선순위 큐 관련해서 2가지 궁금한 점이 있습니다. 1. 여기서 사용된 우선순위 큐는 최소힙으로 구현된게 맞나요? PriorityQueue.cs 에 작성된 우선순위 큐는 최대힙 이지만, JobTimerElem 구조체를 정의할 때 CompareTo 메서드를 오버라이딩 해서 최소힙을 사용하게끔 수정한 것으로 이해했는데 제대로 이해한게 맞을까요? 2. Pop 메서드에서 힙 정렬 과정 질문 PriorityQueue.cs에 작성된 Pop 메서드의 While 문이 힙 정렬을 담당하는 부분으로 이해했습니다. 만약 While 문 한 번으로 정렬이 끝나지 않는 경우는 어떡하나요? 예를 들어 다음과 같이 저장된 최소 힙의 경우 이렇게 While문이 한 번 끝났는데 최솟값인 2가 루트 위치에 있지 않은 경우가 있어서 질문 드립니다.

  • C#
  • unity
  • mysql
  • MMORPG
  • ef-core
  • asp.net-web-api
xkdl780 댓글 1 좋아요 0 조회수 156

스텟 연동 관련해서 질문이 있습니다.

미해결

[유니티 레벨 업!] 모듈식으로 개발하는 스킬 시스템

제가 기존에 개발해둔 아이템 시스템을 연동시키면서 아이템의 스텟을 정할때 Resources/Stat폴더를 참조하고 그걸 기반으로 Enum으로 해당 스텟들이 있는 스크립트 파일을 만든 다음에 아래에 있는 버튼을 눌러서 일일히 Enum 파일을 동기화시켰는데 너무 번거로운것 같습니다. 생성, 삭제, 수정할때마다 동기화시키면 작업할때마다 딜레이가 너무 커지는데 다른 방법이 있을까요 if (dataType == typeof(Stat)) { GUI.color = Color.yellow; // Data를 이름 순으로 정렬하는 Button을 그림 if (GUILayout.Button($"Press it after you finish editing")) { StatEnumSynchronizer.SyncStatEnum(); EditorUtility.SetDirty(database); AssetDatabase.SaveAssets(); } } 아래는 해당 enum파일을 만드는 스크립트입니다. using System; using System.IO; using System.Linq; using UnityEditor; using UnityEngine; public static class StatEnumSynchronizer { private const string StatFolderPath = "Assets/Resources/Stat"; [MenuItem("Tools/Sync Stat Enum")] public static void SyncStatEnum() { if (!Directory.Exists(StatFolderPath)) { Debug.LogError($"Directory does not exist: {StatFolderPath}"); return; } var statFiles = Directory.GetFiles(StatFolderPath, "*.asset", SearchOption.TopDirectoryOnly); var statCodeNames = statFiles .Select(file => AssetDatabase.LoadAssetAtPath<Stat>(file)) .Where(stat => stat != null) .Select(stat => stat.CodeName) .Distinct() .OrderBy(name => name) .ToList(); string enumPath = "Assets/Scripts/Enum/ItemStatusAttribute.cs"; using (var writer = new StreamWriter(enumPath, false)) { writer.WriteLine("public enum ItemStatusAttribute"); writer.WriteLine("{"); writer.WriteLine(" Default,"); foreach (var codeName in statCodeNames) { string enumName = SanitizeEnumName(codeName); writer.WriteLine($" {enumName},"); } writer.WriteLine("}"); } AssetDatabase.Refresh(); Debug.Log("Stat Enum synchronized."); } private static string SanitizeEnumName(string name) { return new string(name .Where(c => !char.IsWhiteSpace(c) && (char.IsLetterOrDigit(c) || c == '_')) .ToArray()) .Replace(" ", "_") .Replace("-", "_") .ToUpper(); } }

  • unity
  • modules
고우진 댓글 1 좋아요 0 조회수 209

인기 태그

인프런 TOP Writers

주간 인기글