Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 반응형레이아웃
- Environment Reflections
- Rewired
- Specular Highlights
- Unity
- TextMeshPro 한글
- 구글플레이스토어
- 커스텀쉐이더
- kinect v2
- WebGL
- AssetBundle
- unityhub
- 역직렬화 오류
- untiy
- muilt controller
- 에셋번들
- AR
- 랜더스트리밍
- DS4
- 유니티
- 듀얼쇼크4
- RenderStreaming
- Depth camera
- TextMeshPro
- apk
- Android
- Unity VisualStudio
- web3D
- android app bundle
- webview
Archives
- Today
- Total
기억저장고
[Unity] 타켓위치 기준으로 카메라Zoom In/Out 하는법 본문
타켓 오브젝트가 카메라 오브젝트와 서로 마주보고 있지 않을때
카메라 FOV로 Zoom을 하면 카메라 기준으로만 Zoom이 된다
using UnityEngine;
public class ObjectZoom : MonoBehaviour
{
public Transform targetObject;
public float zoomSpeed = 2.0f;
public float minZoom = 1.0f;
public float maxZoom = 10.0f;
void Update()
{
float scroll = Input.GetAxis("Mouse ScrollWheel");
// 현재 카메라 위치에서 타겟 오브젝트까지의 벡터를 계산합니다.
Vector3 toTarget = targetObject.position - transform.position;
// 현재 거리를 저장합니다.
float distance = toTarget.magnitude;
// 거리를 조절합니다.
distance = Mathf.Clamp(distance - scroll * zoomSpeed, minZoom, maxZoom);
// 타겟 오브젝트 방향으로 카메라를 이동시킵니다.
transform.position = targetObject.position - toTarget.normalized * distance;
}
}
출처
채직비티ㅎ,,
'Unity' 카테고리의 다른 글
unity WebGL 빌드 후, Mac에서만 느릴경우 해결 (0) | 2023.10.26 |
---|---|
Target API 올렸을때 나온 모든 오류 (0) | 2023.10.13 |
[Unity]카메라 360 회전 시, 부드럽게(관성)회전 방법 (0) | 2023.09.20 |
[Unity] 텍스트 길이에 맞춰 UI 사이즈 조절하는법 (0) | 2023.09.15 |
유니티 카메라 360 회전 (0) | 2023.09.07 |
Comments