slope을 생성해 Box Collider 2D를 주고,
chickBall 을 Prefab으로 등록한다. order in layer는 2로 두어 가장 앞쪽으로 올 수 있게 한다.
그리고 Rigidbody 2D와 Circle Collider 2D를 준다.
cshChickGenerator 스크립트를 작성한다.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class cshChickGenerator : MonoBehaviour
{
public GameObject obj; //ChickBallPrefab 설정
public float interval = 3.0f; //다음에 함수가 호출될 인터벌
void Start()
{
//SpawnObj함수를 게임이 실행된 0.1초 후에 호출, 이후 interval초 마다 호출 된다.
InvokeRepeating("SpawnObj", 0.1f, interval);
}
//SpawnObj함수는 ChickBallPrefab을 생성한다.
void SpawnObj()
{
Instantiate(obj, transform.position, transform.rotation);
// obj를 이 스크립트가 들어가는 오브젝트의 위치, 방향에다 복제
}
}
InvokeRepeating 함수는 특정 함수를 지정된 시간 간격으로 반복해서 호출시킨다.
InvokeRepeating(호출할 함수의 이름, 몇 초 후에 실행 시킬것인지, 다음 함수가 실행되기까지의 간격)
빈 오브젝트인 ChickPoint도 position을 설정해 생성하고, chickGenerator 스크립트를 ChickPoint에다 추가한다.
Obj에 ChickBall Prefab을 넣어준다.
지정된 위치인 ChickPoint 에서 ChickBall이 게임 시작 0.1초 후에 3초 간격으로 복제되기 시작한다.
ChickBall에 탄성을 추가해보자.
Project -> 2D -> Physics Material 2D 추가
이름을 ChickPhysics로 변경 후 Friction과 Bounciness를 수정한다.
Friction: 0.4 (마찰계수, 0: 마찰이 없는 상태)
Bounciness: 1 (반발계수, 0: 탄성이 전혀 없는 상태)
생성한 물리 속성을 ChickBall 프리팹의
Rigidbody 2d -> Material 에 추가한다.
Chickball에도 마찬가지로 cshDestroyObj 스크립트를 추가해 일정시간이 지나면 사라지게 한다.
'UNITY' 카테고리의 다른 글
[Unity] Visual Studio Editor Package version 2.0.15 is available, we strongly encourage you to update from the Unity Package Manager ~ 에러 해결방법 (0) | 2022.05.22 |
---|---|
[Unity] 2D Content 제작하기 (4) (OnCollisionEnter2D) (0) | 2022.04.25 |
[Unity] 2D Content 제작하기 (2) (Instantiate, Destroy) (0) | 2022.04.25 |
[Unity] 2D Content 제작하기 -이미지 배치 (0) | 2022.04.25 |
[Unity] Instantiate -오브젝트 복제하기 (0) | 2021.10.12 |