inflearn logo
강의

Course

Instructor

[From Start to Launch] Unity Casual Mobile MMORPG (M2)

Server Framework

(해결) 맥북 사용하시는 수강생 분이 계시다면 rider, protobuf 조언을 구합니다.

489

dpravity

5 asked

0

개발환경은 맥북, rider 사용중 입니다.

rider 패키지 구성과 protobuf 구성에서 해결 방법을 찾고 있습니다.

rider 패키지 구성 현황

[구성완료]

Server

[미구성]

Tools

Common

해결 방법을 알고계시다면, 레퍼런스 또는 조언 부탁드립니다.

감사합니다.

@추가 내용

protobuf 설치는 homebrew 로 설치하였습니다.

protoc --version : libprotoc 27.1

protobuf 버전 변경 - 3.27.2

C# unity mysql MMORPG ef-core asp.net-web-api mac rider protobuf

Answer 2

4

dpravity

맥북/리눅스 사용자용 1차 해결 내용

(필수) protobuf 설치

  • v3.27.2 버전과 맥북용 v27.2 버전은 동일하므로 사용 가능

디렉토리 위치

Server

  • GenProto.bat -> GenProto.sh 파일 교체

    • chmod +x GenProto.sh : sh 권한 부여

sh 스크립트 내용

#!/bin/bash

# 현재 작업 디렉토리 저장
curPath=$(pwd)
projectPath=$1

# 프로젝트 경로로 이동
cd "$projectPath"
cd ..

# 루트 경로 설정
rootPath=$(pwd)
outputPath="$rootPath$2"

# 프로토콜 파일이 있는 디렉토리로 이동
cd Common/Protocol

# protoc 명령어 실행 (brew로 설치된 protoc 사용)
protoc -I=./ --csharp_out="$outputPath" ./Protocol.proto ./Enum.proto ./Struct.proto

# 오류 발생 시 실행 중단
if [ $? -ne 0 ]; then
    echo "protoc 명령어 실행 중 오류 발생"
    exit 1
fi

# 패킷 생성기 실행 디렉토리로 이동 (예: macOS용 대체 프로그램 사용)
cd "$rootPath/Tools/PacketGenerator/bin"

# macOS용 PacketGenerator 실행 (예: PacketGenerator 대신 다른 프로그램 사용)
./PacketGenerator -o "$2" -t "$3"

# 원래 디렉토리로 돌아가기
cd $curPath

# 스크립트 종료
exit 0

GameServer.csproj PreBuild 내용 변경

<Target Name="PreBuild" BeforeTargets="PreBuild">
        <Exec Command="bash $(SolutionDir)GenProto.sh $(SolutionDir) /Server/GameServer/Packet/Generated/ 1" />
    </Target>

2

dpravity

Properties $(SolutionDir) 환경변수 Undefined 일 경우 빌드 옵션 확인 필요


GameServer.csproj 파일 또는 GameServer -> Properties -> Build Events 의 Before Build 에서 차이점

  • PreBuild는 MSBuild 표준 타겟으로 Visual Studio뿐만 아니라 다른 빌드 환경에서도 동작

  • PreBuildEvent는 Visual Studio에서 주로 사용

학습 전 커리큘럼 관련 질문 드립니다

0

109

1

강의 커리큘럼 질문 드립니다

0

60

1

수업질문은 아닌데요^^

0

115

1

게임 로직 루프에서 게임 틱 누락으로 인한 높은 CPU 사용 문제

0

85

1

선 이동과 히트 판정에 대해 질문 드립니다.

0

90

1

Job Scheduler - Cache locality

0

75

2

MMO 3D 게임 서버의 스킬 판정을 어떻게 하면 좋을까요?

0

190

2

코드 머지와 관련하여.

0

93

1

퀘스트 처리 시 궁금한게 있습니다.

0

115

2

Nagle Algorithm

0

99

1

현재 강의를 이용하여 3D 게임을 만들 경우 변경되야 될 사항들에 대해 궁금합니다.

0

131

2

ResourceManager에서 Multiple Sprite를 로드하는 방법

0

101

1

M2는 업데이트가 끝난건가요?

0

149

1

Interpolation & Server Tick Frequency

0

172

2

서버에서 디스커넥트되시는분들 JWT 관련 참고하셔요

0

120

1

aws 와 microsoft azure 중 aws 선택하신 이유가 궁금합니다.

0

189

1

강의는 끝인건가요?

0

332

2

아이템 강화 테이블 관련

0

225

2

강의 관련 질문 드립니다.

0

238

1

리니지1의 이동 질문

0

401

2

버그에대한 썰

0

131

1

포탈 프로젝트에 서버 코드에 에러가 뜨네요

0

137

1

아이템 수량에 관해서 질문입니다.

0

140

1

퀘스트 관련 질문 드립니다.

0

142

1