궁극적으로 원하는 거 - DSP VR모드.
당장 해볼만한 거 - 화면이라도 VR로 보기.
알아야 하는 거 - 모딩이란걸 애초에 어떻게 하는가?
찾은 거 - https://steamcommunity.com/sharedfiles/filedetails/?id=2106187116
Steam Community :: Guide :: How to make mods with BepInEx
Here you will learn how to make Streets of Rogue mods using BepInEx. I assume you have basic knowledge of C#, so I'm not going to explain how classes and attributes work....
steamcommunity.com
비주얼 스튜디오 깔음.
해볼거 - 이런저런 모드들을 보면서 대략 어떻게 돌아가는지 감잡기.
본거 - https://github.com/code2X/DspMods(자동항해)
https://dsp.thunderstore.io/package/Kaleidox/FirstPersonView/(카메라관련)
https://github.com/DrBibop/RoR2VRMod/tree/main/RoR2VRMod(리오레2 VR모드)
문제 - 리오레2 VR모드는 너무 종합적임(모션 및 컨트롤등등) "시야"에 관한 단 한가지만 따로 찾을수 있나?
c#에 대해 아는게 너무 없음
유니티 게임에 대해 아는게 너무 없음
using RoR2; <- 뭐여? 어디서 볼 수 있는지? -> 리스크 오브 레인 2 원본 게임파일이었다.
이정도 하고 식사함.
유니티로 된 다른 VR게임 -> H3VR.
유니티 자체에서는 플러그인을 쓰면 손쉽게 VR 시야를 쓸 수 있음.
카메라(인게임)가 비추는 화면을 -> 어찌어찌 잘 해서 -> VR 헤드마운트 시야로 바꿔줄 수 있다면 문제는 간단할 텐데
생각: BepInEx로 유니티 VR 플러그인을 가져오면 되지 않을까? 되나 그게?
문제: https://skarredghost.com/2020/09/25/steamvr-unity-xr-interaction-toolkit-input/
How to make SteamVR input work with Unity XR Interaction Toolkit in Unity
A detailed tutorial on how to solve the problem of input not working for SteamVR headsets in Unity when you use the XR Interaction Toolkit
skarredghost.com
이것에 더해 버전관련 이슈도 있다. 유니티 2019 전후로 생기는 모양. DSP는 2018년 버전을 사용한다.
생각보다 되게 복잡한 듯 하다...
유니티 에셋쪽의 스팀VR 플러그인은 2019년 버전이다.(5.6.7). 다른 방법을 찾아야 할 것 같다.
모딩 커뮤니티 등 이것저것 찾아봤지만 버전이 안맞거나 EXE 파일을 변형하는 등 이런저런 수를 써야 한다. 일단 모딩 자체가 잘 돌아가나 확인부터 해야겠다.
실제 설치 없이 r2modman만으로 매개변수 등 설정이 되는지 확인.
자체빌드 dll -> Settings - Import local mod로 매니저에 올려 관리 가능.
매개변수(BepInEX 로그보기) -> Config - BepInEx\config\BepInEx.cfg -> Logging.console -> enable -> TRUE
로그로 잘 나온다.
기존에 실행되던 메소드를 원하는 메소드로 갈아치우기 위해서 하모니를 사용한다.
1. 정확히 원하는 기능을 하는 원본 메소드를 찾아내야 한다.
2. 원하는 코드를 작성한다.
3. 하모니로 갈아치운다.
4. 원본의 처분은 알아서 잘 진행한다.
라이브러리 충돌 때문에 한참 헤맸다. 의지 모자라서 오늘은 종료.