본문 바로가기

유니티엔진

C# 유니티 공튀기기

// Vector 3 는 x,y,z // Vector 2 는 x,y를 가지고있음.

// Vector.left 는 // Vector3(-1,0,0)이다.

// Update()는 유니티 내부 이벤트 함수로, 1개의 Frame이 실행될 때 1번씩 호출된다.

// Edit Project Settings -> Editor -> DefaultMode -> Mode :2D 를 통해서 2D모드로 바꿔줄 수 있음.

// 계산해서 지정하지않고 Time.DeltaTime 속성을 이용하면 실행 단위마다 달라지는 1개의 프레임 처리시간을 알 수 있고

// 그 시간을 이동거리에 곱하여 frame당 거리를 얻을 수 있다.

// transform.position.x // transform.position.y // transform.position.z 가있음.(연산자 비교가된다)

// Lerp란? Lerping이란? LinearInterpolate이다. 선형보간법이다.

// Vector3.Lerp(Vector3 a, Vector3 b, float t)

// time = time + Time.deltatime

// Transform.position = Vector3.Lerp(startpos.endpos.time)

//Q transform.position = transform.position + Vector3(-1,0,

0) * Time.deltaTime;

//위와 같이 쳤을때 Vector3는 호출 할 수 없는 멤버인 'Vector3'은(는) 메서드처럼 사용 할 수 없습니다. 라고뜸. [해결방법알기]


using System.Collections; using System.Collections.Generic; using UnityEngine; public class Sphere_pivot : MonoBehaviour { // Vector 3 는 x,y,z // Vector 2 는 x,y를 가지고있음. // Vector.left 는 // Vector3(-1,0,0)이다. // Update()는 유니티 내부 이벤트 함수로, 1개의 Frame이 실행될 때 1번씩 호출된다. // Edit Project Settings -> Editor -> DefaultMode -> Mode :2D 를 통해서 2D모드로 바꿔줄 수 있음. // 계산해서 지정하지않고 Time.DeltaTime 속성을 이용하면 실행 단위마다 달라지는 1개의 프레임 처리시간을 알 수 있고 // 그 시간을 이동거리에 곱하여 frame당 거리를 얻을 수 있다. // transform.position.x // transform.position.y // transform.position.z 가있음.(연산자 비교가된다) // Lerp란? Lerping이란? LinearInterpolate이다. 선형보간법이다. // Vector3.Lerp(Vector3 a, Vector3 b, float t) // time = time + Time.deltatime // Transform.position = Vector3.Lerp(startpos.endpos.time) //Q transform.position = transform.position + Vector3(-1,0,0) * Time.deltaTime; //위와 같이 쳤을때 Vector3는 호출 할 수 없는 멤버인 'Vector3'은(는) 메서드처럼 사용 할 수 없습니다. 라고뜸. [해결방법알기] public GameObject ball; bool isright = true; float speed = 20f; Vector3 right = new Vector3(1, 0, 0); Vector3 left = new Vector3(-1, 0, 0); void Update() { if (ball.transform.position.x >= 7 && isright == true) { isright = false; } else if (ball.transform.position.x <= -7 && isright == false) { isright = true; } else { } if (isright) { ball.transform.position = transform.position + right * Time.deltaTime * speed; } else { ball.transform.position = transform.position + left * Time.deltaTime * speed; } } }


'유니티엔진' 카테고리의 다른 글

Culling  (0) 2021.11.09
c# Collider 충돌체크로 공튀기기  (0) 2020.03.08
Unity Clear Flag(유니티에서 스카이박스가 안보일때)  (0) 2020.03.05
유니티 Tag와 Layer  (0) 2020.03.04
유니티 Pivot  (0) 2020.03.04