0.유니티 프로빌더와 원뿔같은 Cone 만들기
유니티에서 게임 오브젝트를 만들면서 기본적으로 제공되는 도형들이 많이 불편했다.
Assets을 찾아봤지만 교통 꼬깔형태의 Cone이 대부분이고 폴리곤 형태에서 원뿔에 가까운 형태는 직접 모델링해야 한다.
Blender 써볼까? 했지만 우선 '3D 게임 공부!' 목적이므로 프로빌더 패키지를 활용하기로 했다.
1. 프로빌더 설치.
Unity에서 제공하는 3D 모델링 패키지로 Package Manager 에서 바로 설치할 수 있다.
[Tools] -> [ProBuilder] -> [ProBuilderWindow] 로 바로 윈도우를 추가해 주었다.
2.원뿔 만들기
New Shape를 선택해서 씬창에 생긴 도구를 이용해 Cone을 만들어 보았다.
Cone을 선택하고 [CTRL] + [Shift] 버튼을 이용해서 원뿔에 가까운 오브젝트를 생성해 주었다. 딸깍!x3
Side Count는 64로 설정하였다.
팽이처럼 뒤집기 위해서 Transform을 수정하기 위해 오브젝트를 클릭했더니 중심이 아닌 피봇을 잡고 있었다. ProBuilder 창에서 [Center Pivot]을 클릭하여 축을 오브젝트 중앙으로 변경해 주었다.
팽이를 돌리기 위해 땅과 색을 추가했다.
3.RigidBody 와 Collider 컴포넌트
Cone은 Spinner로, Plane으로 만든 땅은 Ground로 이름을 변경해 주었다. 둘 다 ProBuilder로 생성하면서 Mesh Collider는 자동으로 추가되어 있다.
[Spinner]
Transform.position (0,1,0)
Mesh Collider - [Convex] 설정
RigidBody - 추가
[Ground]
대충 Spinner 밑에 Z축으로 길게
4.스크립트 추가. SpinController.cs
구현하고자 하는 기능은 팽이가 회전하면서 이동하고 점점 힘을 잃어 바닥에 구르는 것.
using System.Collections;
using System.Collections.Generic;
using System.Numerics;
using UnityEngine;
using Vector3 = UnityEngine.Vector3;
public class SpinController : MonoBehaviour
{
[SerializeField] private float rotateSpeed; // 회전력
[SerializeField] private float speed; //이동속도
private Vector3 playerVec; //Player 절대 이동 벡터
private Vector3 inputVec; //상대 이동벡터
private float speedDamper; //속도 감소
private Rigidbody rb;
private void Awake() {
rb = GetComponent<Rigidbody>();
rotateSpeed = 10000;
speed = 100;
speedDamper = 0.999f;
}
void Start()
{
}
private void Update() {
float inputX = Input.GetAxis("Horizontal");
float inputY = Input.GetAxis("Vertical");
inputVec = new Vector3(inputX, 0, inputY)*Time.deltaTime;
rotateSpeed *= speedDamper;
speed *=speedDamper;
}
void FixedUpdate()
{
transform.Translate(inputVec*speed,Space.World);
rb.AddTorque(new Vector3(0,1,0)*rotateSpeed*Time.fixedDeltaTime,0);
}
}
Spinner에 스크립트 추가 후 테스트 해보았다.
이동도 구현했으나 뭔가 팽이스럽지 않아서 다음시간에 추가해보고자 한다.
'게임만들기 > UNITY' 카테고리의 다른 글
[UNITY] 첫 3D 팽이 게임 만들기 - 벽 충돌과 Raycast Test (1) | 2024.10.19 |
---|---|
[UNITY] 첫 3D 팽이 게임 만들기 - 각저항 분석 후 팽이 '잘'돌리기 (2) | 2024.10.16 |