Source SDK 2013
![Icon-broom.png](/w/images/thumb/7/71/Icon-broom.png/32px-Icon-broom.png)
이 문서는 더 높은 품질을 위해 정리 되어야만 합니다 because:
OS X 운영체제는 기존 문서가 Windwos 운영체제 중심으로 작성되어 있어 SDK를 이용하는데 많은 제약이 있습니다. 언젠가 갈아엎을 필요가 있습니다. 또한 쉐이더 관련 지침이 제대로 작성되지 않았습니다.
도움을 주시려면, VDC 수정 도움과 Wikipedia 정리 과정 을 참고하세요.![Note.png](/w/images/thumb/c/cc/Note.png/10px-Note.png)
준비하기 (멀티 및 싱글 모두)
Source Sdk Base 2013 설치
Source Sdk 2013 (본인 재량에 따라 멀티 혹은 싱글) Steam->라이브러리->도구(또는 검색창에 Source Sdk base 2013 입력후 설치)에서 설치하시거나 아래 링크를 통해 설치해주세요:
- Install Source SDK Base 2013 (SP) Singleplayer (AppID: 243730)
- Install Source SDK Base 2013 (MP) Multiplayer (AppID: 243750)
소스 코드 얻기
방법 1:GitHub Desktop client 이용하기(Windows/OS X)
- GitHub Desktop 사이트에 접속해 실행파일을 받고 설치를 진행해줍니다.
- Source SDK git repo 사이트를 접속하시고 "Clone to desktop"을 눌러줍시다.
방법 3: 직접 ZIP 압축파을 다운로드 받기
![Note.png](/w/images/thumb/c/cc/Note.png/10px-Note.png)
여기에서 파일을 받고 압축을 풀어줍시다.
설정하기 (각 플랫폼 마다)
Windows 운영체제에서 Source Sdk 설정하기
1단계: Visual Studio 2013 설치
![Note.png](/w/images/thumb/c/cc/Note.png/10px-Note.png)
- Visual Studio 2013을 받아 설치합시다..
- Multibyte MFC Library도 설치해줍시다..
![Note.png](/w/images/thumb/c/cc/Note.png/10px-Note.png)
2단계: Microsoft Speech SDK 설치하기
- Microsoft Speech SDK을 받아 실행합시다.
- 원하시는 경로에 Unzip을 선택해 압축을 풀고
Microsoft Speech SDK 5.1.msi
을 실행시켜 줍시다. - 기본경로에 파일을 설치해주신다음
C:\Program Files (x86)\Microsoft Speech SDK 5.1
폴더 내에 있는 내용물을<SDKROOT>\sp\src\utils
경로나<SDKROOT>\mp\src\utils
경로에 sapi51폴더를 만들어 그 폴더 안으로 복사해줍시다. - 경로 설정에 유의합시다! : \sp\src\utils\sapi51 폴더에 'Include','Bin','IDE'. 같은 폴더가 있어야 하며 결코 Microsoft Speech SDK 5.1폴더가 있으면 안됩니다. 만약 이런 잘못된 경로로 진행하시면 나중에 컴파일 단계에서 에러 코드 1을 출력될 것입니다.
- InClude 폴더 내에 있는
sphelper.h
을 실행시켜 다음 행에 있는 기존 문구 대신 아래 문구로 바꿔줍시다.(앞에서 언급했듯 Notepad++을 이용해 바꿔주시면 간단합니다. 단 저장을 잊지말고 눌러주세요!):
769 행 :
const size_t ulLenVendorPreferred = wcslen(pszVendorPreferred); // no size_t
1418 행 :
static long CoMemCopyWFEX(const WAVEFORMATEX * pSrc, WAVEFORMATEX ** ppCoMemWFEX) // missing long
2368 행 :
const WCHAR * PropertyStringValue() const
{
// Search for the first NULL and return pointer to the char past it.
SPDBG_ASSERT(eEventId == SPEI_PROPERTY_STRING_CHANGE);
const WCHAR * psz = (const WCHAR *)lParam; // moved this from for init
for (; *psz; psz++) {}
return psz + 1;
}
2560 행 :
SPPHONEID* pphoneId = (SPPHONEID*)((WCHAR *)dsPhoneId); // improper casting
2634 행 :
pphoneId += wcslen((const wchar_t *)pphoneId) + 1; // improper casting
3단계: 프로젝트 파일을 컴파일하기
<path-to-git>\sp\src\
경로에 있는 createallprojects.bat 및 creategameprojects.bat 파일을 실행시켜 줍시다.<path-to-git>\mp\src\
경로에 있는 createallprojects.bat 및 creategameprojects.bat 파일을 실행시켜 줍시다.
- 원하시는 모드의(Singleplayer 혹은 Multiplayer) everything.sln 파일을 열어줍시다. .
- Solution Explorer 목록 밑에 있는 모든 솔루선, 을 선택해주시고 우클릭을 한다음 DuBug를 Release로 교체해 줍시다.
- 이후everything 솔루선에 대해, Build Solution을 실행해 컴파일 시켜줍시다..
Notes
![Note.png](/w/images/thumb/c/cc/Note.png/10px-Note.png)
{{Note|client.dll 파일은 일반적으로 <path-to-git>\sp\src\game\client\Release_mod_hl2
및 <path-to-git>\sp\src\game\client\Release_mod_episodic
}경로에 생성됩니다.}
![Note.png](/w/images/thumb/c/cc/Note.png/10px-Note.png)
<path-to-git>\sp\src\game\server\Release_mod_hl2
및 <path-to-git>\sp\src\game\server\Release_mod_episodic
경로에 생성 됩니다.
![Note.png](/w/images/thumb/c/cc/Note.png/10px-Note.png)
4단계 구축: 자신만의 쉐이더 구축하기
Source SDK 2013: Shader Authoring 문서로 이동해주시기 바랍니다..
스팀에서 설정
자세한 내용은 Setup mod on steam 문서를 참조하세요..
여담
문제현상
MSB8008:특정 플랫폼 (v120_xp) 및 (v120)을 갖고 있지 않거나 유효하지 않습니다. (Windows)
- 모든 프로젝트 파일을 선택합시다.
- 파일에 우클릭을 해주시고, "Properties" 을 눌러줍시다.
- "Configuration Properties" 에 들어갑시다.
- "Platform toolset"을 (v100)로 바꿔줍시다.
(Visual Studio가 영문판이기에 각각의 용어를 따로 번역하지 않았습니다.)
(경로:Project->Properties->Configuration Properties->General->Platform toolset = Visual Studio 2010(v100))