묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part2: 자료구조와 알고리즘
미로 준비 - 플레이어 생성에서 2가지 질문이 있습니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요. 강사님 강의 잘 보고 있습니다! 실습하면서 궁금한 점이 2가지 생겼는데요, 그동안 배운 것을 응용해보고자 플레이어 좌표를 멤버 변수로 public int x와 public int y가 아닌, 구조체와 프로퍼티를 응용해서 아래와 같이 만들었습니다. 그런데 구조체 프로퍼티를 이렇게 만들면 프로퍼티를 통한 set을 할 수가 없더군요... 어지쩌지 구글링을 해보니 구조체가 값 타입이어서 set을 하는 의미가 없다는 내용으로 이해했습니다. 그래서 아래와 같이 변형해서 사용을 했습니다. 근데 이렇게 사용하면 은닉성이 의미가 없는 것 같아서;; 1. 구조체의 경우 프로퍼티를 어떻게 사용하면 될까요? 다음 질문은 deltaTick 관련 질문입니다. FPS region 안에서 dletaTick 연산 방법이 currentTick - lastTick을 하는 위 조건문과 동일하길래 아래(기존 코드) 에서 아래(수정 코드) 2. 위와 같이 코드를 변경해서 사용해도 겉보기엔 문제가 없어보이는데, 이게 조금이나마 더 근접한 deltaTick으로 계산되지 않을까요? 2-1. 위 코드(기존 코드)는 WAIT_TICK의 값이 크면 클 수록 deltaTick을 연산하는 주기도 줄어들기 때문에 조금씩 오차가 생기는 로직으로 이해했는데, 제대로 이해했나요? 물론 WAIT_TICK 값이 드라마틱하게 크지 않는 이상 큰 차이를 느끼진 못하겠지만, 로직이 조금 해깔려서 이해하고 싶은 취지에서 질문드립니다!
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
delegate 선언 관련
public delegate void OnInputKey(); public event OnInputKey InputKey; 이런식으로 작성하는것과 public event Action InputKey; 이런식으로 작성하는건 어떤 차이가 있나요?
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part2: 자료구조와 알고리즘
board.render
마지막에 board.render가 while문 안에서는 써지고 while문 밖에서는 안써지는 이유가 뭔가요?
-
미해결나만의 포트폴리오 블로그 만들기(feat. 티스토리 스킨)
늦게나마 볼려고 했는데..버전이 올라가면서 많이 달라졌네요
버전이 올라가면서 많이 달라진것 같네요. 이걸보고 참고만 하고... 그냥 tidory.com에서 튜토리얼을 따라하는게 좋을 것 같습니다.
-
미해결공공데이터로 파이썬 데이터 분석 시작하기
sns.distplot 에 선 추가하는 기능을 sns.displot 을 통해 하는 법이 있을까요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요, 교수님. sns.distplot 사용하면 나중에 해당 plot 기능은 사라질거라고 displot 사용하라는 경고가 뜨는데요. 해당 경고는 교수님 "단 두 장의 문서로 데이터 분석과 시각화 뽀개기" 해당 강의 커뮤니티 답변을 통해 displot 으로 대체하는 법을 배웠습니다. 근데 displot 은 plt.axvline 이나 plt.axhline 기능과 연동되지 않는건가요? plt.axvline(data["위도"].median(), linestyle="--", color="g") sns.displot(data=data, x="경도", kde=True, rug=False) 위 코드처럼 실행하면 수직선 그래프와 displot 그래프가 따로따로 그려져셔요ㅠㅠ 다른 방법이 있나해서 질문드립니다!
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
시작시 @Sound가 생성안되고있습니다.
NullReferenceException: Object reference not set to an instance of an object SoundManager.Play (Define+Sound type, System.String path, System.Single pitch) (at Assets/Scripts/Managers/SoundManager.cs:64) TestSound.OnTriggerEnter (UnityEngine.Collider other) (at Assets/Scripts/TestSound.cs:29) 에러가 발생합니다. DontDestoryOnLoad에는 @Sound가 없고, @Manager만 있습니다. 현재 사운드 매니저는 public class SoundManager { AudioSource[] _audioSources = new AudioSource[(int)Define.Sound.MaxCount]; //MP3 Player -> AudioSource //MP3 음원 -> AudioClip //관객(귀) -> AudioListner public void Init() { GameObject root= GameObject.Find("@Sound"); if(root = null) { root = new GameObject { name = "@Sound" }; Object.DontDestroyOnLoad(root); string[] soundNames = System.Enum.GetNames(typeof(Define.Sound)); for(int i = 0; i<soundNames.Length -1; i++) { GameObject go = new GameObject { name = soundNames[i] }; _audioSources[i] = go.AddComponent<AudioSource>(); go.transform.parent = root.transform; } _audioSources[(int)Define.Sound.Bgm].loop = true; } } public void Play(Define.Sound type,string path, float pitch = 1.0f) { if (path.Contains("Sounds/") == false) path = $"Sounds/{path}"; if (type == Define.Sound.Bgm) { AudioClip audioClip = Managers.Resource.Load<AudioClip>(path); if(audioClip == null) { Debug.Log($"AudioClip Missing !: {path}"); return; } //ToDo } else { AudioClip audioClip = Managers.Resource.Load<AudioClip>(path); if(audioClip == null) { Debug.Log($"AudioClip Missing ! : {path}"); return; } AudioSource audioSource = _audioSources[(int)Define.Sound.Effect]; audioSource.pitch = pitch; audioSource.PlayOneShot(audioClip); } }이고, Managers 스크립트는 public class Managers : MonoBehaviour { static Managers s_Instance; // 유일성이 보장 static Managers Instance { get { Init(); return s_Instance; } }//유일한 매니저를 갖고온다. InputManager _input = new InputManager(); ResourceManager _resource = new ResourceManager(); SceneManagerEx _scene = new SceneManagerEx(); SoundManager _sound = new SoundManager(); UIManager _ui = new UIManager(); public static InputManager Input { get { return Instance._input; } } public static ResourceManager Resource { get { return Instance._resource; } } public static SceneManagerEx Scene { get { return Instance._scene; } } public static SoundManager Sound { get { return Instance._sound; } } public static UIManager UI { get { return Instance._ui; } } void Start() { Init(); } void Update() { _input.OnUpdate(); } static void Init() { if(s_Instance == null) { GameObject go = GameObject.Find("@Managers"); if(go== null) { go = new GameObject { name = "@Managers" }; go.AddComponent<Managers>(); } DontDestroyOnLoad(go); s_Instance = go.GetComponent<Managers>(); s_Instance._sound.Init(); } //초기화 } }입니다. 몇번 뒤져봐도 뭐가 잘못된지 모르겠습니다... 도와주세요!
-
미해결
npm run serve 질문드립니다..
강의 듣는 중 npm run serve 를 실행하면 에러가나서,, INFO Starting development server... ERROR ValidationError: Progress Plugin Invalid Options options should NOT have additional properties options should NOT have additional properties options should NOT have additional properties options should pass "instanceof" keyword validation options should match exactly one schema in oneOf ValidationError: Progress Plugin Invalid Options options should NOT have additional properties options should NOT have additional properties options should NOT have additional properties options should pass "instanceof" keyword validation options should match exactly one schema in oneOf at validateOptions (C:\vue-project\infrun\node_modules\schema-utils\src\validateOptions.js:32:11) at new ProgressPlugin (C:\vue-project\infrun\node_modules\webpack\lib\ProgressPlugin.js:108:3) at new Progress (C:\vue-project\infrun\node_modules\progress-webpack-plugin\index.js:25:21) at new progressPlugin (C:\vue-project\infrun\node_modules\progress-webpack-plugin\index.js:127:10) at C:\vue-project\infrun\node_modules\webpack-chain\src\Plugin.js:14:18 at Object.toConfig (C:\vue-project\infrun\node_modules\webpack-chain\src\Plugin.js:78:22) at C:\vue-project\infrun\node_modules\webpack-chain\src\Config.js:129:63 at Array.map (<anonymous>) at module.exports.toConfig (C:\vue-project\infrun\node_modules\webpack-chain\src\Config.js:129:40) at Service.resolveWebpackConfig (C:\vue-project\infrun\node_modules\@vue\cli-service\lib\Service.js:277:34) at PluginAPI.resolveWebpackConfig (C:\vue-project\infrun\node_modules\@vue\cli-service\lib\PluginAPI.js:132:25) at serve (C:\vue-project\infrun\node_modules\@vue\cli-service\lib\commands\serve.js:75:31) at Service.run (C:\vue-project\infrun\node_modules\@vue\cli-service\lib\Service.js:262:12) at processTicksAndRejections (internal/process/task_queues.js:97:5) npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! infrun@1.0.0 serve: `vue-cli-service serve` npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the infrun@1.0.0 serve script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above. npm ERR! A complete log of this run can be found in: npm ERR! C:\Users\dongj\AppData\Roaming\npm-cache\_logs\2022-05-05T14_41_48_320Z-debug.log 혹시 해결방법 좀 알 수있을까요,, npm run serve 하기위해 vue add @vue/cli-service npm uninstall vue-cli -g npm install -g @vue/cli npm i postcss@8 -D 이렇게 진행했는데,, 이전상태로 못돌리겠습니다 ㅠ
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
테스트 케이스 5번 실패
안녕하세요 강사님, 강의 잘 듣고 있습니다. 다름이 아니라 문제 해결하는데 테스트를 통과하지 못해서 문의드리고 싶습니다. 5번 테스트 결과가 180으로 나오는데 제 코드에서는 0으로 나오게 됩니다. 입력값이 너무 크기에 디버깅이 힘들기도 하고 강의 보면서 잘못된 부분을 찾아보려고 했으나, 감이 잘 안오기에 이렇게 문의 드립니다... ㅠㅜ import java.util.HashMap;import java.util.Map;import java.util.Scanner;public class Pr04_my04 { private int solution(String str, String compare) { int answer = 0; char[] strArr = str.toCharArray(); char[] compareArr = compare.toCharArray(); int cnt = 0; Map<Character, Integer> compareMap = new HashMap(); for(char x : compareArr){ compareMap.put(x, compareMap.getOrDefault(x, 0)+1); } Map<Character, Integer> strMap = new HashMap(); for(int i = 0; i < compare.length(); i++ ){ strMap.put(strArr[i], strMap.getOrDefault(strArr[i], 0)+1); } if(compareMap.equals(strMap)){ answer ++; } int head = compareMap.size(), tail = 0; while (head < strArr.length){ strMap.put(strArr[head], strMap.getOrDefault(strArr[head], 0)+1); strMap.put(strArr[tail], strMap.get(strArr[tail])-1); if(strMap.get(strArr[tail]) == 0){ strMap.remove(strArr[tail]); } if(compareMap.equals(strMap)){ answer ++; } head++; tail++; } return answer; } public static void main(String[] args) { Pr04_my04 pr = new Pr04_my04(); Scanner sc = new Scanner(System.in); String str = sc.nextLine(); String compare = sc.nextLine(); System.out.print(pr.solution(str, compare)); }}
-
미해결AWS Certified Advanced Networking - Specialty 자격증 준비하기
p157, 159
p157 Router3의 라우팅테이블에서 마지막 라인의 192.168.2.0/24 대역에 대한 Next Hop이 Router3이 아닌 Router1이 되어야하는거 같습니다. p159 Router2의 라우팅테이블에서 마지막라인이 제외가 아니가 아닌 Router3으로 가는 라인에 빨간줄로 제외가 되는게 맞는것 같습니다.
-
미해결[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)
개복치개발자님 부탁드립니다!!
ListView로 게시글 만들고 읽고 보는 강의까지 전부 보고 실습해봤는데 강의가 정말 좋으셔서 잘 따라갈수 있었던것 같습니다. 그래서 정말 저한테 많은 도움이 되었습니다. 정말 감사합니다. 근데 혹시 ListView말고 RecyclerView로 만드신 게시글 만들고 읽고쓰게하는 강의는 만드실 생각이 없으신가요? RecyclerView가 더 안정적이고 좋다는 평이 많은데 확실히 ListView보다는 난이도가 어려워보입니다... 혹시 강의 가능하시다면 부탁드립니다!!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
테스트 케이스를 작성할 때
안녕하세요! 테스트 케이스를 작성하는 것과 관련해서 질문이 있습니다 :) 강의에서 각각의 테스트 케이스들은 서로 독립적으로 돌아갈 수 있도록 만드는게 중요하다고 해주셨습니다. (그런 이유로 afterEach 메서드를 만들어 주셨고요!) 강의에서 save 함수에 대한 테스트 메서드를 만드실 때 findById 라는 다른 메서드를 사용해서 구현해주셨는데요. 이 경우 save 함수는 findById 함수에 의존하고 있다고 생각했습니다. (findById가 잘못 구현되었을 경우 save 함수 fail) 그래서 뭔가 각각의 테스트 케이스에서는 직접 구현한 다른 메소드를 사용하지 않는게 맞을 것 같은데 이에 대한 선생님의 의견을 구하고 싶습니다! 좋은 강의 감사합니다 :)
-
미해결Axure RP 9,10 - 서비스 기획자를 위한 최적의 프로토타이핑 툴
클라우드에서 프로젝트의 패스워드 설정
안녕하세요 영상과 다르게 액슈어 10버전이라 그런지는 모르겠으나, 클라우드에서 url 옆 edit 버튼을 통해 패스워드 설정도 가능하다하셨는데 edit 버튼이 어디에 있는지 보이지 않습니다 ㅜㅜ
-
미해결Axure RP 9,10 - 서비스 기획자를 위한 최적의 프로토타이핑 툴
클라우드 연동 후 프로젝트 수정
안녕하세요! 클라우드에 제가 지금까지 영상을 따라가며 만든 프로젝트를 올린 후 오류를 발견했습니다. 그래서 프로젝트에서 해당 오류를 수정했는데 클라우드에는 그 수정이 업데이트되지 않는 것 같습니다. 그래서 제 질문 사항은 1) 클라우드 업로드 후 프로젝트 변경사항은 클라우드에 연동되지 않나요..? 2) Axure에서 Share를 통해 생성한 링크에서 수정한 것은 원본에는 반영되지 않는 것이죠?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
6:09 질문 드립니다.
dic.Add(1, new Monster(1)); dic[5] = new Monster(5); 이렇게 두가지 방법으로 값을 넣는 다 하셨는데 dic[5]는 5번째 인덱스에 id값을 5번인 몬스터의 값을 넣는게 아닌가요? 디버깅했을 때 0번재랑 1번째에 값이 들어가있어서 이해가 잘 가지 않습니다.
-
미해결유니티(Unity)로 시작하는 게임개발: Part 3. 슈팅게임 개발
Collider인 other.gameObject;
Destroy 파트 강좌에서 OnTriggerEnter(Collider other) { Destroy(other.gameObject); } 이해가 잘 되긴 하지만 other.gameObject를 other가 가진 gameObject라고 해석해야 할 듯 한데 gameObject가 Collider를 가지고 있는 것이지 않나요? gameObject.other는 자연스러운것 같은데, other.gameObject라면~ 이것도 참조와 역참조의 관계인건가요?
-
해결됨데이터 리터러시 - 데이터 읽고 쓰기의 기술
Mac용 Excel 실습환경 구성
실습환경 구성 부분을 보고 있는데요. Mac용 Microsoft Excel에 맞는 환경 구성은 없을까요? 버전 16.60을 싸용하고 있습니다. 오피스 365의 일부이구요.
-
미해결기출로 대비하는 개발자 전공면접 [CS 완전정복]
힙을 array 기반으로 구현하는 이유
안녕하세요. Heap 구현에 대해서 궁금해서 질문 드립니다. Heap 을 구현할 때, 트리는 보통 Linked List 로 구현하지만 Heap은 새로운 node를 힙의 '마지막 위치'에 추가해야하기 때문에 array 기반으로 구현해야한다고 하셨는데, 이 부분이 잘 이해가 되지 않습니다. Linked List든 Array List든 마지막 위치에 넣을 수 있는 건 똑같지 않나요?? 만약 size가 10인 Array List가 있고, 그 안에 [0, 300, 150, 170, 0, 0, 0, 0, 0, 0] 이렇게 3개의 node만 있다고 했을 때, 마지막 위치란 4번째 인덱스를 의미한다고 이해했습니다. 그랬을 때 Linked List도 4번째 인덱스에 insert하는 건 똑같다고 생각을 해서 이해가 잘 되지 않습니다. 답변 주시면 감사하겠습니다.
-
미해결빅데이터분석기사 실기대비 (R 활용)
rpart나 svm 중 높은 Accuracy값 찾기가 나온다면...
rpart나 svm 중 높은 Accuracy값을 가지는 내용을 작성시.. rpart는 강의 내용처럼 하면되는데 svm은 model1<-train(pre~., data=train, method='rpart') model2<-train(pre~., data=train, method='svm') 에러: Model svm is not in caret's built-in library 위와같이 진행하면 오류가 발생됩니다. 그래서 다시 아래와 같이 진행한 후 model2<-svm(pre~., data=train, type='C-classification') p1<-predict(model1, test, type='prob') p2<-predict(model2, test, type='prob') auc(test$pre, p1[,2]) auc(test$pre, p2[,2]) <= 오류발생됩니다.이유가 궁금합니다. `[.default`(p2, , 1)에서 다음과 같은 에러가 발생했습니다:incorrect number of dimensions > 이런경우 어떻게 해결할지 문의합니다.
-
해결됨실전! Querydsl
QMemberTeamDto의 NoClassDefFound
안녕하세요 강의 잘 듣고 있습니다. 중간에 조회 API 개발의 내용 중 QMemberTeamDto를 조회하는 메소드로 컨트롤러를 통해 응답을 주는 컨트롤러를 작성하는 내용이 있는데요 같은 내용의 Test는 통과하였으나 포스트맨에서 요청을 할 때는 NoClassDefFound 에러가 발생합니다 build가 되지 않았나? 해서 gradle로 clean compileJava compileQuerydsl 모두 실행하고 해봐도 같은 결과입니다 빌드된 결과 에러 내용
-
해결됨Flutter 앱 개발 기초
플러터설치어떻게하나요?
설치과정문서로보내준다고하는데 맞나요?