묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[Unity6] 유니티6로 배우는 실전 멀티플레이 디펜스
몬스터 스폰 관련 질문
안녕하세요 강사님.강의 잘 보고 있습니다.지금 섹션 4. Multiplay의 몬스터 스폰 영상을 보고 있는데, Spawner 로직과 관련하여 궁금한 점이 있어 글을 남기게 되었습니다.영상 중에 강사님께서 “상대방의 몬스터는 위쪽에, 자신의 몬스터는 아래쪽에 나오는 것을 볼 수 있다.”라고 설명해주셨는데요,제가 직접 클라이언트 쪽 스폰 로직을 수정하여 테스트해본 결과, 호스트와 클라이언트 각각에서 상대방이 요청한 몬스터가 화면의 하단에 표시되는 것으로 확인되었습니다.물론 제가 아직 섹션 4. Multiplay의 몬스터 스폰 영상까지만 본 상태이므로, 이후 강사님께서 정정해주셨을 수도 있습니다. 다만 혹시라도 같은 부분에서 궁금증을 가지실 수강생들을 위해, 가능하시다면 이 내용을 한 번 확인해주시면 감사하겠습니다.제가 잘못 이해한 부분이 있다면 언제든 말씀 부탁드립니다.항상 좋은 강의 제공해주셔서 감사합니다.좋은 하루 되세요![Spawner에서 수정한 부분][클라이언트에서 본 각각의 몬스터]Client 0 즉, 호스트의 요청으로 스폰된 몬스터가 상대방인 클라이언트의 입장에서 아래쪽에 보이는 모습.Client 1 즉, 클라이언트 자신의 요청으로 인해 스폰된 몬스터가 상단에 위치한 모습 [호스트에서 본 각각의 몬스터]
-
해결됨[Unity] 함께 만들어가는 방치형 게임 개발
Layer1> "HIT_TEXT" 풀에 반환시
Parent of RectTransform is being set with parent property. Consider using the SetParent method instead, with the worldPositionStays argument set to false. This will retain local orientation and scale rather than world orientation and scale, which can prevent common UI scaling issues.UnityEngine.Transform:set_parent (UnityEngine.Transform)Object_Pool:Return (UnityEngine.GameObject,System.Action`1<UnityEngine.GameObject>) (at Assets/00_Scripts/Mng/Pool_Mng.cs:66)Base_Mng/<Return_Pool_Coroutine>d__8:MoveNext () (at Assets/00_Scripts/Mng/Base_Mng.cs:69)UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) public void Return(GameObject obj, Action<GameObject> action = null) { pool.Enqueue(obj); //풀안으로 새로운 오브젝트가 들어감. obj.transform.parent = parentTransform; //obj.transform.parent.SetParent(parentTransform, false); //이거는 오류가나타남 //obj.transform.parent.SetParent(parentTransform, true); //true이든 false이든.. 오류발생 obj.SetActive(false); if(action != null) { action?.Invoke(obj); } } transform의 parent 속성대신에 SetParent 를 쓰라고 경고메세지가 나타나는데요Parent of RectTransform is being set with parent property. Consider using the SetParent method instead, with the worldPositionStays argument set to false. This will retain local orientation and scale rather than world orientation and scale, which can prevent common UI scaling issues.근데 /obj.transform.parent.SetParent(parentTransform, false)이런식으로 사용했더니, HIT_TEXT가 풀로 반환되면서 부모인 Layer1도 같이 반환되어서 UnityException: Transform child out of bounds Base_Canvas.Holder_Layer (System.Int32 value) (at Assets/00_Scripts/Base_Canvas.cs:28) HIT_TEXT.Init (UnityEngine.Vector3 pos, System.Double dmg, System.Boolean Critical) (at Assets/00_Scripts/HIT_TEXT.cs:76) Monster+<>c__DisplayClass6_0.<GetDamage>b__0 (UnityEngine.GameObject value) (at Assets/00_Scripts/Monster.cs:113) Object_Pool.Get (System.Action1[T] action) (at Assets/00_Scripts/Mng/Pool_Mng.cs:58) Monster.GetDamage (System.Double dmg) (at Assets/00_Scripts/Monster.cs:111) Bullet.Update () (at Assets/00_Scripts/Bullet.cs:83)-------------------------------Layers의 자식이 Layer3밖에 남지않아서Base_Canvas 스크립트의 public Transform Holder_Layer(int value) { return LAYER.GetChild(value);함수 호출시에 에러가 나더라구요결국에는 그냥 transform.parent = parentTransform.로 사용하고있는데 SetParent를 사용하라고 계속 경고메세지가 뜹니다. ㅠㅠSetParent(parentTransform, ture) 이던, false이던 Canvas>Layer1>HitText, 에서 Pool로 반환될때 Layer1도 같이 반환됩니다.Layer0>"COIN_PARENT"도 마찬가지로 Layer0도 같이 반환됩니다.그냥 경고메세지를 띄울수밖에없는건가요?
-
해결됨[Unity6] 유니티6로 배우는 실전 멀티플레이 디펜스
게임출시 관련
안녕하세요. 저는 이 게임을 조금만 변형하여 출시해 보고 싶은데요. 만약 이 게임을 출시한다면 제가 바꿔야 하는 것들이 어떤 것일까요? 제가 생각해보자면 각종 캐릭터 및 이미지 자료정도로 생각이 되는데요. 게임에 스토리와 흐름을 조금만 변형해서 가져가도 되는 것인지 궁금합니다.
-
해결됨[Unity6] 유니티6로 배우는 실전 멀티플레이 디펜스
캐릭터 판매 38분 질문
CheckGetPosition과 같은 경우에는 ServerRpc에서 해도 되는 부분 같은데요. 이것은 ServerRpc에서 할지 clientRpc에서 할 지 당사자가 결정하면 되는 부분일까요?
-
해결됨[Unity6] 유니티6로 배우는 실전 멀티플레이 디펜스
강사님. 감사합니다.
혹시나 3D방치형 게임은 혹시 할인 프로모션이 계획돼 있을까요? 항상 결제하면 할인이 되는 경우가 많았어서요.
-
해결됨[Unity] 함께 만들어가는 방치형 게임 개발
오브젝트 풀링 파트에서 겟과 리턴을 만들때
안녕하세요 강의 너무 잘 보고 있는 지망생입니다 . 한가지 궁금한게 생겨서 여쭤봅니다 . 겟과 리턴을 만들 때 액션의 널 체크를 하잖아요 . 이 부분을 if로 널 체크를 한번 하고 ? 로 널 체크를 한번 더 하는데 이렇게 두번 해야하는 이유가 있을까 조심히 여쭤봅니다.
-
해결됨[Unity6] 유니티6로 배우는 실전 멀티플레이 디펜스
캐릭터 이동1 24분부터 잘 안되요.
캐릭터 이동1편에서 24분전에 holder자체를 교환할 때는 됐는데요. holder안의 캐릭터 이동으로 변경시 캐릭터들이 자꾸 가운데사 만나는 게 됩니다. 그리고 강의에 parentholder에 대해서는 언급이 없었는데 무엇일까요?
-
해결됨[Unity6] 유니티6로 배우는 실전 멀티플레이 디펜스
함수에 대한 질문
제가 확실히 이해한 것이 맞는지 체크하고 싶어 질문 드려요. NetworkObject는 생성시 Instantiate함수만으로도 양쪽에 동기화 되어 생성된다. (생성만 되는 것인지 이동시 위치까지 동기화 되는건이지 궁금합니다.) ServerRpc함수 : 이 함수는 client의 작업은 client에서 하는 것이 아니라 host가 대리처리해 주어야 하기 때문에 client만 주로 호출할 일이 많다. ClientRpc함수 : host가 작동시킨 것들을 clinet에게 전달하거나 ServerRpc함수에 작업한 것을 다시 양쪽에 동기화해서 전송해주는 역할을 한다. 이 함수는 host와 client컴퓨터 양쪽에서 모두 실행된다. 위에 두 함
-
해결됨[Unity] 함께 만들어가는 방치형 게임 개발
해당 강의 자료를 유니티6로 마이그레이션이 가능할까요?
질문1) 유니티6로 해당 강의를 진행해도 문제가 되지 않는 지 궁금합니다.질문2) 혹시 기존 학습을 진행했던 대상이, 유니티6로 마이그레이션이 가능하다면 방법적인 부분도 추가 안내해주실 계획이 있는 지 문의 드립니다.
-
해결됨[Unity] 함께 만들어가는 방치형 게임 개발
Ui 팝업 생성 clone문제, 강의 내용 문의
안녕하세요!영웅소환 부 강의를 듣고 Ui 팝업 생성을 구현했습니다.하지만 버튼을 누를 때마다, 팝업 clone이 계속 생성됩니다.요부분 싱글턴 처리라던지, 이미 해당 팝업이 열려있는지 여부를 확인하는 부분과 같은 방어 로직 내용이 있는 강의가 있나요? 있다면 강의가 꽤 길어 제가 못찾고 있는 것 같아요 ㅠㅠ 강의 너무 잘 듣고 있습니다~그리고 제가 게임개발 인강에 기대했던 부분이로딩시에 서버에서 리소스 다운받는 것, 저녁 이벤트 보상 같은 앱 푸시 어떻게 구현했나 궁금했는데요. 뒷 강의에 있는지 또는 추후에 강의하실 예정인지 문의드려요!
-
해결됨[Unity] 함께 만들어가는 방치형 게임 개발
인터페이스 클래스 사용이유
오브젝트 풀링에서 IPool이라는 인터페이스 클래스를 만든 이유가 궁금합니다.
-
해결됨[Unity6] 유니티6로 배우는 실전 멀티플레이 디펜스
multiplay부분 에러
Library\PackageCache\com.unity.multiplayer.tools\NetVis\Configuration\OwnershipSettings.cs(41,24): error CS0103: The name 'CustomColorSettings' does not exist in the current contextmultiplay 열심히 보고 있는데요. 시작부터 이런 에러가 나와서 앞으로 나가지를 못 하고 있네요.
-
해결됨[Unity] 함께 만들어가는 방치형 게임 개발
ui 생성 질문 있습니다.
ui 생성할 때 메모리 관련 질문 있습니다. 강의를 쭉 듣는 중입니다. UI 생성시에는프리팹 제작, Instantiate(Resources.Load<>("UI/xxxx"))로 ui 생성하고팝업 안에 아이템이 있는 경우에는 전부 생성 사용 종료 후 destroy 하는 방식 으로 이해했습니다. gameObject 생성 때 Object Pool 방식 구현 강의에서 메모리 관련해서 얘기 주셨는데요, 이런 ui 생성,destroy사용방식이 메모리 부하는 따로 없을까요?방치형 게임에서 유아이도 많이 눌러서 많이 일어날거라 생각이 들어서요. SetActive로 관리하면 어떤지.. 다른 방법이 없나?? 궁금하여 문의드립니다.
-
해결됨[Unity] 함께 만들어가는 방치형 게임 개발
소환위치질문있습니다
안녕하세요 선생님 왜 이렇게 한칸씩 밀리는 걸까요..혹시 캐릭터 피벗? 때문에 그런가요?? .. 어디를 수정해야 할지 아무리 찾아도 헷갈려서 질문합니다
-
해결됨[Unity] 함께 만들어가는 방치형 게임 개발
싱글톤 매니저와 씬
만약에 로딩씬에서온갖 싱글턴 매니저를 초기화한 후메인씬으로 넘어가는 로직을 만든 경우,매니저 오브젝트들이 전부 로딩씬에 배치해서 메인씬에서 개발할때는 Hierarchy 창에 아무것도 안보이고, 개발 모드에 들어가도 로딩씬을 거치지 않으니 아무 매니저도 안생길것 같은데, 이럴때는 어떻게 해결할수 있나요?
-
미해결게임 기획자 성공 전략 가이드
루키스터디 출시
다음 루키스터디 강의 출시는 언제일까요?
-
해결됨[Unity6] 유니티6로 배우는 실전 멀티플레이 디펜스
Summon 소환
안녕하세요 선생님 잘 다녀오셨나요 ? ?? 😃 만들던 게임 날라가서 복습 한다 생각하고처음부터 다시 하고 있습니다 ......캐릭터 소환이 안됩니다시뮬레이터에서 소환버튼이 잘 눌려서 소환가능한데game 창에서는 소환버튼 클릭이 안됩니다 canvas 설정이나 그런게 필요한가요 ... 시뮬에서는 잘 소환되는데 game창에서는 소환이 안됩니다 이유를 모르겠습니다;;
-
해결됨[Unity] 함께 만들어가는 방치형 게임 개발
파이어베이스로 가챠시스템을 연동시키는 것과 관련해 질문드립니다
안녕하세요! 강의를 시청하면서 가챠시스템을 배웠는데요다름이 아니라 클라이언트에서만 가챠시스템을 운용한다면 위조나 보안에 취약하다는 생각이 들었습니다따라서 앞서 배운 강의내용인 파이어베이스와 연동을 해서가챠시스템을 연동하면 좋겠단 생각을 했는데그럴 경우, 어떤 식으로 내용을 구성해야 효율적으로 관리할 수 있을지의견을 여쭙고자 합니다.
-
해결됨[Unity] 함께 만들어가는 방치형 게임 개발
안녕하세요 소스코드를 다운 받고 싶은데요.. 언제 제공 받을 수 있을까요?
안녕하세요. 게임 구현 중에서 일부분적으로 이해가 안되는 부분이 있어서 강의 학습을 시작하였습니다.다 따라쳐서 하는 기초 목적으로 수강하지 않아서, 일단 유니티 에디터에서 플레이는 되게하고 응용해보고 싶은데요. 강의 종료 후 제공된다고 글이 있는 것 같은데요.. 지금 커리큘럼이 출시?로 보이는데 다 끝난건지, 소스 코드가 언제 제공되는지 궁금합니다 ...
-
해결됨[Unity6] 유니티6로 배우는 실전 멀티플레이 디펜스
유니티6로 배우는 실전 멀티플레이 디펜스의 [로비생성] 편에 질문있습니다.
이전까진 문제없이 잘 이해하고 코드도 실행되었습니다. 그런데 [로비생성] 강의를 보고 따라했더니 오류가 발생했습니다. Unity.Services.Lobbies.LobbyServiceException: lobby code 'BARB6QOAUYDBBMLVUPZQBE' contains an invalid character 'O' (U+004F) at index 6 ---> Unity.Services.Lobbies.Http.HttpException`1[Unity.Services.Lobbies.Models.ErrorStatus]: (400) HTTP/1.1 400 Bad Request...생략...... 호스트는 잘 만들어지는데요, 다른 플레이어로 조인하려고 하면 저런 빨강 글씨의 오류가 발생합니다.인터넷에 찾아보니 외국 포럼만 나오는데요, 버그같기도 하고 그러네요. 제가 고치기 힘들어서요. 혹시 중간강의에서 코드를 통째로 올려주실 수 있나요? 저 오류때문에 코드를 실행하진 못하고, 코드 따라치면서 논리만 이해하는 식으로 공부하고 있습니다.코드를 실행하면서 게임을 돌려보는 실습까지 해보면 재밌긴 하겠지만요. 강의는 재밌게 잘 보고 있는데, 저 오류가 아쉽네요.