프로그래밍/VR
2017. 7. 27. 00:31
기본적으로 Unity5.x, Unity2017에서는 VR을 자동으로 지원해 준다. Edit -> ProjectSetting -> Player -> Other Setting -> Virtual Reality Supported 라는 체크박스를 체크해주면 끝이다.
문제점은 메인 카메라를 직접 움직일 수가 없다. 따라서 편법 아닌 편법 (유니티에서 권장하는 방법)으로 좌표용으로 쓸 GameObject 한 개를 만들고 그것의 자식으로 Main Camera를 넣어준다. 그다음 GameObject의 좌표를 변경하면 MainCamera도 같이 변경된다.
VR FPS를 만들 경우 카메라를 캐릭터의 자식으로 붙이고 회전을 마우스로 줘도 된다. ( 헤드 트래킹에 따라서 회전을 시킬 경우 캐릭터가 엎드리거나 누울 수 있으니 헤드 트레킹을 사용할 경우에는 더미 GameObject를 만들어서 캐릭터를 따라다니게 하고 Y축만 따로 가져와서 캐릭터에 적용시키면 된다.
NDC2017
2017. 5. 18. 14:11
더 좋은 코드를 위한 함수형 프로그래밍
순수함수와 불변성
순수함수 : 함수의 겨로가값이 오직 입력 인자 값들에 의해서만 결정.
- 특정 입력값에 대해서 결과값이 결정적으로 대응되는 함수
- 부작용이 없는 함수.
부작용 : 상태에 영향을 받거나 변화를 주는 모든 동작
-화면 출력
-소켓통신
-디스크 I/O
-예외 catch
참조 투명성
-> 어떤 표현식을 그 표현식의 결과값으로 교체해도 전체 프로그램의 실행결과에 영향을 주지 않는 성질
-> 컴파일러에게 다양한 최적화 기회를 제공
기억 - memoization
- 입력값 / 함수명을 알면 결과값은 항상 같음
지연 연산 - Lazy evaluation
- 실제로 결과값이 필요할 때만 함수를 평가

불변성

















위 사진은 ranges다.



















'NDC2017' 카테고리의 다른 글
게임 bot 탐지 모델 구현 및 응용사례 (0) | 2017.05.18 |
---|---|
라이브 프로세스 분석을 통한 효율적인 로직 개발 (0) | 2017.05.18 |
현실적인 pvp AI 만들기 (0) | 2017.05.18 |
NDC2017
2017. 5. 18. 14:03
게임 bot 탐지 모델 구현 및 응용사례
ex) 3초 안에 10개의 스테이지를 연속으로 클리어하면 어뷰저에요.
-> 군맹무상 : 자기의 좁은 소견으로 진실이라고 믿는다.
모바일 게임은 주 계정에서 봇을 사용한다. - 스스로 게임 플레이를 할 때도 있다.
기존 rule로 1주일 간의 최신 데이터를 확인해 보면 정확도도 낮고 높은 오진률 발생.
문제를 해결하는 가장 첫 번째 단계는 우리 스스로 문제가 있다는 것을 인식하는 것.
ex) 라인레인져스
레벨업 = 경험치 획득량 / 플레이 횟수 (X)
레벨업 = 경험치 획득량 / 경험치 획득 횟수+1
box plot
1사분위수 3사분위수 : 비교하는 그룹의 제 1사분위수와 제 3사분위수 사이의 구간이 완전하게 분리 된 것이 좋다.
feature selection이 필요한 이유
1. 관련 없는 데이터 제거
2. 모델 정확도와 관련된 feature 중요도 파악
3. feature는 꼭 필요한 것만 선택하는 것이 중요.
RFE를 꼭 알아두자..
RF Classifier / SVM Classifier
RFE는 feature를 재귀적으로 제거하고 남은 feature만으로 모델 정확도를 계산하여 목표 변수에 대한 예측에 기여하는 속성의 조합
PCA(Principal Component Analysis)는 왜 사용 안함?
1. 탐지 모델 생성과 검증을 위해 데이터 분할
2. Train data의 비율은 임의로 설정
- Undersampling 방식을 이용하여 80 : 20으로 조정 (Sampling, Cost-sensitive, Hybrid methods)
XGBOOST 알고리즘.
1. Computation in C++
2. R/Python 라이브러리(인터페이스) 제공
3. Tree-based 모델.
Ramdom Forest vs XGBoost
'NDC2017' 카테고리의 다른 글
더 좋은 코드를 위한 함수형 프로그래밍 (0) | 2017.05.18 |
---|---|
라이브 프로세스 분석을 통한 효율적인 로직 개발 (0) | 2017.05.18 |
현실적인 pvp AI 만들기 (0) | 2017.05.18 |