묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨두고두고 써먹는 유니티 비동기 프로그래밍
1-3. 코루틴의 주요 키워드 부분에서 자막에 'PoEc' 라는 용어가 나오는데 정확한 용어와 뜻을 알수 있을까요?
1-3. 코루틴의 주요 키워드 영상 0:28 부분에서 자막에 'PoEc' 라는 용어가 나오는데 정확한 용어와 뜻을 알수 있을까요?구글에서 검색해봐도 잘 모르겠습니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
안녕하세요 오브젝트 풀에 대해서 궁금한게 있어서 글 남깁니다
안녕하세요 선생님 강의 잘 보고 있습니다.다름이 아니라 마지막 수업까지 듣고 몬스터에 Poolable 스크립트를 넣어서 오브젝트 풀이 잘 작동하는지 확인을 할려고 하는데 잘 작동은 하는데위의 이미지 처럼 오브젝트 풀에 들어갔다가 다시 스폰이 될때 피가 0인 상태 즉 죽었을때 들어간 정보 그대로 다시 스폰이 되어서 플레이어를 따라오지 않더라구요 오브젝트 풀에 들어갔다가 다시 스폰이 될때 몬스터의 값을 초기화 해줘야 될거 같은데... 어디서 어떻게 그 코드를 넣어야 할지 도저히 막막해서 글을 남깁니다... Poolable 스크립트를 넣지 않고 그냥 실행하면 정상적으로 값이 초기화가 잘 된 상태로 스폰이 됩니다.
-
미해결[Unity] 함께 만들어가는 방치형 게임 개발
ArgumentNullException : Value cannot be null
17분까지는 구현이 잘되었는데 27분에 코드 수정 후 되지 않습니다. 오류가 나는 원인을 알고 싶습니다.Main_UI.cs 206 Stage_Mng.cs 42 Main_UI.cs 260
-
해결됨절대강좌! 유니티6 - UGS를 활용한 백엔드 시스템 구축
Run시 에러가 발생합니다.
const { DataApi } = require("@unity-Services/cloud-save-1.4")module.exports = async ({ params, context, logger }) => { const { projectId } = context; const serverInfo = { apiEndpoint: "https://mygame.server.com", connectId: 123456 } const cloudSaveApi = new DataApi(context); try{ await cloudSaveApi.setCustomItem(projectId, "SeverConfig", { key:"serverInfo", value: serverInfo }); logger.info("Save ServerInfo Success"); return { success: true, message: "Save Success ServerInfo"}; }catch(err){ logger.info("Error", {"error:", err.message}); return {success : false, message : "Failed Save ServerInfo"}; }};Compilation Error------------------------------SyntaxError: Unexpected token ','GameData.js:22:34
-
해결됨[유니티 레벨 업!] 모듈식으로 개발하는 스킬 시스템
하나의 스킬 내에서 타겟, 이펙트가 여러번 바뀌게 하는 방법이 궁금합니다.
예를 들어 적 엔티티를 클릭하여 타겟으로 삼고 공격을 한 후, 다시 타겟 검색을 해서 주변의 아군을 치유하는 스킬이 있습니다.(또는 그냥 자기 자신을 치유)이럴땐, 처음 타겟서칭때 SelectEntity방식으로 적을 찾는데, 이후 이어지는 발동 상황에서는 주변의 적을 positionSearch 방식으로 찾아야 해서 타겟 서칭 방법이 바뀌고, 또 적용해야하는 이펙트 또한 바뀌게 됩니다. 어떻게 보면 두 종류 이상의 스킬을 같이 사용하는 형태 같습니다. precedingAction을 통해 구현하는건, 발동되는 효과가 3가지 이상일 경우도 있으므로 적절하지 않은 것 같습니다. 새로운 스테이트 머신을 만들어서 타겟서칭과 이펙트를 반복하게 만들 수도 있을것 같은데제가 구현하고자 하는 방향이 턴제 형식이라서 굳이 스킬 스테이트 머신을 사용하지 않으려고 합니다. 제가 생각해본 방법은 effect 자체에 타겟서칭을 추가해서 순차적으로 이펙트를 실행함에 따라 매번 타겟 서칭을 새롭게 하는 방법이나, skillData를 2차원 배열로 만들어서 각 레벨별로 각기 다른 효과와 이펙트를 저장하고, skillData를 순차적으로 실행하는 방법 정도입니다. 이러한 구조를 어떻게 구현하면 좋을지 질문하고 싶습니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
멀티플레이 테스트 환경 관련 질문입니다
안녕하세요 수업을 잘 듣고 있습니다만 멀티플레이를 테스트하는 환경에서 문제가 생겨 질문 올립니다. 강의에서 설명해주신대로 유니티 Tool탭에 2~ 4Players를 선택해서 빌드앤런을 자동화해서 하는 방식으로 테스트를 하였습니다. 일단 동기화가 잘 진행되지 않았는데요 물론 제가 코드를 잘못쳤거나 강의 내용 중에 뭔가 놓친게 있을 수 있지만 그전에 한가지 질문을 여쭙고 싶습니다. 한쪽 클라이언트에서 캐릭터를 움직이기 위해 키를 입력하면 다른쪽 클라이언트에서 포커싱을 잃는 것을 확인했는데요. 이렇게 포커싱을 잃은 클라이언트에서 서버로부터 패킷을 정상적으로 수신하지 못해 동기화가 이뤄지지 않는 문제가 발생할 수 있는지요? 혹시나 해서 유니티 내에서 플레이버튼을 통해 하나의 클라이언트를 가동시키고, 또 빌드한 파일 중 하나만 수동으로 실행해 다른 하나의 클라이언트를 가동시킨 상태에서 중단점을 걸고 차근차근히 실행을 해보았는데요. 이때는 정상적으로 패킷을 받아와 동기화가 이뤄진 것을 확인하였습니다. 만약 포커싱을 잃은 윈도우에서 패킷을 정상적으로 수신하지 못하는 문제가 발생할 수 있다면 테스트 환경을 어떻게 개선시킬 수 있을까요? 포커싱과 전혀 관련이 없는 문제라면 강의를 다시 보면서 놓친부분을 찾아보려합니다.
-
미해결[유니티 레벨 업!] 모듈식으로 개발하는 스킬 시스템
올해에 예정된 새로운 강의가 있으신지요?
궁금합니다.
-
해결됨절대강좌! 유니티 6 - TPS 게임으로 배우는 유니티 마스터클래스
오디오 관련해서 질문 있습니다.
audiosource를 추가해서 총을 쐈을 때, 아무 소리도 나지 않는 상태에서 처음 쏘는 총알의 소리의 앞부분이 끊겨서 재생됩니다. 해결 방법이 있을까요?
-
해결됨새싹부터 시작하는 Unity 게임 개발
2D게임에서 트램플린 Trigger감지관련
트램펄린을 Box Collider로 설정하고 진행할 때, 옆면에만 닿아도 점프가 되는데 윗면에서만 감지되도록 하여 트램펄린 위에 올라갔을 때만 점프하도록 구현하려면 어떻게 해야 할까요?
-
미해결[Unity] 함께 만들어가는 방치형 게임 개발
Item DB Firebase 연결
Axe, Mana, Dice 까지는 firebase에 추가가 되었는데, 이후에 추가로 아이템을 등록을 해보려고 Scriptable/Item 폴더 안에 Scriptable Object를 추가했더니 인게임에서 키값도 못찾고 DB에 당연히 등록도 안되네용.. 어떻게하면 좋을까요 ㅠ
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
콘솔앱 (.NET Core) 과 콘솔앱과 동일한가요
Visual Studio 2002 사용 중입니다. 구글링 해서 SDK도 설치하고 여러가지 해봤지만 콘솔앱 (.NET Core)는 보이지 않네요. 명칭이 콘솔앱으로 변경되었다는 글을 본 것 같아서 콘솔앱으로 진행했는데 namespace도 자동으로 생성되지 않고 조금 다른 부분이 보입니다. 같은 것이 맞나요? 이렇게 진행해도 되나요??
-
해결됨두고두고 써먹는 유니티 VR
mob 스크립트 작성 시 오류
안녕하세요~mob 스크립트 작성 시, 콘솔에 에러가 이렇게 뜨는데 무엇이 문제일까요? Assets\Tutorial\Scripts\Mob\Mob.cs(6,14): error CS0101: The namespace '<global namespace>' already contains a definition for 'Mob' Assets\Tutorial\Scripts\Mob\Mob.cs(15,18): error CS0111: Type 'Mob' already defines a member called 'Start' with the same parameter types
-
해결됨두고두고 써먹는 유니티 VR
Spawner 스크립트
해당 스크립트 제작 후, 컴포넌트에 추가했는데, 밑에 파라미터들이 활성화되지 않아 연결할 수 있는 창이 안보여요 ㅠㅠ 무엇이 문제일까요?? Prefab, Play On Start 등등이요..
-
해결됨책 3권을 영상으로 만든 Unity 게임 개발
Knight구매시 오류
using UnityEngine; using UnityEngine.UI; public class ItemPurchase : MonoBehaviour { [SerializeField] UnitObject[] unitObjects; [SerializeField] int ItemNumber; [SerializeField] int ItemPrice; [SerializeField] GameObject BlackPanel; [SerializeField] GameObject PurchasePanel; [SerializeField] GameObject AlarmPanel; [SerializeField] Text AlarmText; [SerializeField] Text UnitName; [SerializeField] Image UnitImg; int CurrentCoin = 0; [HideInInspector] public static ItemPurchase Instance; void Awake() { Instance = this; Debug.Log("1. Saved ItemNumber" + PlayerPrefs.GetInt("ItemNumber")); } void Start() { PlayerPrefs.SetInt("Coin", 10000000); PlayerPrefs.Save(); Debug.Log("2. Saved ItemNumber" + PlayerPrefs.GetInt("ItemNumber")); CurrentCoin = PlayerPrefs.GetInt("Coin"); } public void SelectItem() { PlayerPrefs.SetInt("ItemNumber", ItemNumber); PlayerPrefs.Save(); BlackPanel.SetActive(true); PurchasePanel.SetActive(true); UnitName.text = unitObjects[ItemNumber-1].UnitName; UnitImg.sprite = unitObjects[ItemNumber-1].UnitImg; Debug.Log("3. Saved ItemNumber" + PlayerPrefs.GetInt("ItemNumber")); Debug.Log("4. Selected Item Number : " + ItemNumber); } public void PurchaseItemBtn() { if(CurrentCoin < ItemPrice) { AlarmPanel.SetActive(true); AlarmText.text = "코인이 부족합니다."; return; } AlarmPanel.SetActive(true); AlarmText.text = "구매를 완료했습니다."; Debug.Log("5. Saved ItemNumber" + PlayerPrefs.GetInt("ItemNumber")); Debug.Log("6. Selected Unit" + (ItemNumber+3)); Debug.Log("7. Selected Price : " + ItemPrice); PlayerPrefs.SetInt("Unit"+(ItemNumber + 3), 1); PlayerPrefs.SetInt("Coin", CurrentCoin - ItemPrice); PlayerPrefs.Save(); } public void PurchasePanelOffBtn() { BlackPanel.SetActive(false); PurchasePanel.SetActive(false); PlayerPrefs.DeleteKey("ItemNumber"); } } using UnityEngine; using UnityEngine.UI; public class PurchaseBtn : MonoBehaviour { [SerializeField] Button purchase_btn; void Start() { purchase_btn.onClick.AddListener(OnClickBtn); } private void OnClickBtn() { ItemPurchase.Instance.PurchaseItemBtn(); } } 강의 따라했는데, 나이트 구매시 인스턴스 this가 super defender로 잡혀서 구매가 되는데 어떻게 해야하나요? 싱글턴 패턴에서 수퍼 디펜더가 처음에 잡혀서 나이트가 static 인스턴스에의해 못 잡고있는 것 같기도한데... 어디서부터 봐야할지 모르겠어요ㅠ
-
해결됨절대강좌! 유니티6 - UGS를 활용한 백엔드 시스템 구축
[질문] ID 와 Password 방식으로 가입하는 방식 관련 질문이 있습니다.
안녕하세요.ID 와 Password 방식 관련 강의를 보고 있습니다. 강의 영상에서 보면가입을 zack 이란 아이디로 가입을 하였는데,대쉬보드에서 보니 Unity 가 자체적으로 생성한 PlayerID 인 : UmpicBxVKu~~~~ 로만 등록되어 있어서요. 그럼 사용자가 자신의 아이디를 밝히면서 관련해서 무언가를 요구할때 서로 의사소통하기가 어렵지 않나요?사용자가 명시적으로 입력한 id 값으로 찾아볼 수 있는 곳이 있을까요? (현재 강의만 보고 있어서, 직접 대쉬보드를 열어보지 않아서 드리는 질문일 수도 있겠네요 ^^; )
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
Material Shader 문제
안녕하세요유니티 6에서 따라하면서 공부하고 있는데 옛날 Material이 분홍색으로 나타납니다. 해결하는 법 알려주세요
-
해결됨두고두고 써먹는 유니티 VR
자료 다운 묹;
미리 만들어주신 여러 패키지 포함한 자료를 다운받으려고 하는데, 어떤 파일로 열어야 할까요? 다운은되는데 열리지가 않아서 에셋에 추가를 못했습니다.
-
해결됨[Unity] 함께 만들어가는 방치형 게임 개발
Item_Holder 대해 질문 드립니다.
ItemDB 강의를 듣고 있는 중입니다. Data_Mng에 item_holder를 Dictionary로 만드셧는데 초기화 하는 부분이 어디인지 모르겠습니다. Character_Holder는 데이터 초기화 하는 부분 Holder s_holder = new Holder();if(Character_Holder.ContainsKey(data.m_Character_Name)){s_holder=Character_Holder[data.m_Character_Name];}else{ Character_Holder.Add(data.m_Character_Name, s_holder);}이 존재 해서 데이터 잘나오고 있는데요 item_holder 는 어디서 초기화를 진행하는지 모르겠습니다.
-
미해결게임 디자인 패턴 with Unity
State Pattern에서 component 삭제/생성
State Pattern 부분을 공부하고 있습니다.My Action 8.cs 를 통해서 Player가 행동을 할 때마다 ConcreteState~ 컴포넌트가 생성 / 삭제가 되도록 합니다.이때 player의 조작에 의해 컴포넌트를 생성 / 삭제가 빈번하게 이뤄져 메모리, GC 등 문제가 되진 않나요? 감사합니다
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
버퍼
샌드버퍼는 컨텐츠단에서 사용리시브버퍼는 서버단에서 사용하는 이유가 뭔가요 ?