inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

홀펀칭 질문도 괜찮을까요..?

미해결

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

안녕하세요, 루키스님 유익한 강의 제공해주셔서 감사합니다 항상 감사한 마음으로 수강하고 열심히 프로젝트를 진행해보고 있습니다. 현재 프로젝트에서 메인 서버에서는 모든 클라 게임 접속을 받고 로그인 및 방 입장 등을 관리합니다. 클라가 게임룸을 생성하면 해당 클라에 Host라는 오브젝트가 생성되고, 해당 오브젝트는 서버 코드를 유니티에 호환되도록 수정을 거친 상황입니다. 타 클라(로컬 네트워크 환경에서만 테스트 해보았습니다.)에서 방 목록에서 방을 선택하고 입장하면 중앙 서버에서가 호스트와 클라 사이에서 IP와 포트를 알려주는 중개 역할을 하며 두 클라이언트가 연결됩니다. 해당 게임의 사이클이 끝나 게임이 종료되면, 클라이언트들은 로비로 돌아가며 1~3의 단계가 계속해서 반복됩니다. 현재 프로젝트의 조건을 위와 같이 설정하였고, 3번까지는 테스트를 완료했고, 정상적으로 동작하는 것을 확인했습니다. 하지만 4번에서 문제가 발생하는데, 다시 방을 생성하면 클라와 호스트 사이에 패킷 전송이 되지 않는 것 같습니다. 디버깅을 통해 확인해볼 때에는 호스트측의 OnConnected 메서드는 호출되는 것으로 보아서는 클라측에서 연결에 문제가 발생하는 것 같은데, 구글링과 디버깅을 통해 여러가지 해결책을 시행해봤습니다. 연결 종료 시 완전히 소켓이 종료되도록 세션 Disconnect()를 했습니다. 소켓이 같은 주소의 포트 번호를 공유할 수 있도록 Connector와 Listener 코드의 소켓 설정 코드에 Socket socket = new Socket(endPoint.AddressFamily, SocketType.Stream, ProtocolType.Tcp); socket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true); 이렇게 ReuseAddress 설정을 추가했습니다. (중앙 서버 세션과 호스트 세션은 클라에서 개별적으로 다루고 있습니다)호스트 세션의 연결이 종료될 때, 호스트 세션의 _disconnected 변수를 다시 0으로 만들어, 다음 연결 시 RegisterRecv등의 코드에서 if(_disconnected == 1) return;의 조건문에 걸리지 않도록 코드를 수정해보았습니다. 2번의 방법을 시행해보기 전에는 '같은 주소의 포트를 사용할 수 없습니다?'와 같은 오류가 발생했었는데, 2번을 시행한 뒤에는 오류는 발생하지 않지만 연결이 되지 않는 것은 마찬가지인 상태입니다. 그 외에도 잡다하게 정말 많은 시도를 해보았는데, 전혀 실마리가 보이지 않아 질문합니다..ㅠㅠ

  • C#
  • unity
댓글 2 좋아요 0 조회수 537

섹션 4. 문제와 풀이2

해결됨

김영한의 실전 자바 - 중급 1편

LotteGenerator 클래스에서 private final Random random = new Random(); 에서 이것만 final로 처리한 이유가 있을까요? import java.util.Random; public class LotteGenerator { private final Random random = new Random(); private int[] lotteNumbers; private int count; public int[] generate () { lotteNumbers = new int[6]; // 배열 6칸 생성 count = 0; while (count < 6) { // 1부터 45 사이의 숫자 생성 int number = random.nextInt(45) + 1; // number에 random 번호 넣기 // 중복되지 않는 경우에만 배열에 추가 if (isUnique(number)) { lotteNumbers[count] = number; count++; } } return lotteNumbers; } // 이미 생성된 번호와 중복되는지 검사 private boolean isUnique(int number) { for (int i = 0; i < count; i++) { if (lotteNumbers[i] == number) { return false; } } return true; } }

  • java
  • 객체지향
권정익 댓글 1 좋아요 1 조회수 312

PN 내부에 있는 PC들의 인터넷 접근 관련 질문

해결됨

외워서 끝내는 네트워크 핵심이론 - 응용

안녕하세요~ 우선 질 좋은 강의에 감사인사드립니다! 다름이 아니라 VPN 강의 속에서 VPN Tunneling to GtoG 부분을 설명해주시면서 아래와 같은 그림을 작성해주셨고, 이 때 "PC A, B가 DB 서버에 접근이 가능하지만 PC A,B 는 외부 인터넷을 사용하지 못한다" 라고 하셨는데요! 그런데 보통 회사(주로 사기업..)에서 일하다 보면 회사에서 오프라인으로 출근한 뒤(오프라인으로 출근했다 = 회사 내부 망을 이용), 회사의 내부 문서에서도 접근할 수 있게 되지만 그와 동시에 구글링도 보통 가능한데요!? (물론 회사에 따라 개인정보와 같은 매우 민감한 데이터들에 접근하기 위해서 VDI 같은 것들을 이용해서 더 깊은(?) 내부망으로 접근하면 해당 내부망에선 외부 인터넷이 안되긴 하더라구요) 이러한 경우는 어떻게 네트워크를 구성한 건가요..? 대략적으로 구조만 알려주셔도 감사하겠습니다! 또 공공기관 같은 경우는 강의에서 말씀하신 것처럼 회사 내부 망을 이용할 때는 DB 서버에 접근할 수 있되 인터넷은 접근이 안된다는 것을 지인을 통해서 들었습니다. 이 2개의 케이스의 각 네트워크 구조에서 가장 큰 차이점이 무엇인지 설명 부탁드려도 될까요? 미리 감사드립니다 🙂

  • 네트워크
밑바닥개발자 댓글 1 좋아요 0 조회수 231

battle 테이블 형성할 때 제가 어떤 실수를 했을까요?

해결됨

초보자를 위한 BigQuery(SQL) 입문

안녕하세요! 카일스쿨님! battle 테이블을 영상 그대로 만들었는데도, 계속 battle 테이블에 관한 데이터에 관한 정보를 볼 수가 없어요! 빠진것 없이 최대한 꼼꼼히 다시 체크했는데도 모르겠습니다. 혹시 제가 어떤 실수를 했을지 도와주실 수 있나요? 아래는 스키마 정보와, 제가 테이블 만들때 과정을 이미지로 첨부했습니다. 감사합니다.

  • sql
  • bigquery
  • 데이터-리터러시
wjdgml3834 댓글 3 좋아요 1 조회수 676

프로토타입에서

미해결

[2024 업데이트] UX/UI 시작하기 : Figma 입문 (Inflearn Original)

프로토타입에서 시작 지점 정할 때 저는 flows가 안 나옵니다 그 다음 단계인 flow starting point 메뉴도 없습니다.

  • 프로토타이핑
  • 모바일-디자인
  • figma
  • ux-기획
망고 댓글 1 좋아요 0 조회수 190

findByName() 메서드 실행시 오류

해결됨

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

프로젝트 압축파일입니다. https://drive.google.com/file/d/1IRv3FX6UTERveIoq1KaZY7N_DyVLGv0b/view?usp=sharing <회원 리포지토리 테스트 케이스 작성> 강의 9:40 경에 findByName() 메서드 실행시 java.util.NoSuchElementException: No value present at java.base/java.util.Optional.get(Optional.java:143) at hello.hellospring.repository.MemoryMemberRepositoryTest.findByName(MemoryMemberRepositoryTest.java:45) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at java.base/java.util.ArrayList.forEach(ArrayList.java:1511) at java.base/java.util.ArrayList.forEach(ArrayList.java:1511) 라는 오류가 발생합니다. 이 오류로 인해 findAll() 메서드까지 실행이 되지 않는 것 같습니다. get()과 관련된 오류 같아 구글링해보아도 해결이 어려워 문의남깁니다. 답변 부탁드립니다. 감사합니다.

  • java
  • spring
  • mvc
  • spring-boot
박지영 댓글 2 좋아요 0 조회수 431

@Transactional을 붙이는 위치가 궁금합니다. (Service, ServiceImpl..)

해결됨

회원 정보 수정 API를 구현하며 dirty checking을 이용한 회원 정보 update를 사용했습니다. service의 update 메소드를 호출하기 전과 후를 controller단에서 로그를 찍어보니 정보가 잘 변경되는데 DB에는 반영이 되지 않아 애를 먹었습니다. serviceImpl단의 update 메소드에 @Transactional을 붙여서 해결했습니다. 그 전에는 service단의 update 메소드에 @Transactional을 붙였더니 안되더라구요. service단의 메소드에 붙이는 @Transactional와 serviceImpl단의 메소드에 붙이는 @Transactional이 다른 트랜잭션으로 작동하는건지, 그렇다면 어디에 @Transactional을 붙이는게 맞는건지 궁금합니다.

  • springboot
  • jpa
  • @transactional
kn9012 댓글 1 좋아요 0 조회수 421

USING 조인 질문드립니다.

해결됨

장래쌤과 함께하는 쉽고 재미있는 SQL 이야기

안녕하세요 MySQL 사용하고있는데요 조인하려는 테이블이 PK가 없는 단일 값인데요 메인 select 절에 있는 컬럼이 pk 테이블에 있는 단일컬럼에 포함되는 값이 있는지 regexp_like 함수로 확인하고싶은데요 pk값이 없다보니 join 을 어떻게 할지.. 모르겠습니다 using 으로 연결해보려 했는데 (natural join은 지원안됨) 컬럼절에 regexp_like (a.테이블 컬럼, pk 없는 테이블 컬럼) 이렇게 조건을 거니까 에러가 떠서요.. 방법이 있을까요? 요약 : left join으로 pk 테이블이 없는 단일 컬럼과 같다는 조건으로 연결 시, regexp_like 를 사용해도 똑같은 값만 불러오는 에러가 발생 ex. pk 테이블이 없는 컬럼에 '사과' 라는 단어가 있다고 가정, '사과와당근' 이라는 메인 테이블의 컬럼값이 pk 테이블의 '사과' 단어가 매칭되는지 아래 조건으로 걸면 null 값으로 반환. regexp_like('사과와당근', pk 없는 테이블) - > '사과'가 포함되지만 조인조건 때문에 사과와 당근을 매칭해서 불러오지 못함.

  • sql
  • mysql
  • oracle
  • dbms/rdbms
  • mssql
hunter 댓글 2 좋아요 0 조회수 347

No value specified for parameter 2 에러

미해결

JSP 강의평가 웹 사이트 개발하기

/Hello World/WebConetnt/WEB-INF/lib/mysql-connector-j-8.3.0.jar 해당드라이버 lib 폴더에 넣고 실행하였는데 No value specified for parameter 2 에러가 발생합니다. ===== at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException( SQLError.java:130 ) at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException( SQLExceptionsMapping.java:122 ) at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal( ClientPreparedStatement.java:1077 ) at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal( ClientPreparedStatement.java:1003 ) at com.mysql.cj.jdbc.ClientPreparedStatement.executeLargeUpdate( ClientPreparedStatement.java:1312 ) at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdate( ClientPreparedStatement.java:988 ) at user.UserDAO.join( UserDAO.java:17 ) ==== package user; import java.sql.Connection; import java.sql.PreparedStatement; import util.DatabaseUtil; public class UserDAO { public int join(String userID, String userPassword) { String SQL = "INSERT INTO USER VALUES (?,?)"; try { Connection conn = DatabaseUtil. getConnection (); PreparedStatement pstmt = conn.prepareStatement(SQL); // SQL에 ID와 PW를 넣어 줄 수 있도록 Setting pstmt.setString(1, userID); pstmt.setString(1, userPassword); return pstmt.executeUpdate(); // INSERT 구문을 실행해서 나온 결과를 반환하도록 해준다. // 반환값 : INSERT된 데이터 갯수 } catch (Exception e){ e.printStackTrace(); } return -1; } }

  • java
  • jsp
손경민 댓글 1 좋아요 0 조회수 449

Entity에 ElementCollection이 두 개 있는 경우

미해결

코드로 배우는 React 19 with 스프링부트 API서버

안녕하세요! 하나의 엔티티에 @ElementCollection 붙은 필드가 두 개 있는 경우를 시험해 보고 있습니다. @EntityGraph(attributePaths = {"a", "b"}) 이런 식으로 해서 테스트를 돌리면 org.hibernate.loader.MultipleBagFetchException: cannot simultaneously fetch multiple bags 과 같은 오류가 나는데 ElementCollection 두 개가 있는 경우는 하나의 쿼리로 모두 가져오는 방법은 없나요?

  • react
  • spring-boot
  • jpa
  • jwt
  • redux-toolkit
김동영 댓글 1 좋아요 0 조회수 275

피그마 팀 생성

미해결

안녕하세요 피그마 Professional plan 으로 Design seat 4구좌로 결제를 했는데요 팀 여러개를 만들어서 동일한 사용자들에게 edit 권한을 주면 추가 결제 안되나요? A팀 1번~4번 Edit 권한 부여 B팀 1번~4번 Edit 권한 부여 C팀 1번~4번 Edit 권한 부여 한 팀에 4명에게만 Edit 권한 부여 가능한건지 궁금해서 문의드립니다.

tndusakaak 댓글 1 좋아요 0 조회수 214

시험환경 체험링크가 들어가지지 않습니다.!

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

시험환경 체험링크에서 코딩을 하려고 했는데. 위사진처럼 링크를 들어가면 계속 저렇게 뜹니다. ㅠ 이럴땐 어떻게 해야될까요.?? (작업형1 모의고사 부분입니다)

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
성욱 댓글 1 좋아요 0 조회수 250

라운드 로빈 강의 중 이해되지 않는 부분이 있습니다.

미해결

FreeRTOS 프로그래밍

라운드 로빈은 선점형 스케줄링이라고 알고 있는데, 라운드 로빈이 비선점형 스케줄링만을 필요로 할 경우 최적이라는 것이 이해가 되지 않습니다.

  • 운영체제
  • 임베디드
  • FreeRTOS
미미미미미 댓글 1 좋아요 1 조회수 313

"Validation failed (numeric string is expected)" 400 에러와 함께 유저 프로필 / 게시글을 불러오지 못합니다

해결됨

Next + React Query로 SNS 서비스 만들기

해당 오류와 함께 유저 프로필 페이지 접속시 게시글을 불러오지 못합니다...!! 콘솔창에서는 해당 메시지와 함께 오류가 출력되는데 맨 밑에 d는 UserPosts.tsx 컴포넌트에서 찍어본 useQuery로 패칭한 데이터 찍어본것 입니다. getUserPosts.ts에서 받아온 res 값을 콘솔에 찍어봤습니다 제로초님 코드와 동일한데 어떤 이유에선지 유저 프로필 페이지 게시글을 못불러오는지 잘 모르겠어서 낑낑대다가 질문 드렸습니다...ㅠㅠ 감사합니다

  • react
  • next.js
  • react-query
  • next-auth
  • msw
천하무적박정권 댓글 1 좋아요 0 조회수 427

express response 타입

미해결

웹 게임을 만들며 배우는 React에 TypeScript 적용하기

type JsonBody = { success: boolean; data: any; }; declare global { namespace Express { export interface Response { json: (body: JsonBody) => this; test: (body: JsonBody) => this; } } } export {}; 라이브러리 버전 express 4.18.2 @types/express 1.17.17 get, post 등 모든 요청에서 응답으로 res.status(200).json({success:true, data: []}) 이런 형식으로 코드 자동완성 기능 이용하려고 위와 같이 Express Response에 json 타입을 오버로딩 했는데 res.status(200).json 코드를 입력하면 오버로딩한 타입은 자동완성추천에 뜨지않고 express 자체에서 작성해둔 타입 json(body?: any): Response<any, Record<string, any>, number> 이런 타입만 뜹니다. json 아래에 작성한 test는 res.status(200).test 작성시 자동완성 추천도 잘되고 객체에 success랑 data 입력하게 자동완성 기능이 잘 동작하는데 json만 동작이 안됩니다. 어떻게하면 해결할 수 있을까요?

  • react
  • typescript
haruharu 댓글 1 좋아요 0 조회수 244

WSAEventSelectModel 질문 있습니다.

미해결

[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버

안녕하세요, Client Socket과 이벤트를 select 하실때 FD_READ | FD_WRITE | FD_CLOSE 3가지를 동시에 바인딩하시는 이유가 궁금합니다 강의중 언급하신 'TCP 논 블로킹 소켓에서, 데이터를가 분할되서 송신될 수 있다. 하지만 웬만하면 일어나지 않는다.' 의 상황에 대응하기 위하여 send 함수 호출 시 각 인자를 수정하셨는데, FD_WRITE는, 만약 위와 같은 상황이 발생했을때, 다음 프레임에서 이벤트를 감지하기 위함이신지, 만약, 위와 같은 데이터 분할 송신이 절대 일어나지 않는경우라고 가정하면 FD_READ | FD_CLOSE 2개의 플래그만으로도 목표하신 에코서버 구현이 가능할것인지 이 궁금합니다.

  • 네트워크
  • MMORPG
  • windows-server
rhsj109999 댓글 1 좋아요 0 조회수 314

반복문 강의에서

해결됨

코딩테스트 [ ALL IN ONE ]

vscode에서 for 문 디버그하는 거 어떻게하나요 ?

  • python
  • 코딩-테스트
  • 알고리즘
kkkkkk 댓글 2 좋아요 1 조회수 268

SkillSystemWindow 스크립트 drawDatabase함수에서 null참조발생

미해결

[유니티 레벨 업!] 모듈식으로 개발하는 스킬 시스템

강의자료에 있는 스크립트를 그대로 올려도 오류가 발생합니다. GUI Error: Invalid GUILayout state in SkillSystemWindow view. Verify that all layout Begin/End calls match UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&) -> DrawDatabase(databaseTypes[toolbarIndex]);부분 NullReferenceException: Object reference not set to an instance of an object ->drawdatabase함수의 dataType.BaseType.GetField ~~~ 부분)

  • unity
  • modules
강남영 댓글 3 좋아요 0 조회수 469

소스코드 pdf 이름이 한글이에요

미해결

김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 자바 파일 다운 후 압축을 풀고 강의을 진행 후 파일을 열었는데 pdf 제목들이 한글로 뜹니다

  • java
  • 객체지향
댓글 1 좋아요 0 조회수 247

26분50초에 세로줄 어떻게 해요 ..? ㅎㅎㅎ

해결됨

[코드캠프] 시작은 프리캠프

26분50초에 세로줄 어떻게 해요 ..? ㅎㅎㅎ 저는 일단 영어 소문자 l 로 했어요 ..ㅎㅎ

  • HTML/CSS
  • javascript
히응 댓글 2 좋아요 0 조회수 304

인기 태그

인프런 TOP Writers

주간 인기글