월 17,600원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
반정규화
object 와 room 폴더안에 클래스 형태로 게임 오브젝트 정보가 저장되는데, 이 클래스는 클라이언트 쪽에도 있지 않나요? 이게 맞나요? 이게 반정규화라는 concept일까요?
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
20:20 화살이 몬스터 못때리는거
해당 상황 이외에도 ㅁㅁㅁㅁㅁㅁ ㅁㅁ넷ㅁ나ㅁ ㅁㅁㅁㅁ몹ㅁ 몹이 넷플레이어에게 어그로 끌렸을때 이렇게 배치하면 내가 아래를 보고 몹을 때릴때 화살이 통과합니다. 예전에 ApplyMove 작업할때 충돌문제 생길것같아서 TODO 남겨둔부분이 있는데 ApplyLeave() 로 _object[,]에 null 넣고 이후에 if로 CanGo() 확인하는 로직에서 이동할수없으면 셀에서 존재하지 않아 버리게 됩니다. 길막이나 영상처럼 몬스터가 이동->공격 상태로 전환되기 전까지는 계속 _object[y,x]부분이null로 유지될것같고Arroy가 충돌체크를 _object[y,x] 배열기준으로 하니까 통과하는것 같습니다.
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
A* 구현 중 Cell2Pos, Pos2Cell의 추가 설명이 필요합니다.
오브젝트의 CellPos와 맵 전체를 스캔한 collision 배열의 Index를 서로 동기화시켜주기 위해서 만든 것으로 이해하고 있는데 이게 맞는지 궁금합니다. 그리고 x값은 cellPos.x - MinX 인데 y값은 왜 MaxY - cellPos.y 로 정의되는지도 잘 모르겠습니다.
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
JobQueue 질문 드립니다.
안녕하세요. 1. Room이 JobSerializer를 상속받게 변경된 이후 멀티쓰레드 환경에 따른 여러가지 실행순서 경우의 수를 신경써 줘야 되서 안전하게 사용하기 위해서는 많이 복잡해 지는 것 같습니다. 실질적으로 모든 경우의 수를 매번 신경쓰며 사용하기엔 무리가 있는 것 같습니다. JobSerializer를 안전하게 사용할 수 있는 팁이나 노하우가 있을까요. 2. JobSerializer는 여러개의 쓰레드 중 하나의 쓰레드에서만 실행되는 것이 보장되어야 할 것 같은데요. 이것을 보장할 수 있는 방법이 있을까요. 또 다른 A라는 JobSerializer로 들어가야할 Job이 B라는 JobSerializer로 들어가는 상황을 방지하거나 잡아낼 수 있는 방법이 있을까요?
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
AI검색 질문드립니다.
몬스터가 한 Cell을 이동할 때 마다 A스타 알고리즘을 사용하면 부하가 많이 걸리지 않나요? 최적화를 한다면 어떻게 최적화를 할 수 있을지 궁금합니다.
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
화살 질문있습니다.
안녕하세요. 평타/화살 스킬 모두 논타겟팅 스킬로 보이는데요. C++ 강의에서도 칼을 휘두르면 부채모양 꼴로 칼이 휘둘러 지며 닿는 오브젝트마다 데미지를 준다거나 하는 논타겟팅 스킬이 사용되는지 궁금합니다. 앞으로 보스 NPC가 공격 시, 데미지 포인트 영역 표시가 되는 것 도 구현이 되었으면 좋겠습니다. 그리고 NPC의 행동에 FSM이나 BehaviorTree를 사용해 주시면좋겠습니다. 어디까지나 건의사항이니 편하게 참고해 주시면 좋을 것 같습니다. 시간이 있고 여건이 된다면 강의는 얼마든지 만들어 주실 수 있으신 것이니까요. 그럼 잘 부탁드립니다.
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
Hit 판정 질문드립니다
1. 2차원 배열로 갈 수 있는 공간을 구분하는 충돌처리 외에 3D 물체들이 앞을 막고 있진 않은지 3D 충돌 처리를 하는 MMORPG들을 보았습니다. 날라다닐 수 있는 MMORPG에서 주로 보게되는데요. WOW, 아이온, 블쏘 등의 게임에서 3D지형 충돌처리를 지원했던 것 같습니다. 서버에서도 간단한 3D지형 정보를 불러와서 처리를 하는 것으로 보입니다. 혹시 나중에 이런 3D지형 충돌처리를 서버에서 하는 기법도 소개해 주실 수 있으신가요. 2. 아래와 같이 X좌표는 MinX를 기준으로, y좌표는 MaxY를 기준으로 계산하는 이유는 무엇인가요? int x = pos.X - MinX; int y = MaxY - pos.Y
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
이동 관련 질문 입니다.
제가 강의를 다시 보며 이해해야겠지만 강사님께서 집어주시면 더 빠르게 이해할 것 같아 질문을 드립니다. MyPlayer가 (0, 0)에서 오른쪽으로 이동시 (1, 0)으로 이동했다고 동기화 패킷을 날렸을 시, 나머지 플레이어가 대상 플레이어의 좌표를 (1, 0)으로 이동시킬 것 같은데 이러면, 내가 조종하고 있는 플레이어 외의 플레이어들은 1칸씩 뚝뚝 끊기며 이동해야 할 것 같은데 강의 화면에선 다른 플레이어들도 부드럽게 이동하고 있습니다. 제가 놓친 부분이 있을 것 같은데 설명 좀 부탁드리겠습니다.
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
서버 이동 강의 질문있습니다.
유익한 강의 잘 보고 있습니다. 현재 C# 서버는 존 전체에 이동 패킷을 브로드캐스팅 하는 방식으로 보이는데, 혹시 맵을 Sector, Cell로 구분지어 이동 동기화를 하는 서버를 C++버전에서 다루어 주실 수 있으실까요? Sector, Cell로 맵좌표를 구분지어 사용하는 경우를 이전에 본 것 같은데 괜찮으시다면 강의에서 다루어 주시면 좋을 것 같습니다. 아니면 향후 별도의 강의에서 다뤄 주셔도 괜찮을 것 같습니다.
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
Job System 돌아가는 방식에 대해 궁금합니다
안녕하세요. 강의 마지막 부분인 Job System 관련되서 이해하지 못한 부분이 많아서 질문을 남깁니다. 1. 유니티에서 제공하는 Job System의 개념을 서버에서 사용하는 것인가요? 자세히 알아보고 싶어서 검색해보니 유니티 엔진 내에서만 사용하는데 현재는 유니티 엔진에서가 아니라 C# 게임 서버에서 이 개념을 사용하고 있는데 유니티의 Job System 개념만을 빌려와서 서버에서 적용시켜본 것인지 궁금합니다. 그리고 유니티 내에서 사용되는 Job System은 유니티의 쓰레드 정책을 어떻게 해서 성능 향상이 되기 때문에 이해는 가는데 저희는 지금 유니티 엔진 내에서 사용한게 아니라 C# 서버에서 사용된건데 내부적으로 어떻게 좋아지는지를 잘 모르겠습니다. 클라이언트로부터 패킷이 올 때 마다 lock을 걸지 않고 Queue에다 쌓아놓는다는 것은 이해했습니다. 2. 그런데 Queue를 enqueue 하고 dequeue하는 부분에서는 어차피 lock이 걸려있는데 이게 어떠한 부분에서 좋다고 할 수 있는건가요? 단지 일련의 코드들을 Job 단위로 묶어주기만 한 것이지 어차피 해당 Job을 Queue에서 꺼내고 빼는 상황에서는 lock이 걸리는데 결국에는 똑같은 거 아닌가 그렇게 이해가 되서요.. 3. 일련의 행위를 Job 단위로 나누어서 Queue로 enqueue하고 dequeue 하는 것이 쓰레드 차원에서 어떠한 부분때문에 성능 개선이 있는것인가요? 4. 클라이언트로부터 패킷이 올 때 lock을 걸지 않았기 때문에 Queue에다 일련의 Job 행위들을 넣어주는 것은 모든 워커쓰레드가 쉬지 않고 하게 되는 것이고 Queue에서 enqueue하고 dequeue하는 쓰레드는 따로 분리되는 것인가요?.. 제가 이해를 잘 못해서 질문 자체부터 이상하게 느껴지실 수 있는점 죄송합니다...데 유니티의 Job System과 혼동되는 여지가 있고 어쨋든 Queue에서도 결국에는 lock을 건 상태로 넣게 되고 빼게 되는것인데.. 이 부분에 대해서 정말 이해가 가지 않습니다 ㅠㅠ
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
초보 질문
초보지만 그림을 알기 위해 전체 강의를 빠르게 정주행하고 있습니다. 두가지 질문이 있는데요 1. Client쪽의 directory에도 Servercore 폴더가 있습니다. 왜일까요. 서버 /클라이언트에 공통적으로 필요한 요소인가요? 2. Room과 object가 있는데 특히 room의 역할이 헷갈립니다. player나 monster의 수치 자료가 하드코딩되는 곳은 어디일까요?
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
.dll에 관해서
따라하는 위주의 수업을 하다가 파일을 받아서 덮어쓰려고하니 어려운점이 많았습니다 그중에서도 .dll 라이브러리쪽을 찾는게 어려웠는데요 코딩하는 부분은 강사님 코드부분을 보면서 따라하면서 했는데 라이브러리쪽은 스스로 찾아보아도 안보이고, 너겟쪽에서 다운받아 넣어보았는데도 버전때문인지 에러가나서 결국 강사님 파일안에 있던것을 옮겨서 실행이 됐습니다 유니티에서 에러코드가 발생하니 해결을 못하겠더군요 아래와 같은 에러가 나는데 혹시 이런 라이브러리를 찾는 사이트가 있나요? 구글에 검색을해도 잘 보이지도 않고 영어가 약해서 그런지 이렇게 막히니까 그냥 어지럽네요 Assembly 'Library/ScriptAssemblies/Assembly-CSharp.dll' will not be loaded due to errors: Reference has errors 'Google.Protobuf'. ------------------------------ Assembly 'Library/ScriptAssemblies/Assembly-CSharp-Editor.dll' will not be loaded due to errors: Reference has errors 'Assembly-CSharp'. ------------------------------- Assembly 'Assets/Libs/System.Memory.dll' will not be loaded due to errors: Unable to resolve reference 'System.Runtime.CompilerServices.Unsafe'. Is the assembly missing or incompatible with the current platform? Reference validation can be disabled in the Plugin Inspector. Unable to resolve reference 'System.Buffers'. Is the assembly missing or incompatible with the current platform? Reference validation can be disabled in the Plugin Inspector.
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
ServerCore.dll 질문입니다.
안녕하세요.Rookiss 님.강의 잘 듣고 있습니다.아래 수강생분이 질문해주신 것과 마찬가지로저도 유니티에서 "안녕하세요" 라는 로그가 뜨지 않아한참 이리저리 살펴보았으나,코드는 똑같고 에러도 없어서혹시나 하는 마음에 ServerCore.dll 을 지우고Server 프로젝트에 있는 ServerCore 폴더의스크립트를 전부 유니티 프로젝트에 복사해서돌려보니 "안녕하세요" 라는 문구가 잘 뜨는것을 확인했습니다.dll 을 만들 때, 특별히 거쳐야할 과정이 있을까요?아니면 제가 서버 프로젝트를.net 5.0 으로 만들어서 강의를 진행하고 있는데,그것과 연관이 있을까요?
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
override 질문입니다.
안녕하세요. 강의 잘 듣고 있습니다~ ArrowController 에 보면 UpdateAnimation 을 부모의 것으로 처리하지 않기 위해 override 하고 빈 함수로 남겨놓는데요. 실제로 실무에서 이렇게 처리하는 경우가 종종 있을까요?
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
애니메이션 동기화
강의 중 애니메이션 동기화는 없을까요? - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
3d 환경 구축 질문입니다
안녕하세요 선생님 선생님 강의를 듣고 저는 3d 환경에서 y축으로 회전하고 xz좌표로 이동하는 움직임을 동기화하려고 합니다. horizontal 이랑 vertical 인풋을 받아 이동하는 것인데요. 몇 달이 지나도 개발에 진전이 없어서 답답해서 글을 올립니다. 선생님의 2d 움직임 구조랑은 많이 다른것같아서요.. 어디서부터 수정을 하면 좋을까요?? Protocol.proto에도 많이 바꾸어야하겠죠? - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
질문 있습니다
몬스터들이 플레이어를 인식하질 않습니다. 강의와 똑같은 코드를 작성했는데도 불구하고 인식을 안하고 대각선으로 이동합니다 어떻게 고쳐야 할지 모르겠습니다....
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
Monster 겹침 질문
랜덤 스폰코드에서 주석에 겹쳐도 OK라고 쓰셨는데 이부분에서 질문이 있습니다 몬스터가 플레이어와 같은 위치에서 겹친채로 스폰 되는데 왜 선생님과는 다르게 겹쳐서 스폰되는 건가요? 그리고 겹쳐서 스폰되는것의 해결법이 있는건가요?
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
안녕하세요 강사님
안녕하세요 강사님 좋은 강의 잘 듣고 있습니다. 다름이 아니라 이번은 2d 던데 만약 3d 같은 게임은 서버로 구현해서 플레이어 움직임을 뿌려주는게 2d 보다 당연히 어렵겠죠? 혹시 이번 2d에 배운 것을 응용해서 3d 게임 서버도 구현 할 수 있을까요? 아니면 그 둘은 좀 많이 다른가요?
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
크리에이트 뉴 클립 쪽이 아에 클릭이 안됩니다.
에니메이션창의 어지간한 항목들이 아에 클릭이 안되요