inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

2:28 Get<Text>가 NullReferenceException 을 뱉어내는 이유

미해결

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진

1. 똑같이 했는데 계속 이 NullReferenceException 오류가 뜨네요. 뭐가 문제일까요? 프로젝트 압축해서 올릴게요. 2. 디버깅 같은 경우 따로 알려주시는 강의가 있나요? 비주얼 스튜디오 디버깅을 어떻게 해야 할지 하나도 감이 오질 않아요. 밑에 뜨는 부분을 어떻게 읽어야 할지도 전혀 모르겠어요. 이 경우 공부 팁이 있을까요?

  • c#
  • C#
  • unity
Jeremy Kim 댓글 1 좋아요 0 조회수 664

안녕하세요 vscode로 실습 따라하고있습니다.

미해결

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문

강사님 영상에선 코드 종료후에도 터미널이 유지되고 있는데 vscode는 관련한 설정이 어디에 있나요? 저는지금 터미널에서 코드가끝나면 터미널이 자동으로 종료됩니다

  • c#
  • C#
recon 댓글 0 좋아요 0 조회수 338

DontDestroyOnLoad() 가 적용이 안됩니다

미해결

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진

코드는 제대로 작성했는데 정작 유니티로 돌아가면 적용되지 않는 이유가 무엇일까요......... using System.Collections; using System.Collections.Generic; using UnityEngine; public class Managers : MonoBehaviour { static Managers s_instance; //유일성 보장 public static Managers Instance { get { init(); return s_instance; } } //유일한 매니저를 가져온다 // Start is called before the first frame update void Start() //반드시 부품으로 들어가있을때만 호출 가능함 (즉 monobehaviour이 필요함) { //초기화 //Instance = this; init(); } // Update is called once per frame void Update() { } static void init() { if (s_instance == null) { GameObject go = GameObject.Find("@Managers"); if (go == null) //@manangers가 없다면 { go = new GameObject { name = "@Managers" }; go.AddComponent<Managers>(); } DontDestroyOnLoad(go); //웬만해서는 삭제 안됨 s_instance = go.GetComponent<Managers>(); } } } using System.Collections; using System.Collections.Generic; using UnityEngine; public class Player : MonoBehaviour { // Start is called before the first frame update void Start() { Managers mg = Managers.Instance; } // Update is called once per frame void Update() { } }

  • c#
  • C#
  • unity
김민주 댓글 1 좋아요 0 조회수 1035

안녕하세요 강의 시청중 궁금한점 생겨서 질문드립니다.

해결됨

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

소켓 프로그래밍 예제들을 찾아보다가 아래의 사진처럼 await/async 비동기 방식으로 소켓프로그래밍 하는 예제를 보았는데요, 강의에서 사용된 소켓 프로그래밍 코드와 await/async 비동기 방식을 사용한 소켓프로그래밍 코드의 차이점(생산성, 속도 등등)이 궁금합니다.

  • c#
  • C#
  • 네트워크
  • unity
  • network
권이현 댓글 1 좋아요 0 조회수 361

실제 개발하실 때 주로 사용하시는 IDE가 무엇인가요?

해결됨

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문

기존에는 자바 개발을 하면서 IntelliJ 를 사용했는데, 이번에 게임 개발에 관심이 생겨 강의를 수강하고 있는데요. Visual Studio 가 개인적으로 너무 불편해서..IntelliJ 개발사인 JetBrains 의 Rider 라는 툴을 이용해서 강의를 듣고있습니다. 단축키도 기존에 사용하던 인텔리제이와 비슷해서 만족하고 쓰고 있긴한데.. 루키즈님은 실제 개발하실 때 어떤 IDE 를 사용하시는지 궁금합니다.

  • C#
쩡이 댓글 1 좋아요 0 조회수 418

프리펩 - Rect transform 수정 관련

미해결

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진

안녕하세요 며칠 전부터 간단해보이는 문제 때문에 고민하다가 질문 남겨요ㅠㅠㅠㅠ Q1 - 프리펩 수정 관련 먼저, 강의 내용을 봤을 때는, 프리펩 제작 후 수정하고 싶을 때는, -> 프리펩 수정 페이지에서 수정 or Scene의 Prefab Instance에서 수정 후 override (Apply All) 이 두가지 루트인데, 이미지-source image 수정할 때는, 위 두 가지 루트로 접근 시 전부 수정이 정상적으로 가능했습니다. 그러나, 사이즈 변경이 필요해서 사이즈를 변경하려고 Rect transform에 들어가서 width, height 값을 수정했는데 앞서 말한 두 가지 루트 모두 변화를 인식 못합니다. 프리펩에 들어가서, 프리펩 수정 페이지에서 수치 변화 -> 적용 안됨 개별 프리펩 인스턴스에서 값 수정 -> override 여부가 뜨지 않음 ( 변화 인식 못함) 관련 사진 첨부입니다.. 1- 프리펩 페이지의 실제 프리펩 ( 앞서 말했던 첫 번째 수정 방법을 확인하기 위해 i) 먼저 프리펩을 43x43으로 제작 후 프리펩 화 > 이후 프리펩 인스턴스화 ii) 그런 뒤, 프리펩 페이지에서 프리펩을 45x45로 변경 >>>> 수정 사항 적용 X ( AutoSave 모드입니다.) 2- Scene에서 사용하고 있는 프리펩 인스턴스 ( 나머지 Inspector 요소들은 실험 도중 prefab 삭제 및 unpack 하다보니 길어졌네요.. 무시하셔도 됩니다 ) i) 수정 사항 변경 확인을 위해 43x43의 프리펩을 42x42로 변경했음에도, override 여부가 뜨지 않음 ( 변경 사항을 인식 못함) Q2 - 알 수 없는 오류.. Unable to rename a GameObject with HideFlags.NotEditable. UnityEngine.GUIUtility:ProcessEvent(int,intptr,bool&) >> 이 오류가 갑자기 노란색 에러로 뜨는데, 그럴 때마다 다시 껐다가 키면 사라져 있습니다.. 뭐가 문제일까요..? 오류는 검색하는데 이건 사례도 별로 없어서 12년도 자료 나오고 명확한 해결 방법도 안 나오네요..

  • c#
  • C#
  • unity
댓글 1 좋아요 0 조회수 786

client에서 send시에 sendBuff 출력방식 문의(강의20분경 연결테스트중)

미해결

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

20분쯤 테스트 진행시에 client에서 sending한 sendbuff내용이 첫줄은 hello world 1회반복 두번째 통신은 hello world 4회반복 이후 통신은 hello world 5회 반복이 고정되어 통신되는데 반복문 알고리즘을 이해하지 못한건지 정확한 메커니즘을 알고싶습니다. 너무 기초적인 질문일 수 있지만 답변 부탁드려요;;

  • c#
  • unity
  • 네트워크
  • network
  • C#
안더켠 댓글 1 좋아요 0 조회수 414

C# 유니티 강의 Part9 까지 리뉴얼 계획중이신가요?

미해결

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문

C# 유니티 Part9 까지 리뉴얼 하시는 건가요? 현재 파트1 초반부분 수강 중인데 리뉴얼 강의를 기다리면서 듣는 게 좋을지 기존 강의를 듣는 게 좋을지 모르겠습니다.

  • c#
  • C#
정재환 댓글 1 좋아요 0 조회수 419

게임룸에 관한 질문입니다.

미해결

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

안녕하세요. 강의를 보면서 fps를 주제로 포트폴리오 준비를 하고있는 도중에 궁금한 것이 있어서 질문드립니다. 유니티 데디케이트 서버? 로제작할 예정입니다. fps게임에서 여러개의 그룹, 방을 가지고 있는데 서버에서는 이 방마다 각각의 맵을 생성한뒤 가지고 있나요? 다른 필요한 정보들은 검색으로 방향을 찾았는데 이러한것은 어떻게 검색해야하는지 감이 안잡히네요.

  • c#
  • C#
  • unity
te min kang 댓글 1 좋아요 0 조회수 335

배운것을 활용하여 프로젝트를 하다가 궁금한것들이 생겼습니다.

해결됨

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진

현재 강의에서 배운 내용을 활용하여 rpg게임을 개발하고 있는데 궁금한 것들이 생겨 질문하게 되었습니다. 맵을 만들면서 맵에 있는 잔디나 나무들 때문에 렌더링 해야 될것들이 많아져 이를 어떻게 해결해야 될지 잘 모르겠습니다. 일반적인 경우에는 오브젝트의 거리별로 해당 오브젝트를 렌더링 할지 말지를 정하는걸로 아는데 이를 구현하는 방법을 잘 모르겠습니다. 적들이 쫓아 올때 적들이 겹치거나 서로 밀리는 현상이 있었습니다. 그래서 navmeshagent에서 적들의 이동 우선순위를 결정 해주고 radius를 줄여보았지만 자연스럽게 되는게 아닌 옆으로 조금씩 밀리면서 되거나 몇마리는 앞에 있는 몬스터들에게 끼여 있는 현상이 생기더군요 이를 어떻게 해결해야될지 답변해주시면 감사하겠습니다.

  • c#
  • unity
  • C#
BiN_ 댓글 1 좋아요 1 조회수 428

Render() 부분에서 질문있습니

미해결

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part2: 자료구조와 알고리즘

현재 윈도우 11에 vs2019를 사용중이고, 폰트는 굴림체 입니다. 현재 미로가 이렇게 그려지고 있어서 질문 남깁니다(코드는 동일하게 작성하였습니다). 제생각에, 원 그림이 차지하는 칸이 2칸인데, console.foregroundcolor을 변경하게 될 경우 원래의 cursor position로 돌아가서? 발생하는 문제인 것 같습니다... 예를들면, 두번째 줄의 경우 가장 왼쪽이 red이고 원이 그려질 경우 두 칸을 움직이게 되어 cursor position이 (1, 2)인데, foregroundcolor을 바꾸게 될 경우 원이 아니라면 한 칸을 움직이게 될 테니 (1, 1)에 그리게 되는 것 같습니다... 일단은 임시로 before 변수를 두어 foregroundcolor가 바뀔 경우 x좌표를 2배하여 setcursorposition 하도록 작성해서 해결하긴 하였는데... 설정값을 바꿔서 해결할 수 있는 부분이 있는지 질문드립니다.

  • c#
  • C#
정승식 댓글 1 좋아요 2 조회수 523

방만들기, 방 목록 새로고침 강의 중 크로스스레드 문제

미해결

C# TCP/IP 소켓 프로그래밍

좋은 강의 감사드립니다. 방만들기, 방 목록 새로고침 강의 중 크로스스레드 문제 관련 질문드립니다. 강의 중 RoomList 폼의 비하인드 코드에서 CreateRoomResponsed 함수에서 크로스스레드 문제가 발생합니다. 코드 흐름상 해당 함수는 Singleton클래스에서 Invoke 되어 호출되는 구조이고 위에 붉은색으로 표시한 코드가 UI에 직접 접근하여 크로스스레드가 발생한 것으로 보입니다. 정황상 크로스스레드가 발생하는게 맞는 상황인데, 강사님의 강의에서는 크로스스레드가 발생하지 않는것으로 보입니다. 혹시 제가 놓친 부분이 있을까요?

  • c#
  • tcpsocket
  • C#
  • tcpsocket
  • tcpip
  • tcpip
syneffort 댓글 1 좋아요 0 조회수 604

9:45 질문 있습니다.

해결됨

C# TCP/IP 소켓 프로그래밍

안녕하세요 강의보던중 궁금한점 생겨서 질문드립니다. 9분 45초에서 Receive용으로 사용하는 SocketAsyncEventArgs의 버퍼를 설정해주는데요, 이때 이 버퍼가 [입출력버퍼, 슬라이딩 윈도우] 강의에서 설명해주셨던 입력버퍼가 되는걸까요? 아니면 입력버퍼에 들어온 데이터를 넘겨받는 버퍼로 사용되는걸까요?

  • c#
  • tcpsocket
  • C#
  • tcpip
  • tcpsocket
권이현 댓글 1 좋아요 0 조회수 593

매니저 생성 오류

미해결

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진

public class TestUnity : MonoBehaviour { // Start is called before the first frame update void Start() { Managers mg = new Managers(); } // Update is called once per frame void Update() { transform.Rotate(new Vector3(1.0f, 1.0f, 1.0f)); } } 해당 코드에서 Managers로 생성, 저장 후에 유니티로 들어가면 Assets\TestUnity.cs(10,9): error CS0246: The type or namespace name 'Managers' could not be found (are you missing a using directive or an assembly reference?) 라는 코드가 뜨는데 어떻게 해결해야 할까요.........

  • c#
  • unity
  • C#
김민주 댓글 1 좋아요 0 조회수 330

BitConverter.TryWriteBytes에 success 부분 질문드립니다.

미해결

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

안녕하세요. BitConverter.TryWriteBytes 리턴으로 성공,실패 여부를 bool 값인 true,false로 반환하는데 이부분을 &= 로 해야되는 이유가 뭔지 궁금합니다.

  • c#
  • network
  • 네트워크
  • unity
  • C#
탐탐 댓글 1 좋아요 0 조회수 476

몬스터 데미지 처리 방식 질문입니다.

미해결

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

이번 프로젝트에서는 화살에 대한 충돌 정보를 콜라이더를 통해서 하는게 아닌 매니저에서 List에 담긴 적 오브젝트에 위치 정보와 화살에 대한 위치 정보를 비교해서 해당 위치에 적 오브젝트가 존재할 경우 데미지를 처리하는 방식으로 로직을 구현하신 이유가 궁금해서 질문 남깁니다. 현재 프로젝트에서 충돌 판정을 위해 List에 등록된 모든 object들의 위치 정보를 대조하는 방식으로 구현이 되어있는데, 대부분에 2D 온라인 게임들은 이런 방식으로 로직을 구성하는 건가요? 진행중인 프로젝트와 유사한 게임으로 예시를 들어주신 바람의나라, 리니지와 같은 게임 한정으로 이렇게 로직을 구성하는 건가요? 개인적인 생각인데, List로 적 오브젝트를 관리하게 될 경우 적 오브젝트 수가 늘어나 생성,파괴,충돌, 이동이 수시로 일어날 경우 각 정보를 클라이언트들에게 뿌려주기 위해서 서버에 과부화가 있을 거 같은데, 이를 보완하는 방식이 있는지 혹은 List 말고 다른 방식이 존재하는지 궁금합니다 항상 좋은 강의 감사합니다.

  • c#
  • unity
  • C#
ji980207 댓글 1 좋아요 0 조회수 538

최단 경로에 대한 이해

미해결

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part2: 자료구조와 알고리즘

안녕하세요 제가 이해한 것이 맞는지 궁금해서 질문드립니다. 위의 사진 과정에서 시작점에서 부터 도착점까지만의 루트가 아니라 모든 루트를 다 계산하고 그에 대한 부모위치를 얻습니다. 그리고 이후 과정에서는 도착점부터 시작해서 시작점까지의 루트를 파악하고 그것을 뒤집어서 시작점에서 도착점까지의 최단루트를 구합니다. 제가 궁금한것은 위의 BFS과정에서는 도착점까지의 계산만이 아니라 모든 루트로의 계산을 하는것인지요?

  • c#
  • C#
집사 댓글 1 좋아요 0 조회수 499

form에 비트맵 이미지 추가

미해결

아무것도 모르고 시작하는 C#

안녕하세요 초보 수강생입니다..! 저는 비트맵 이미지를 추가하려고 하는데 System.OutOfMemoryException: '메모리가 부족합니다.' 이 메시지가 계속 뜨더라구요.. 실제로 PC에 메모리는 충분한데 왜 뜨는것인지 알 수 있을까요..? using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace Drawing { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { Form fm = new Form(); fm.Text = "샘플"; PictureBox pb = new PictureBox(); pb.Image = Image.FromFile("C:\\45347.bmp"); pb.Top = 100; pb.Parent = fm; Application.Run(fm); } } }

  • c#
  • 객체지향
  • oop
  • C#
Ji Hyun Jang 댓글 1 좋아요 0 조회수 615

protobuf를 쓰지않고 패킷을 만들경우

미해결

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

한번은 직접 패킷을 다루는걸 해보려고 하는데 repeated PlayerInfo players 부분은 리스트처럼 가변크기 데이터로는 못보내고 고정크기 배열로 패킷을 만들어야 하는게 맞을까요?

  • c#
  • C#
  • unity
사과일광욕 댓글 1 좋아요 0 조회수 577

인기 태그

인프런 TOP Writers

주간 인기글