VRChat 마이너 갤러리 저장소

제 목
강좌/팁 유니티 씬뷰가 아닌 게임 뷰에서 카메라 조작하기
글쓴이
이뀨립스
추천
8
댓글
20
원본 글 주소
https://gall.dcinside.com/vr/4105563
  • 2024-08-18 08:44:11
														

05b2de23fcd139ab2eed86e7429c7465536190b20b2081456565d2ed3d4b986b14223e9fe87e0a0becd33686e8d15b




보통 씬밖에 카메라가 조절이 안돼서 화가 날텐데


위 사진처럼 게임 뷰에서 시점 조절을 할 수 있다 (플레이나 제스처매니저 상태에만 조작 가능)








24b0d121e09c28a8699fe8b115ef046f594c989a

1. 메인 카메라 누르기






24b0d121e09c28a8699fe8b115ef0468e5a2eb




2. Add Component 누르고


   GameViewCameraController


라고 이름을 짓기







3. 스크립트 편집창이 뜨면



using UnityEngine;


public class GameViewCameraController : MonoBehaviour {

    public float lookSpeed = 10.0f; // 마우스 회전 속도 (기본 설정)

    public float moveSpeed = 0.1f; // 카메라 이동 속도 (기본 설정)

    public float zoomSpeed = 2.0f; // 카메라 줌 속도 (Orthographic Size 조정 속도)


    private Vector3 lastMousePosition; // 이전 프레임의 마우스 위치

    private bool isRotating = false; // 회전 중인지 여부

    private bool isPanning = false; // 팬닝 중인지 여부


    void Update() {

        HandleMouseInput();

    }


    private void HandleMouseInput() {

        // 우클릭 시 카메라 회전 시작

        if (Input.GetMouseButtonDown(1) ) {

            isRotating = true;

            lastMousePosition = Input.mousePosition;

        }

        // 우클릭 해제 시 카메라 회전 종료

        if (Input.GetMouseButtonUp(1) ) {

            isRotating = false;

        }


        // 휠 클릭 시 카메라 팬닝 시작

        if (Input.GetMouseButtonDown(2) ) {

            isPanning = true;

            lastMousePosition = Input.mousePosition;

        }

        // 휠 클릭 해제 시 카메라 팬닝 종료

        if (Input.GetMouseButtonUp(2) ) {

            isPanning = false;

        }


        // 카메라 회전 처리

        if (isRotating) {

            Vector3 delta = Input.mousePosition - lastMousePosition;

            float rotationX = delta.y * lookSpeed * Time.deltaTime;

            float rotationY = delta.x * lookSpeed * Time.deltaTime;


            transform.eulerAngles += new Vector3(-rotationX, rotationY, 0);

            lastMousePosition = Input.mousePosition;

        }


        // 카메라 팬닝 처리

        if (isPanning) {

            Vector3 delta = Input.mousePosition - lastMousePosition;

            Vector3 pan = new Vector3(-delta.x * moveSpeed, -delta.y * moveSpeed, 0);


            transform.Translate(pan, Space.Self);

            lastMousePosition = Input.mousePosition;

        }


        // 카메라 줌 처리

        float scroll = Input.GetAxis("Mouse ScrollWheel");

        Camera cam = Camera.main;

        if (cam.orthographic) {

            // Orthographic 카메라의 사이즈 조정

            cam.orthographicSize -= scroll * zoomSpeed;

            cam.orthographicSize = Mathf.Clamp(cam.orthographicSize, 0.01f, 1.0f); // 줌 제한 설정

        } else {

            // Perspective 카메라의 경우 전진/후진

            transform.Translate(Vector3.forward * scroll * zoomSpeed, Space.Self);

        }

    }

}










해당 소스 입력하기






4. 그럼 



24b0d121e09c28a8699fe8b115ef046ecc4bc3f0



이렇게 컴포넌트가 추가되어 나올텐데


이걸로 제한적이지만 게임뷰에서 시점 조작이 가능하다!!

(gpt가 코드짜줌)




서원 유니티의신이냐 2024.08.18 08:45:02
이뀨립스 gpt가다알려줌........ 2024.08.18 08:45:17
_백야_ ㅁㅊ 2024.08.18 08:45:22
Ann. 2024.08.18 08:45:22
껌딱지 피직스본 테스트하려고 클릭하는 거랑 화면 이동 두 개 겹치나? 2024.08.18 08:45:35
이뀨립스 2024.08.18 08:45:46
이뀨립스 2024.08.18 08:45:49
lia 천재임??? 2024.08.18 08:46:12
이뀨립스 피본은 왼클릭이라서 괜찮을거같은데... 화면조작은 우클릭이나 휠 2024.08.18 08:46:33
이뀨립스 GPT가 천재임.... 2024.08.18 08:46:41
ㅇㅇ 유니티 패키지로 만들어서 올려줘 125.244 2024.08.18 08:58:06
이뀨립스 2024.08.18 08:58:35
시스터즈 개추크래용 2024.08.18 08:59:33
ㅇㅇ1 이거에셋있잖아 121.158 2024.08.18 08:59:45
이뀨립스 헐 이럴수가...... 2024.08.18 09:00:14
이뀨립스 2024.08.18 09:00:21
ㅇㅇ1 https://booth.pm/ja/items/3852331 121.158 2024.08.18 09:02:49
칼도힉스 저는 그래서 그냥 카메라에 좌표값 입력해서 움직였슴 2024.08.18 09:12:58
이뀨립스 2024.08.18 09:14:11
이뀨립스 고수고수 2024.08.18 09:14:21
번호 분류 제목 글쓴이 날짜 추천
4118655 일반 자기전에 뒷태보고가생 37 헤르만 2024-08-24 10
4118592 일반 포즈모드 깔았는데 거열형 당함;; 7 고양이나무 2024-08-24 12
4118527 ♿️ 만약 뉴비들에게 "개걸창 브붕이를 보았어요"라고 말하면 1 여우의기도 2024-08-24 8
4118457 일반 서로 껴안고 있는애들 왜 저러고 있는거지? 5 Old_Cat 2024-08-24 8
4117456 일반 . 3 ㅇㅇ 222.102 2024-08-24 12
4114694 일반 내가 더 이쁜데 여친을 왜만듦 5 ㅇㅇ 1.239 2024-08-22 8
4113995 일반 "얍얍" 12 ㅇㅇ 14.45 2024-08-22 14
4113532 일반 제 여자친구 예쁘죠ㅠㅠㅠㅠㅜㅠ 14 ㅇㅇ 2024-08-22 10
4111500 일반 과몰입 남녀?ㅋㅋ 걍할말이 없네 7 ㅇㅇ 211.235 2024-08-21 12
4110650 월드 월드홍보) 심심해요 브붕붕 해병님! 5 Desuwa 2024-08-20 8
4110513 일반 아 주딱 씨발개같은 새끼야 4 ㅇㅇ 14.54 2024-08-20 8
4110411 일반 피부 이쁘게 꾸몄다. 3 대마법의요정 2024-08-20 13
4109754 일반 나 생일! 27 CALB 2024-08-20 10
4108336 창작 마후유 긂 12 06 2024-08-19 20
4107472 일반 크아아악 이녀석 쪼임이.....!!!!!!!! 21 헤르만 2024-08-19 10
4106946 일반 님들 저 할말있음 20 모로칸도_비바니_슈왈첼트2세 2024-08-19 11
4106224 일반 VRChat 서버 폭파됨, 모든 데이터 삭제된다고 함 7 MilkTank 2024-08-18 17
> 강좌/팁 유니티 씬뷰가 아닌 게임 뷰에서 카메라 조작하기 20 이뀨립스 2024-08-18 8
4105068 도와줘 이거 ㅅㅂ 왜이럼;; 23 포장 2024-08-18 12
4104938 일반 너네 오늘 무슨날인지 아냐...??? 27 쥬에루 2024-08-18 9
4104842 일반 오늘이 무슨 날인지 아시나요?! 24 증류쉐이 2024-08-17 11
4104158 창작 부스에 처음으로 아바타 출시했습니돵 7 S0M0 211.204 2024-08-17 8
4103254 일반 갤뉴비를 위함 요약 19 칼도힉스 2024-08-17 8
4103210 ♿️ 제발 저샘기 쳐내 15 배고파배불러 2024-08-17 12
4101709 ♿️ 내가 졌다 씨발련아 5 ㅇㅇ 2024-08-16 11
4101601 일반 얘귀엽죠ㅠㅠㅠㅠㅠㅠㅠㅠ 27 이뀨립스 2024-08-16 9
4100147 강좌/팁 너도 가능하다 텍메 30 언더! 최적화의 A to Z!! 6 MilkTank 2024-08-15 10
4100086 일반 얘들아 나 할말잇어... 33 참크레커 2024-08-15 14
4099948 일반 하루만 기다리면 친구들이 올거에요! 11 ㅇㅇ 220.122 2024-08-15 12
4099430 도와줘 ㅅㅂ 이거 왜이래 35 이뀨립스 2024-08-15 19
4096178 일반 시발아 너희는 이런거 하지 마라 18 구름맛사탕 2024-08-13 12
4094359 일반 꼬우면 나가 이새끼들아 5 ㅇㅇ 2024-08-13 9
4094335 일반 주딱 씨발 좆병신 후로게이 새끼가 3 ㅇㅇ 211.235 2024-08-13 14
4094288 일반 내가 느낀 이 겜 유일 단점 11 쥬에루 2024-08-13 9
4091333 일반 오늘 하루는 무슨짓을해도 용서해 주실거죠? 12 쎄쎄쎄 2024-08-11 10
4090258 일반 못생긴 애들은 조용히 차단 누른다 ㅇㅇ 9 ㅇㅇ 2024-08-11 13
4090078 일반 씨발 디코에 영상통화 버튼 삭제 좀 해라 15 행복하세요아프지말고 2024-08-11 11
4089478 창작 의상 마테리얼 일괄 교체 툴 만들었어 6 장세연 2024-08-10 8
4086309 정보 얘들아 브쳇 킹갓패치나옴 17 OculusQuest 2024-08-09 10
4084875 일반 아니 이거 내가 잘못한거냐? 억울하다 진짜 8 ㅇㅇ 39.112 2024-08-08 9
념글 삭제글 갤러리 랭킹