전체 글 121

25.04.14 TIL

최종 프로젝트 n일차 1. 오늘 학습 키워드 오류 수정 및 크레딧 제작2. 오늘 학습 한 내용을 나만의 언어로 정리하기 수정은 크게 2가지였다. 하나는 Front에 Text를 넣어서, 해당 텍스트도 같이 회전하게끔 어제 제작을 했으나, 주말 기간동안 카드 앞면을 제작해주셔서이 부분을 넣었다. 다만 이부분이 초회차는 잘 보였으나, 리턴을 하고, 다시 패널을 클릭하면 그 값이 회전이 되어있어서 거울이 있어야만글을 읽을 수 있었다. 이 부분 수정이 완성을 하고나니 단 한 줄로 끝났지만,처음에는 isFlipped 불리언을 사용해서, 뒤집어져 있을땐, isFlipped ? target y = 180 : 0; 이런 느낌으로 작성했다.이렇게 작성하니, 1회차는 되었고, 2회차에 회전이 되어있는 카드가 flip 없이,..

TIL 2025.04.14

25.04.11 TIL

1. 오늘 학습 키워드카드, 크레딧2. 오늘 학습 한 내용을 나만의 언어로 정리하기 오전에는 어제 끝내기전에 급하게 구현을 위해 작성한 코드가 너무 별로여서 리팩토링을 하는 것으로 시작했다. 진영 카드 클래스를 제작해서 해당 카드의 앞 뒷면과, 텍스트의 데이터를 가지게 했고, 지난번에 튜터님이 데이터를 데이터만으로 생각하지말고, 그 데이터가 할 수 있는 것에 대해서도 생각해보라고 피드백을 해주셔서이번엔 그 피드백을 참고하여, 클래스를 제작했다.using System;using System.Collections;using TMPro;using Unity.VisualScripting;using UnityEngine;public class CampCard : MonoBehaviour { public ..

TIL 2025.04.11

25.04.10 TIL

최종 프로젝트 5일차 1. 오늘 학습 키워드Live2D, Raw Image, 카드 플립2. 오늘 학습 한 내용을 나만의 언어로 정리하기 우선 어제 만들어주신 마리아와 엘리오스, 그리고 보스까지 Live2D 적용을 마쳤다. 이 Live2D 이미지를 어떻게 UI로 적용 시킬까 고민을 많이했다. 처음에는 프리팹을 월드 스페이스에서 생성 시키는 방법이였는데, 이 부분은 탐탁치가 않아서 반려했고,다음 방법은 서브 카메라를 통해 생성되어있는 오브젝트를 보여주는 방식으로 구현했으나, 오브젝트를 비 활성화하면 애니메이션이 오류가 나는 치명적인 오류가 생겼다. 그래서 다음 방법을 찾아보다 Raw Image를 통해 서브 카메라가 찍는 모습을 UI로 보여주는 것이였고, 서브 카메라의 뷰포트 안에 Live2D 프리팹을 넣었으..

TIL 2025.04.10

25.04.09 TIL

최종 프로젝트 4일차 1. 오늘 학습 키워드리팩토링, 버튼2. 오늘 학습 한 내용을 나만의 언어로 정리하기어제 작성하고 오늘 추가로 작성해서 스타트 씬의 흐름을 제작했다. 그리고 작성한 부분을 피드백을 받기 위해 튜터님을 찾아갔다. 내가 작성한 것은 UI의 작업은 모두 Base에서 작동을 하고, 그냥 패널의 교통 정리만 Controller에서 작업을 했는데이렇게 구조를 짜는 것이 좋지 못해서, 다른 방법을 알려주셨다. 현재 내가 작업을 한 부분에서 Base는 진짜 UI를 띄우는 그런 역할만을 위해 존재하고,Controller를 통해 해당 UI를 관리하는? 그런 느낌으로 리팩토링 했다. 버튼 입력시에 켜지는 패널과, 원래 작성했었던 부분을 합쳐서 이렇게 작성했다.using System;using Syste..

TIL 2025.04.09

25.04.08 TIL

최종 프로젝트 3일차 1. 오늘 학습 키워드StartUI2. 오늘 학습 한 내용을 나만의 언어로 정리하기BaseUI와 ControllerUI의 부모 스크립트를 제작하여, 이를 상속받는 방식으로 작업을 해보았다. 우선 각 UI들의 토대인 부모 스크립트다. 이 부분은 처음 해보는 방식이라 많이 서투르지만, 핵심은 이 부모를 상속받고, BaseUI을 상속받은 스크립트가 동작을 메서드로 구현하게 되고Controller를 상속받는 스크립트는 패널의 흐름? 을 제작하는 느낌이다.using System.Collections.Generic;using UnityEngine;public class ControllerUI : MonoBehaviour{ protected List allUIs = new(); publi..

TIL 2025.04.08

25.04.07 TIL

최종 프로젝트 2일차 1. 오늘 학습 키워드UI 및 개발 전 최종 작업2. 오늘 학습 한 내용을 나만의 언어로 정리하기 우선 최종 프로젝트 시작전에 기획을 배우시는 분이 작성해주신 데이터 시트를 완성 시켰다.그리고 내가 담당하는 UI에 구조를 좀 생각하는 시간을 가졌다. 우선 BaseUI를 상속한 UI들을 각 씬의 Controller에서 public이나, SerializeField를 사용해 정보를 받고,각 씬의 컨트롤러가 SceneBase를 상속받게 될 것이다. 노트에 적으면서 구조를 계속 생각해보았다.UIManager가 필요하다면 전역에 필요한 UI만을 넣어서 UIManager의 무게를 좀 줄여보는 설계를 했다. SceneBase와 Controller는 같은 조원분의 아이디어로 시작하게 됐지만,평소에는..

TIL 2025.04.07

25.04.04 TIL

1. 오늘 학습 키워드 특강, 최종 프로젝트 S.A2. 오늘 학습 한 내용을 나만의 언어로 정리하기 렌더링 파이프 라인에 대해서 처음 강의를 들으며, 가장 먼저 들은 이야기가 3D는 존재하지 않는다 였다. 모든 물체는 버텍스(vertex) -> 폴리곤 (polygon) -> 메시(mesh) 순으로 처리가 되는데 버텍스는 생성하는 물체의 삼각형을 만들기 위한 점을 생성을 한다고 생각하면 된다. 예를 들어 정육면체인 큐브일 경우, 총 8개의 점이 생기게 된다. 그리고 이 점들 이어 삼각형인 폴리곤을 만들게 되고, 그 폴리곤들을 붙여 메시를 만든다. 이러한 과정을 통해 모든 물체가 만들어 지는 것을 알려주셨고, 오클루전 컬링에 대해서 말씀해주셨는데 이부분은 벽 뒤에 물체가 있다면 그 해당 물체를 활성화 하지않..

TIL 2025.04.04

25.03.28 TIL

1. 오늘 학습 키워드 스탯과 레벨업2. 오늘 학습 한 내용을 나만의 언어로 정리하기 제일 먼저 한 일은 플레이어 데이터 베이스를 플레이어 스탯을 가지고 리스트를 만들어서, 해당 값을 관리하는 것을 먼저 만들었다.using System;using System.Collections;using System.Collections.Generic;using UnityEngine;[Serializable]public class PlayerStat{ public PlayerStatType statType; public int level;}[Serializable][CreateAssetMenu(fileName = "PlayerDataBase", menuName = "NewPlayer")]public clas..

TIL 2025.03.28

25.03.27 TIL

1. 오늘 학습 키워드 Player 제작2. 오늘 학습 한 내용을 나만의 언어로 정리하기 2D 클리커 게임을 심화 프로젝트로 제작을 하게 되었다. 이 부분에서 플레이어를 담당하게 되었고, 첫 날이기에 에셋 및 UI 그리고 역할 담당을 나눴다. 플레이어의 스탯을 레벨업을 통해 올릴 수가 있기에, 패널을 제작해서 해당 스탯에 대한 정보, 레벨, 버튼, 수치 텍스트를 작업하고,패널 제작을 했다. private Dictionary statNames = new Dictionary(){ { PlayerStatType.Atk, "공격력" }, { PlayerStatType.Crit, "크리티컬 확률" }, { PlayerStatType.CritDamage, "크리티컬 데미지" }, { Playe..

TIL 2025.03.28

25.03.26 TIL

1. 오늘 학습 키워드json 암호화2. 오늘 학습 한 내용을 나만의 언어로 정리하기 우선 유저의 데이터를 관리하기에, 해당 정보를 암호화하여 보안성을 높여주는 것이 필수적이다.시간이 조금 남았기에, 암 복호화를 경험 해보는 것도 나중에 도움이 될 것이라 생각하여 작업해보았다. 코드는 첫 경험이기에, 구글링과 AI의 도움을 받아서 작성을 완료했다.public static (string encryptedText, string iv) Encrypt(string text, string key){ byte[] keyBytes = Encoding.UTF8.GetBytes(key.PadRight(32, '\0').Substring(0, 32)); byte[] textBytes = Encoding.UTF8..

TIL 2025.03.28