개발일지
-
[TIL] 11주차 5일 ( 리소스 데이터 관리 )개발일지/스파르타 코딩클럽 부트캠프 2024. 6. 28. 12:12
그냥 기본적으로 큐브를 프리팹으로 만들어서 대충 객체로써 생성한다고 생각해보자 우리는 지금까지 큐브를 만들어서 프리팹으로 뺀 후 캔버스를 만들어서 판넬에 버튼을 만들고직렬화필드로 프리팹을 받아와서 버튼에 온클릭 형식으로 프리팹을 생성했을 것이다. 만약에 여기서 빌드를 하게되면 여기있는 에셋 파일이 다 빌드가 되는 것이 아니다.빌드를 할 때는 씬에 연결되어있는 오브젝트들만 연결되어 빌드가 된다. 직렬화필드로 인스펙터에서 프리팹을 연결해주면버튼을 눌러서 큐브를 생성하지 않아도큐브는 항상 메모리에 올라 가 있게된다. ( 게임의 처음부터 끝 까지 큐브의 메모리가 존재하는 샘 )당연히 최적화에 좋지 않을것이다. 인스펙터에서 프리팹을 넣어주거나 하는 행위는 좋지 않다고 볼 수 있다.오늘은 조금 유연성 있게 데이터를..
-
-
[TIL] 11주차 3일 ( 유니티 커스텀툴 만드는 방법 )개발일지/스파르타 코딩클럽 부트캠프 2024. 6. 26. 20:41
유니티 에디터 커스텀 오늘은 유니티 커스텀 툴을 만드는 법에 대해서 조금 알아보려고 한다. 유니티 커스텀툴을 만들 때 필요한 것에디터는 만들때는 MonoBehavior를 상속받지 않고 EditorWindow를 상속받아야 한다.using UnityEditor옵션 창에 툴을 뜨게하는 법[MenuItem("MyTool/MenuTest")]static void MyMenu(){ GetWindow();} 툴에 글씨, 버튼을 새기는 방법private void OnGUI(){ EditorGUILayout.LabelField("메뉴 라벨"); EditorGUILayout.TextField("입력"); if(GUILayout.Button("버튼")) { Debug.Log("클릭했다..
-
-
[TIL] 11주차 1일 팀 프로젝트개발일지/스파르타 코딩클럽 부트캠프 2024. 6. 24. 20:43
오늘은 하루종일 예비군 가신 팀원분 코드를 하드코딩하고에셋 작업을 해서 TIL 쓸 것이 정말 없다..... 일단 하드코딩한 부분 작성( 절대 이런 식으로 따라하면 안됩니다. 급해서 작동만하게끔 구현한 것 ) 배틀 컨트롤러 스크립트를 많이 수정해서매직넘버로 구성되어있던 여러 스탯들을 적용 시켰다.using System.Collections;using System.Collections.Generic;using UnityEditor.VersionControl;using UnityEngine;using UnityEngine.SceneManagement;using UnityEngine.UI;public class BattleController : MonoBehaviour{ [SerializeField] p..
-
[TIL] 10주차 5일 ( 유니티에 관한 꿀팁 (심연))개발일지/스파르타 코딩클럽 부트캠프 2024. 6. 21. 21:59
오늘 특강에서 배운 부분을 TIL로써 채워볼까 한다.이번 특강에서는 튜터님의 유니티를 향한 시선과, 유니티를 활용한 개발에 있어서 있는 꿀팁과 중요 정보들을많이 알 수 있었다. 튜터님의 Unity에 영화를 빗댄 시선Unity - 영화Scene - 영화 촬영 장소Game - 실제 영화의 결과물Hierarchy - 영화에 출연하는 배우들Inspector - 각 배우들에게 주어진 역할들Project - 창고(다른 씬에서 사용할만한 소품, 배우들이 저장되는 공간)Script - 배우들에게 주어지는 대본PrefabPrefab을 만들고 하이어라키 창에서 수정을 한 후 다시 프로젝트에 넣으려고 할 때우린 이런 창을 볼 수가 있다.각각 무슨 뜻일까? Original Prefab - 아예 독립적으로 새로 만들어지는 P..
-
[TIL] 10주차 4일 ( 옵저버패턴 , 캐릭터 스텟 강화 )개발일지/스파르타 코딩클럽 부트캠프 2024. 6. 20. 21:01
오늘은 관찰자 패턴에 대해서 공부한 부분을 간단하게 볼건데 그 전에 자료초반부에도 써져있던 부분을 정리해봤다. 모든 문제에 정답이란 없으며 확실치 않을 때는 Kiss(Keep it simple, stupid) 단순하게 유지하기, 수고를 더 들일 가치가 있을지 미리 생각하기 필요할때만 사용하기관찰자 패턴(Observer pattern)관찰자 패턴은 일대다 종속관계를 사용해 오브젝트가 통신하되 낮은 결합도를 유지하도록 할 수 있다. 한 오브젝트의 상태가 변경되면 종속된 모든 오브젝트가 자동으로 알림을 받는다. 게임플레이 과정에서 발생하는 거의 모든 상황에 관찰자 패턴을 적용할 수 있다. 관찰자 패턴의 장점결합도가 낮고 확장성이 높음런타임에서 옵저버 추가 제거가 용이유니티에선 구현이 용이단점시스템의 복잡성이 ..
-
[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..