묻고 답해요
144만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[Unity] 함께 만들어가는 방치형 게임 개발
Ui 팝업 생성 clone문제, 강의 내용 문의
안녕하세요!영웅소환 부 강의를 듣고 Ui 팝업 생성을 구현했습니다.하지만 버튼을 누를 때마다, 팝업 clone이 계속 생성됩니다.요부분 싱글턴 처리라던지, 이미 해당 팝업이 열려있는지 여부를 확인하는 부분과 같은 방어 로직 내용이 있는 강의가 있나요? 있다면 강의가 꽤 길어 제가 못찾고 있는 것 같아요 ㅠㅠ 강의 너무 잘 듣고 있습니다~그리고 제가 게임개발 인강에 기대했던 부분이로딩시에 서버에서 리소스 다운받는 것, 저녁 이벤트 보상 같은 앱 푸시 어떻게 구현했나 궁금했는데요. 뒷 강의에 있는지 또는 추후에 강의하실 예정인지 문의드려요!
-
해결됨[유니티 레벨 업!] 모듈식으로 개발하는 스킬 시스템
아이템 및 시너지 효과 스킬 적용
롤토체스같은 게임에서 아이템과 증강체 및 시너지 효과 등을 어떻게 구현하면 좋을지 고민하는데 궁금한게 생겨 질문드립니다.예를 들어, 아이템을 장착하면 8초마다 주변 아군에게 보호막 부여와 같은 것을 구현할 때, 아이템을 장착하면 8초마다 주변 아군에게 보호막을 부여하는 패시브 스킬을 등록하고, 아이템을 해제하면 해당 패시브 스킬을 빼는 방식으로 만들면 될 것 같습니다.시너지 효과로 3타마다 추가 투사체를 발사하는 효과는 시너지가 발동되면 3타인지 체크하는 UseCondition을 가진 패시브 스킬을 통해 추가 투사체를 발사하게 하면 될 것 같습니다.그런데, 아이템을 장착하면 해당 캐릭터의 기본 공격 및 스킬이 체력 10% 이하인 적을 처형시키는 효과는 스킬로 구현이 어떻게 될지, 아니면 다른 좋은 방법이 있을지 떠오르지가 않아서 어떻게 구현할 수 있을지 질문드립니다.
-
해결됨[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 열심히 보고 있는데요. 시작부터 이런 에러가 나와서 앞으로 나가지를 못 하고 있네요.
-
미해결C#과 유니티, 실전 게임으로 제대로 시작하기 (저자 직강)
4.10 델리게이트 예문이 이해되지 않습니다.
아래 한줄의 강의 예제문에서public void GetSonToStudy(Son son) {(Son son) <---- 이 문구가 이해되지 않습니다.Son son(Son son) 이렇게 3개로 나눠 따로 따로 그 의미를 설명해 주시면 감사하겠습니다!
-
해결됨[Unity] 함께 만들어가는 방치형 게임 개발
ui 생성 질문 있습니다.
ui 생성할 때 메모리 관련 질문 있습니다. 강의를 쭉 듣는 중입니다. UI 생성시에는프리팹 제작, Instantiate(Resources.Load<>("UI/xxxx"))로 ui 생성하고팝업 안에 아이템이 있는 경우에는 전부 생성 사용 종료 후 destroy 하는 방식 으로 이해했습니다. gameObject 생성 때 Object Pool 방식 구현 강의에서 메모리 관련해서 얘기 주셨는데요, 이런 ui 생성,destroy사용방식이 메모리 부하는 따로 없을까요?방치형 게임에서 유아이도 많이 눌러서 많이 일어날거라 생각이 들어서요. SetActive로 관리하면 어떤지.. 다른 방법이 없나?? 궁금하여 문의드립니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
Create의 GetOrAddComponent
Poolable Create(){ GameObject go = Object.Instantiate<GameObject>(Original); go.name = Original.name; return go.GetOrAddComponent<Poolable>();}유틸에서 만들었던 GetOrAddComponent가 아닌 비쥬얼 스크립팅의 GetOrAddComponent로 연결이 되더라구요. UI 실습때는 Util.GetOrAddComponent<T>(go) 이런식으로 사용했었는데 괜찮을지 모르겠네요
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
빈 게임 오브젝트에서 바인드가 실패하는 케이스
Text나 Button같은 실체가 있는 오브젝트들은 바인드가 성공이 되는데 빈 게임 오브젝트를 바인드할 경우 바인드 실패가 계속 뜹니다.
-
미해결Unity 기초 & 실습 통합 강의: 게임 따라 만들기
영상이 안보입니다.
영상이 보이는 강의도 있지만 대부분 강의의 영상이 안보입니다. 소리만 출력되고 영상이 안나오는 강의가 거의 대부분입니다. 크롬, 브레이브 브라우저 모두 마찬가지인데요, 확인부탁드립니다!
-
해결됨[Unity] 함께 만들어가는 방치형 게임 개발
소환위치질문있습니다
안녕하세요 선생님 왜 이렇게 한칸씩 밀리는 걸까요..혹시 캐릭터 피벗? 때문에 그런가요?? .. 어디를 수정해야 할지 아무리 찾아도 헷갈려서 질문합니다
-
미해결[유니티 레벨 업!] 모듈식으로 개발하는 퀘스트&업적 시스템
퀘스트 클리어해도 동일 퀘스트가 노출됩니다
퀘스트 완료해도 목표에 동일 텍스트가 반복 노출됩니다.만약 저걸 무시하고 바로 열쇠를 습득하면 2번째 동일문장이 바로 삭제되고 키를 습득하라는 문장이 완료처리 됩니다. 코드는 완전 동일하고 유니티에서 구성도 동일하게 한거 같은데 혹시 어떤 부분이 문제일까요..
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
C++ 버전을 조금 접목해서 Send 관련해서 lock 잡는 부분을 수정해봤습니다!
안녕하세요.지금 단계에서는 완벽한 테스트가 어려워서 강사님이 보시기에 어떨지 의견 듣고 싶습니다. Send 과정에서 락을 최소화하고 싶어서 C++ 버전을 조금 차용했습니다.ProcessSend()에서 RegisterSend()를 호출하는 식으로, 한 번에 하나의 송신만 담당하면 락을 줄일 수 있을 것 같아서요.public void Send(byte[] sendBuffer) { lock (_lock) { _sendQueue.Enqueue(sendBuffer); } if (0 == Interlocked.Exchange(ref _sendRegistered, 1)) RegisterSend(); }이렇게 해서 한 번에 하나의 스레드만 접근하게 하구요. void RegisterSend() { lock (_lock) { while (0 < _sendQueue.Count) { byte[] buffer = _sendQueue.Dequeue(); _pendingList.Add(new ArraySegment<byte>(buffer, 0, buffer.Length)); } _sendEvent.BufferList = _pendingList; } bool pending = _socket.SendAsync(_sendEvent); if (false == pending) { OnSendCompleted(null, _sendEvent); } } 큐에서 데이터를 가져와 _sendEvent.BufferList에 세팅할 때만 락을 잡습니다.OnSendCompleted는 전체에 락을 안 잡고 중간에만 락을 잡았습니다.void OnSendCompleted(object sender, SocketAsyncEventArgs sendEvent) { if (0 < sendEvent.BytesTransferred && SocketError.Success == sendEvent.SocketError) { try { Console.WriteLine($"Transferred bytes {sendEvent.BytesTransferred}"); lock(_lock) { _sendEvent.BufferList = null; _pendingList.Clear(); if (0 == _sendQueue.Count) { Interlocked.Exchange(ref _sendRegistered, 0); return; } } RegisterSend(); } catch (Exception e) { Console.WriteLine($"OnSendCompleted Error {e.Message}"); } } else { Disconnect(); } } 답변 부탁드립니다. 감사합니다!
-
해결됨유니티 시스템 프로그래밍 Pt.1 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지
Part2는 계획이 없으신가요?
11월에 나온다고 들었었는데 소식이 없네요..
-
해결됨[Unity] 함께 만들어가는 방치형 게임 개발
싱글톤 매니저와 씬
만약에 로딩씬에서온갖 싱글턴 매니저를 초기화한 후메인씬으로 넘어가는 로직을 만든 경우,매니저 오브젝트들이 전부 로딩씬에 배치해서 메인씬에서 개발할때는 Hierarchy 창에 아무것도 안보이고, 개발 모드에 들어가도 로딩씬을 거치지 않으니 아무 매니저도 안생길것 같은데, 이럴때는 어떻게 해결할수 있나요?
-
미해결유니티 시스템 프로그래밍 Pt.1 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지
안녕하세요. 저도 4장을 공부 중인데 Cavas가 그려지지 않는 문제가 생겨 문의드립니다.
Title 씬에 UIManager를 추가한 뒤에 생긴 문제인데요, 이전 질문을 참고하여 URP인 경우 Camera의 Environment의 BackgroundType값을 Uninitialized로 해줬지만, 여전히 다른 색으로 덮혀 있네요.UIManager의 카메라를 비활성화하면 이렇게 잘 나옵니다. 제 환경이 유니티 6이라서 그런 걸까요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
캐릭터가 분홍색으로 뜬다면 참고해주세요
제가 해결한 방법을 공유해드립니다.액세스 문제로 폴더 이동이 안 돼서 복사를 하고 나니까 분홍색으로 뜨더라고요. 다른 질문 글 보니 비주얼 스튜디오를 닫으면 액세스 문제가 해결된다고 하더라구요.비주얼 스튜디오 닫고 UnithChan!을 다시 임포트하고 나서, 폴더 이동을 하니까 분홍색으로 안 뜨고 잘 나옵니다. 참고로 FBX가 보안 문제로 열람도 안 되는 경우에는 설정에서 열어주게 하면 됩니다.윈도우 10 기준으로 fpx 파일을 더블 클릭하면 3D 뷰어가 뜨는데요. [도움말 - 설정]에 들어가면 관련 옵션을 '설정'으로 해주면 됩니다.
-
미해결[Unity6] 유니티6로 배우는 실전 멀티플레이 디펜스
Summon 소환
안녕하세요 선생님 잘 다녀오셨나요 ? ?? 😃 만들던 게임 날라가서 복습 한다 생각하고처음부터 다시 하고 있습니다 ......캐릭터 소환이 안됩니다시뮬레이터에서 소환버튼이 잘 눌려서 소환가능한데game 창에서는 소환버튼 클릭이 안됩니다 canvas 설정이나 그런게 필요한가요 ... 시뮬에서는 잘 소환되는데 game창에서는 소환이 안됩니다 이유를 모르겠습니다;;
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
강의자료
선생님이만든 강의 Asset 자료 강의 자료실어디있나요? 다운받고 싶습니다.
-
미해결유니티 Addressable 을 이용한 패치 시스템 구현
"addressables_content_state.bin" 파일 선택창이 안뜹니다. ㅠㅠ
안녕하세요,좋은 자료 제공해 주셔서 큰 도움 되었고, 이제 어느정도 사용은 되서 자작중인 앱에 적용해 보는데,처음 어드레서블 New 빌드로는 다운로드도 잘 되고 실행도 잘 됩니다.앱을 재빌드 하지 않고 변경된 어드레서블만 재빌드 해서 업데이트 하기 위해 "update a previous build" 를 쓰는것 까지는 알겠는데, 아무리 해도 기존 카달로그와 해쉬 설정을 가져오는 "addressables_content_state.bin" 파일 선택하는 창 없이 업데이트 빌드가 되어버려서, 빌드된 파일을 서버에 올려도 카달로그 해쉬가 바뀌어버려서 클라이언트 앱에서 업데이트를 가져가질 않네요..현재 사용중인 버전은 유니티 2023.1.19, 어드레서블 1.21.21 입니다.이 교육도 그렇고 예전 어드레서블 버전은 그룹 설정 스키마? 부분에 "can change post release" 옵션이 있던데 지금 버전은 저것도 안보이네요..혹시 최신 어드레서블로, 앱 재빌드 없이 변경된 어드레서블만 업데이트 하려면 어찌 해야 하는지요? 몇주째 해결이 안되네요..ㅠㅠ
-
미해결[켠김에 출시까지] 유니티 캐주얼 모바일 MMORPG (M2)
리니지1의 이동 질문
한때 오랫동안 리니지를 즐겼던 유저로써 리니지1의 이동은 어떤식으로 구현되었을까요?리니지에서 이동중에 서버렉이 걸리면 케릭터가 찍은 좌표로 클라의 케릭터는 계속 걸어갑니다.렉이걸린시점부터의 클라시점 밖의 NPC나 몬스터는 표시가 안되고 렉이 풀리면 클라 포지션이 렉이 걸린 시점의 포지션으로 순간이동하는 렉이 있었는데요 통신이 안되도 케릭은 일정타이밍까지는 이동이 됩니다.그러타면 서버에서는 도착좌표만 주고 클라에서 보간처리로 이동을 한다는 말이될것같은데그렇게 따지면 클라의 보간처리로 이동한다면 다른 케릭에의해서 길이 막혔을 때 처리가 안될것 같습니다.지금 프로젝트의 구현과 리니지1의 이동 동기화의 차이점도 궁금합니다.