본문 바로가기

분류 전체보기

(82)
23.10.12 Property란 프로퍼티란 속성이라는 의미를 가지고, 클래스안에서 변수를 선언 후 다른 클래스에서 사용을 하려면 Public을 붙여 줘야하는데 정보 은닉을 위해 private로 선언후 get,set 메소드를 지원하는 유니티 메소드를 사용해서 구현할 수 있다! Property의 특징 1. 프로퍼티를 사용하면 클래스가 구현 또는 코드를 숨기는 동시에 값을 가져오고 설정하는 방법을 공개적으로 노출할 수 있습니다. 2. get 속성 접근자는 속성 값을 반환하고, set 접근자는 새 값을 할당하는데 사용합니다. 3. set 접근자의 value 키워드는 set 접근자가 할당하는 값을 정의하는데 사용합니다. 4. set 접근자만을 구현하면 쓰기 전용, get 접근자만을 구현하면 읽기 전용입니다. 기본형식 class..
23.10.11 MST(Minimum Spanning Tree) 📢 목차 그래프 신장트리 (Spanning Tree) 최소신장트리 (Minimum Spanning Tree) 1. 그래프 📖 그래프 (Graph) 연결되어 있는 원소간의 관계를 표현한 자료구조 연결할 객체를 표현하는 정점(Vertex)와 객체를 연결하는 간선(Edge)로 구성된 집합 1-1. 종류 무방향 그래프 간선에 방향이 없는 그래프 방향 그래프 간선에 방향이 있는 그래프 완전 그래프 한 정점에서 모든 정점에 연결되어 최대 간선 수를 갖는 그래프 부분 그래프 완전그래프가 아닌 그래프 연결 그래프 떨어져있는 정점이 없는 그래프 단절 그래프 연결 그래프가 아닌 그래프 가중 그래프 간선에 가중치가 있는 그래프 유향 비순환 그래프(DAG) 사이클이 없는 방향 ..
23.10.10 [자료구조] Union-Find (Disjoint Set Union) 1. Disjoint Set 📖 서로소 집합 (Disjoint Set) 두 집합 A,B의 교집합이 공집합일 때, 서로소라고 한다. 두 집합, A, B가 서로소 ⇔ A ∩ B = *ø* 서로 중복된 원소가 없는 집합 (= 교집합이 없는 집합) 2. Union Find 📖 Union-Find Disjoint Set을 구현한 자료구조 지원하는 연산 Union 연산: 두 집합을 합치는 연산 Find 연산: 원소가 어떤 집합에 속해있는지 확인하는 연산 사용하는 경우 특정 원소가 어떤 집합에 속해있는지 확인할 경우 각 집합의 개수를 구할 경우 … 3. 구현 using System; using System.Collections.Generic; us..
23.10.06 Unity FSM : 유한 상태 머신 (Finite State Machine) 유한 상태 머신(Finite State Machine, FSM)은 게임 에이전트에게 환상적인 지능을 부여하기 위한 선택 도구로 사용되어왔다. 다시 말해, 유한 상태 머신은, 주어지는 모든 시간에서 처해 있을 수 있는 유한개의 상태를 가지고 주어지는 입력에 따라 어떤 상태에서 다른 상태로 전환하거나 출력이나 액션이 일어나게 하는 장치 또는 그런 장치를 나타낸 모델이다. 상태(State): 게임에 정의된 여러 동작, 적 캐릭터뿐만 아니라 게이머에게도 적용될 수 있다. Idle, Run, Attack, ... , 공격할 수 없는 상태, 캐릭터의 마나가 없어 마법 공격할 수 없는 상태 등 한 상태에서 다른 상태로 전화할 수 있고, 동..
23.10.05 [에러메시지] All compiler errors have to be fixed before you can enter play mode 유니티 플레이를 눌렀는데 All compiler errors have to be fixed before you can enter play mode 이 메시지가 뜬다면 스크립트에 에러가 났다는 메시지다. 해결방법은 유니티 메뉴에서 Window - Console 을 클릭하면 에러메시지 로그가 뜰 것이다. 더블클릭으로 스크립트안에 들어가서 버그수정해주면 끝. 선발대 세션 (최적화) 모바일 게임 성능 최적화 https://blog.unity.com/kr/games/optimize-your-mobile-game-performance-expert-tips-on-graphics-an..
23.10.04 다른 팀들의 발표를 봤는데 간단하게 만든 팀들도 있었고, 시간을 엄청 많이 쓴것같은 팀도 있었다. 배울점이 많았는데, 특히 3D 디펜스 게임을 만든 팀의 발표를 보고 많은 걸 배웠다..
23.10.02 Physics.Raycast(Vector3 origin, Vector3 direction, out RaycastHit hitInfo) using UnityEngine; public class ExampleClass : MonoBehaviour { private RaycastHit hit; void Update () { if (Physics.Raycast(transform.position, transform.forward, out hit)) { Debug.Log("hit point : " + hit.point + ", distance : " + hit.distance + ", name : " + hit.collider.name); Debug.DrawRay(transform.position, transfor..
23.09.27 선발대 세션 자료구조와 DOTween, Ease Visualizer 그리고 Cinemachine에 관한 세션이였다. DOTween은 UI에 사용하면 정말 편할꺼 같았고, Cinemachine은 카메라를 설정하는데 도움이 많이 될 것 같아서 더 깊게 공부해봐야겠다. 제네릭 컬렉션 HashSet vs HashTable vs Dictionary Ease Visualizer DOTween 팀 프로젝트 : 3D Survivor 오늘은 건축물을 건설할 때 건축물의 높이 만큼 건설 위치를 보정해 주는 것과 벽을 설치할 때 바닥의 가장자리 부분에 위치가 자동으로 잡아지도록 하는 걸 했다. 건축물의 높이는 public으로 선언해서 인스펙터를 통해서 조금씩 높여보면서 보정했고, 바닥의 가장자리부분은 미리 좌표를 입력해 놔..
23.09.26 어제 진행한 건축에서 더 나아가서 건물을 preview에서 회전시킬 수 있고, 건설했을 때 도 적용되게 하였고, 건설에 특정 건물에 붙어있어야 한다거나 하는 특정 조건을 추가하였다.
23.09.25 Unity : 건축 시스템 3D 생존 게임으로 팀 프로젝트 주제를 정했는데 건축에 대한 역활을 맞게 되었다. 그래서 구글링으로 찾아봤다. 건축 시스템 건설하기 전에 미리 프리셋으로 건설이 가능한지 색으로 표현하고 건설이 가능할때 만 작동하도록 했다.