분류 전체보기
-
[TIL] 10주차 3일 ( Coroutine )개발일지/스파르타 코딩클럽 부트캠프 2024. 6. 19. 20:58
오늘은 코루틴에 대해서 알아보고 사용해보려고 한다. 먼저 코루틴의 개념에 대해서 알아보자코루틴 ( Coroutine )코루틴은 하나의 작업을 여러개의 프레임에 분산할 때 사용한다. 코루틴의 활용IEnumerator 리턴 타입의 함수에서 yield return을 사용하여 코루틴을 구현할 수 있다.StartCoroutine 함수를 통해서 코루틴을 시작할 수 있고, StopCoroutine 함수를 통해 코루틴을 중지할 수 있다.코루틴은 프레임 간의 지연, 비동기 작업, 시간에 다른 애니메이션 등의 작업에 주로 사용된다.yield return null은 다음 프레임까지 대기를 의미하고, yield return new WaitForSeconds(n)은 n초 동안 대기를 의미한다. 중간에서 중단하려면 yield b..
-
[TIL] 10주차 2일 Delegate개발일지/스파르타 코딩클럽 부트캠프 2024. 6. 18. 20:31
오늘은 특강에서 다뤘던 Delegate에 대해서 써보려고 한다. 먼저 Delegate란 무엇일까?Delegate는 대리자 이다.구독되어 있는 함수를 대신 실행시키고, 구독시킬 수 있는 함수는 매개변수와 리턴 값이 동일해야한다.간단하게 말하자면 함수를 변수화 시키는 느낌이며, 하나의 목표를 가진 집단이라고 생각할 수 있다. 기본적인 형식은 다음과 같다.public delegate void MyTestDelegate();public delegate void MyDelegate(int a, int b);void Awake (){ MyDelegate cal = new MyDelegate(Plus); cal += Subtract cal(1, 2);}public void Plus(int a, in..
-
[TIL] 10주차 1일 ( UGUI )개발일지/스파르타 코딩클럽 부트캠프 2024. 6. 17. 20:43
오늘은 공부한 내용중에 UGUI에 대해서 다뤄보려고 한다. 먼저 UGUI의 개념확립부터 해보자 UGUI ( Unity's User Inter face )Unity의 기본 UI 시스템으로 게임 내의 사용자 인터페이스를 구축하는 데 사용된다.CanvasUGUI에서 모든 UI 요쇼는 Canvas라는 컴포넌트 내에 배치된다.Canvas는 스크린 오버레이, 카메라 오버레이, 월드 공간의 3가지 렌더 모드를 지원한다.캔버스의 세 가지 렌더링 모드캔버스의 Canvas 컴포넌트를 보면 세 가지의 렌더링 모드를 확인할 수 있다.각 렌더링 모드의 기능은 다음과 같다. Screen Space - Screen Overlay카메라 설정이나 월드의 변화에 상관 없이 독립적으로 화면 위에 렌더링한다. 즉, 무조건 UI를 제일 위..
-
[TIL] 9주차 5일 개인과제 진행 ( Coroutine )개발일지/스파르타 코딩클럽 부트캠프 2024. 6. 14. 20:48
오늘 배운 내용코루틴의 다양한 활용법 먼저 코루틴은 IEnumerator라는 반환형으로 시작해야하며, yield return이 반드시 함수 내부에 존재해야한다. yield return은 다음 함수가 실행될 때 까지의 텀을 반환한다고 생각하면 된다.예를 들어서Attack();yield return null;Attack();이런 식으로 함수 내부를 작성하면 Attack 메서드가 발생하고 바로 다음 프레임에 한번 더 발생한다.따라서 바로 실행시켜주려면 yield return null을 하면 된다. 그럼 텀을 주려면 어떻게 해야할까? Attack();yield return new WaitForSecond(3f);Attack();이렇게 하면 Attack 후 3초 뒤에 Attack이 발동된다. 정리하면 1. yie..
-
[TIL] 9주차 4일 개인과제 진행개발일지/스파르타 코딩클럽 부트캠프 2024. 6. 13. 21:52
오늘 한 것NavMesh 특강클리커 게임 과제 진행NavMesh NavMesh는 일단 내비게이션 시스템을 이루는 요소 중 하나를 말한다.내비게이션 시스템은 대충 AI가 어떤 움직임을 가질 지 내비게이션을 해주는 것을 말한다.벽이나 기둥, 장애물 등을 설정해서 AI가 최단 경로를 찾아서 목적지에 도달하는 것을 도와주기 위한 시스템이다.내비게이션 시스템은 기본적으로 NavMesh, NaMeshAgent, NavMeshObstacle 세 가지 요소로 이루어진다.
-
[TIL] 9주차 3일 유니티 심화 과정 ( 파티클, 사운드 컨트롤 )개발일지/스파르타 코딩클럽 부트캠프 2024. 6. 12. 20:56
오늘 배운 내용파티클 시스템 파티클 시스템은 수 천개의 작은 2D또는 3D 오브젝트들을 관리하고, 그들의 동작과 생애를 제어한다.각각의 작은 오브젝트를 '파티클' 이라고 부른다.파티클 시스템의 주요 컴포넌트는 emitter(발사체), particles(파티클), animator(애니메이터), renderer(렌더러) 등으로이루어져 있다.유니티의 파티클 시스템은 시간에 따른 파티클의 행동을 시뮬레이션 하며, 이를 위해서 각 파티클에 대해위치, 속도, 수명, 색상, 크기 등의 정보를 저장한다.파티클 시스템은 성능 최적화를 위해서 다양한 기능을 제공한다. 예를 들어서, 시스템의 최대 파티클 수를 제한하거나,파티클 적용 범위를 제한하는 등의 기능이 있다. 다음은 파티클 시스템의 주요 모듈이다. 파티클 시스템의 ..
-
[TIL] 9주차 2일 팀 프로젝트 마무리개발일지/스파르타 코딩클럽 부트캠프 2024. 6. 11. 20:47
오늘은 정말 개발 적인 부분에서는 쓸 부분이 없다.(하루종일 발표준비와 발표만..) 많은 발표들을 보면서 느낀 점 난 아직도 많이 부족한건 원래 알고있었지만 생각보다 완성도가 높은 팀이 많았다.그걸 보면서 느낀 점이 물론 아 우리가 완성도가 낮은 편이구나 이런 생각도 들긴 했지만아 짧은 시간안에 이 정도까지도 만들 수가 있구나? 하는 생각이었다. 사실 지금까지 팀플도그렇고 이번 팀 프로젝트도 불과 일주일 남짓한 시간인데 이 정도의 퀄리티라면8주동안 진행하는 파이널 프로젝트에서는 어떤 모습들을 보여줄지 기대가 됐다.나 또한 파이널 프로젝트에서 많은 부분을 시도하고 실패하며 성장할 예정이라 기대가된다. 간단한 회고를 해보자면 팀플에 있어서 가장 중요한건 뭘까? 실력이라고 생각할 수도 있을 것 같다.실력은 물..
-
[TIL] 9주차 1일 팀 프로젝트 마무리 단계 ( OnTriggerEnter )개발일지/스파르타 코딩클럽 부트캠프 2024. 6. 10. 21:20
오늘 한 것플레이어 HP 구현HealRoom 구현여러가지 버그 수정시간이 없는 관계로 저번 개인과제때부터 썼던 코드를 많이 가져와서 썼다. PlayerCondition 부분의 경우에는PlayerConditionConditionUICondition3가지 클래스로 나누어서 작업을 했다. using UnityEngine;using UnityEngine.UI;public class Condition : MonoBehaviour{ public float curValue; public float startValue; public float maxValue; public float passiveValue; public Image uiBar; void Start() { ..