본문 바로가기
728x90

유니티/기초17

유니티 Invoke 1. Invoke() 이전 글에서는 시간의 경과에 따른 절차적 단계를 수행하는 로직을 구현하는 데 사용되는 함수로 Update 함수들과 Coroutine을 언급하였다. 이 함수들에 시간을 지연시키는 로직을 구현할 수 있다. 이러한 지연시키는 로직을 간단하게 구현한 함수가 Invoke() 함수이다. Invoke() 함수는 지정 시간 이후에 대상 함수를 호출한다. 또한, 일정 시간 후에 반복적으로 해당 함수를 호출하도록 구현한 InvokeRepeating() 함수와 같은 추가적인 함수들을 제공한다. Invoke(string methodName, float delayTime) InvokeRepeating(string methodName, float delayTime, float repeatRateTime ) .. 2020. 12. 1.
유니티 코루틴(Coroutine) 과 IEnumerator 1. 코루틴 (Coroutine) 코루틴은 시간의 경과에 따른 절차적 단계를 수행하는 로직을 구현하는 데 사용되는 함수이다. 시간의 경과에 따른 절차적 단계에 대한 로직을 구현하는 것은 Update() 함수들에서도 가능하다. 매 프레임마다 호출되는 로직은 Update()에서 구현하면 된다. 하지만 초당 호출이나, 매 프레임마다 호출이 필요하지 않은 부분을 매 프레임마다 호출하는 것은 바람직한 로직이 아니다. 코루틴은 함수를 호출한다. 함수는 한 프레임에 호출되어 완료가 된다. 이에 IEnumerator 형식을 반환 값으로 가지는 함수를 사용한다. IEnumerator는 함수 내부에 실행을 중지하고, 다음 프레임에서 실행을 재개할 수 있는 yield return 구문을 사용한다. 2. yield retur.. 2020. 11. 30.
유니티 데이터 저장 및 불러오기 (PlayerPrefs) 1. PlayerPrefs 프로그램의 개발에 있어서, 데이터는 가장 중요한 요소이다. 데이터는 지속적으로 저장되어, 캐릭터의 레벨과 같은 상태, 획득한 아이템 등은 영구적인 보관이 요구된다. 온라인 게임의 경우 대부분의 데이터는 서버에 저장된다. 이는 위조, 변조를 방지하는데 유리하며, 관리하기에 용이하다. 하지만 모든 데이터를 서버에 저장하는 것은, 지속적으로 클라이언트와 서버 간의 통신이 발생한다는 것을 의미하며, 이는 서버의 부담을 가중시킨다. 따라서, 중요하지 않은 데이터는 직접 클라이언트에 저장하고 관리한다. 중요하지 않은 데이터로는 음량 조절 값 같은 옵션 설정에 사용되는 데이터들을 예로 들 수 있다. 유니티는 데이터를 저장하기 위한 ScriptableObject, PlayerPrefs, Js.. 2020. 11. 29.
유니티 파티클 시스템 (Particle System)- 속성 1. 유니티 파티클 시스템 유니티 파티클 시스템은 작고 간단한 이미지나 메쉬를 대량으로 표현하는 데 사용하도록 만들어진 시스템이다. 파티클은 움직이도록 제어할 수도 있으며, 크기, 방향, 모양 등을 설정하여, 눈이나 비가 내리는 효과와 같은 다양한 효과를 만드는 데 사용된다. 1.1 속성 ▼아이콘 대부분 속성에는 ▼모양의 아이콘이 있다. ▼아이콘을 선택해서, 랜덤으로 파티클의 시작 크기, 속도 등을 조절할 수 있다. 파티클의 크기 및 속도에 랜덤성을 부여하여, 시각적인 효과를 높일 수 있다. Duration : 파티클 시스템의 재생시간이다. Looping : 반복사용 설정이다. Duration을 반복한다. Prewarm : Looping이 선택(✓)되면 활성화된다. 한 사이클( One Duration ).. 2020. 11. 27.
728x90