반응형
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 |
Tags
- firebase
- 서브모듈 sourcetree
- 안드로이이드 submodule
- 안드로이드개발
- 내 맘대로 정리한 안드로이드
- github
- 안드로이드
- github submodule
- gitlab submodule
- Android Studio
- 앱개발
- 카페오냥
- 코틀린
- 유니티
- 쿼터뷰
- submodule pull
- Kotlin
- 2d게임
- GIT
- 서브모듈 pull
- 티스토리
- 타이쿤
- Unity
- Android
- DataBinding
- 게임개발
- 앱
- 개발
- java
- submodule sourcetree
Archives
- Today
- Total
Uing? Uing!!
카페오냥 개발 - 04. 유니티 프리팹(prefab)으로 대량 생산하기 본문
반응형
고양이 한 마리를 애니메이션과 애니메이터를 이용해 움직이게 해 놓고 나서, 이번에는 고양이 여러 마리를 연달아 카페에 나타나게 하는 작업을 진행하였다.
같은 동작을 하는 고양이를 여러 마리 새로 뽑아내는 데에는 prefab기능을 사용할 수 있었다.
우선 Hierarchy 안에 cat을 한 마리 만들어 놓고, 거기에 애니메이션과 스프라이트, 스크립트 등을 원하는 대로 입혔다.
그리고 만들어진 cat을 프로젝트 뷰로 드래그하면 그게 고양이의 prefab이 된다. 원래 만들었던 고양이는 삭제하였다.
이 후로 프로젝트 뷰의 catPrefab을 꺼내면 바로 기존에 적용했던 모든 속성들이 다 적용된 객체가 생성된다.
그리고 catGenerator라는 emptyObject를 생성 후, 다음과 같은 스크립트를 적용하여 이 prefab을 5초 단위로 생성하도록 하였다. span초(5초)만큼의 시간이 지나면 새로운 catPrefab이 생성된다.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class CatGenerator : MonoBehaviour {
GameObject gameDirector;
public GameObject catPrefab;
float span = 5.0f; // time for new cat
float delta = 0;
int catIdx;
// Start is called before the first frame update
void Start() {
this.gameDirector = GameObject.Find("gameDirector");
}
// Update is called once per frame
void Update() {
this.delta += Time.deltaTime;
if (this.delta > this.span && gameDirector.GetComponent().emptySeatCnt > 0) {
this.delta = 0;
GameObject go = Instantiate(catPrefab) as GameObject;
go.transform.position = new Vector3(1.6f, 2.2f, 0);
}
}
}
적용 후 마지막으로 catGenerator의 위 코드가 적용된 스크립트에서 catPrefab에 아까 작성해 둔 프리팹을 드래그하였다. 이렇게 적용한 뒤 코드를 실행하자 고양이들이 5초마다 나타나 랜덤한 자리에 앉기 시작했다.
이제 여러 종류의 고양이를 랜덤하게 나타나게 하고 싶은데, 여기에서 막혀 있는 상태다. 성공 후에 다음 글 올려야지.
반응형
'Unity' 카테고리의 다른 글
카페오냥 개발 - 03. 유니티 2D swipe & zoom (0) | 2019.07.04 |
---|---|
카페오냥 개발 - 02. 쿼터뷰 레이어 조정 (0) | 2019.07.04 |
카페오냥 개발 - 01. 쿼터뷰 구현 (0) | 2019.07.04 |
카페오냥 개발 - 00. 게임 스케치 (0) | 2019.07.04 |
유어테일 개발 - 01. Ray2D를 통한 2D 터치이벤트 구현 (0) | 2018.12.20 |
Comments