본문 바로가기

분류 전체보기166

[개발자 노트] 상호작용 컴포넌트 구현 및 기능 테스트 (4월 4주차) 상호작용 오브젝트 (Interactable Object) 상속 구조 변경 작업상호작용 가능 오브젝트를 개발 편의상 3 가지 분류로 구분하도록 상속 구조 변경, 불필요한 코드 간소화 작업토글 작동형 오브젝트 (AToggleableObjectBase 파생)소유 가능 오브젝트 (AOwnableObject 파생)키다운 작동형 오브젝트 (AKeyDownableObjectBase 파생)* 빨간색 표시 클래스 = 추후 구현 예정  상호작용 컴포넌트(UInteractionComponent)플레이어 클래스에 부착하여 상호작용 기능을 관리할 목적의 컴포넌트를 구현하고, 키 입력에 대한 액션 바인딩 (플레이어 컨트롤러) 및 입력에 따른 컴포넌트 작동을 위한 코드를 플레이어, 플레이어 컨트롤러 클래스에 코드를 추가하였음 UI.. 2024. 4. 30.
[개발자 노트] 상호작용 오브젝트 클래스 설계, 토글형 문 오브젝트 클래스 구현 (~4월 3주차) 상호작용 오브젝트 (Interactable Object) 클래스 설계 다음과 같은 사항을 고려하여 인터페이스 및 클래스를 설계. 플레이어와의 상호작용을 위한 기능을 인터페이스로 분리 플레이어가 소유한 상태로 오브젝트를 활용하는 기능을 인터페이스로 분리 공통된 부분은 기반 클래스의 멤버 및 메서드로 가질 수 있도록 하고자 하였음 유사한 오브젝트여도 작동 메커니즘 또는 상호작용 방식이 완전히 다르면, 다른 클래스로 파생되도록 하여 각 인스턴스를 인게임에 배치하여 활용하는 레벨 디자이너가 쉽게 구분할 수 있도록 하고자 하였음 레벨 디자이너와 협의 결과, 애셋에서 문 부분을 제거하고 신규 액터를 배치하기로 결정됨에 따라 DefaultSceneRoot의 하위 프로퍼티로서 메시 컴포넌트를 보유하도록 설계 * Tog.. 2024. 4. 23.
[Programmers] 타겟 넘버 https://school.programmers.co.kr/learn/courses/30/lessons/43165 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 해결 과정 착안 주어지는 숫자들을 하나씩 순차적으로 더하거나 뺀 결과값을 구하는 재귀 함수를 만들어 문제를 해결한다. 구현 [스포 주의] 아래 '더보기'를 누르면 코드가 나오니 주의하세요~ 더보기 #include using namespace std; void Add(const vector& v, const int& t, int& cnt, int i, int sum) { if (i == v.s.. 2024. 1. 7.
[Programmers] 전화번호 목록 https://school.programmers.co.kr/learn/courses/30/lessons/42577 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 해결 과정 착안 전화번호 목록에 있는 모든 번호들을 해시 테이블(hash table)에 저장한 다음, 각각의 전화번호들에 대해 앞에서부터 1, 2, $\cdots, $ 전체 글자 만큼의 접두사에 해당하는 전화번호가 해시 테이블에 존재하는지 확인한다. 구현 해시 테이블의 역할을 수행할 컨테이너로 std::unordered_map 형식의 컨테이너를 활용하였다. [스포 주의] 아래 '더보기'를 누.. 2024. 1. 7.
[Programmers] [1차] 뉴스 클러스터링 https://school.programmers.co.kr/learn/courses/30/lessons/17677 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 해결 과정 착안 주어지는 두 개의 문자열에 대해 각각, 두 글자씩 끊어 읽었을 때 모두 알파벳으로 이루어져 있으면 끊어 읽은 문자열의 등장 횟수를 기록한다. 이때 두 개의 알파벳으로 이루어진 문자열이 등장하는 횟수 중 최솟값은 교집합에 해당하며, 최댓값은 합집합에 해당하는 값임에 착안하여 자카드 유사도를 계산한다. 구현 풀이 1) 두 글자씩 끊어 읽은 문자를 STL의 컨테이너를 활용해 기록하.. 2024. 1. 6.
[Programmers] 기능개발 https://school.programmers.co.kr/learn/courses/30/lessons/42586 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 해결 과정 착안 먼저 배포되어야 하는 프로세스 순으로 남은 작업 날짜를 계산하여 마지막으로 배포한 프로세스들 중 가장 작업 날짜가 긴 것보다 작으면 해당 프로세스와 함께 배포, 그렇지 않다면 함께 배포할 수 없다. 구현 프로세스별로 필요한 작업 날짜를 계산할 때, 남은 작업량을 작업 속도로 나눈 뒤 올림 계산을 하는 점과 가장 마지막에 배포한 프로세스들 중 작업 날짜가 가장 긴 것을 저장하여.. 2024. 1. 5.