일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 유니온-파인드
- 깊이 우선 탐색
- Set
- 팩토리패턴
- flyweight pattern
- 자료구조
- Unreal Collision
- Abstract Factory pattern
- command pattern
- 분포 기반 정렬 알고리즘
- 관찰자(Observer) 패턴
- 트리
- 디자인패턴
- 트리순회
- 외적
- 두 직선사이 교점
- 스택
- Trie
- object channel
- 정렬 알고리즘
- Union-Find
- C++ STL 정리
- 명령패턴
- Factory method pattern
- 생성패턴
- 경량 패턴
- BFS
- 동적 계획법
- Queue
- 비교 기반 정렬 알고리즘
- Today
- Total
목록분류 전체보기 (26)
KimMK
2023.03 ~ 지금까지 진행 완료된 사항 케릭터 이동 및 속도 보간 카메라 보간 Foot IK 적용 더블 점프 구현 OneHand 무기 장착 및 해제 OneHand 콤보 공격 및 공중 콤보 OneHand Q 스킬 구현 Assassin 무기 장착 및 해제 Assassin 콤보 공격 및 공중 콤보 Assassin Q스킬 미구현(구현중) Rifle 무기 장착 및 해제 Rifle 무기 반동처리, UI, 재장전 및 탄창 분리와 탄피 떨어짐 구현 Rifle Q스킬 구현 ==> 적절한 애니메이션을 찾지 못해 스킬이 등장할 때 머티리얼 값을 변경해 등장시킴 Rifle 무기 장착 시 Hand IK 적용 공콤 시 잔상 구현 적 더미 케릭터 생성 및 히트 구현 2023.04.13 - Assassin Q 스킬 타게팅 작업..
2023.03 ~ 지금까지 진행 완료된 사항 케릭터 이동 및 속도 보간 카메라 보간 Foot IK 적용 더블 점프 구현 OneHand 무기 장착 및 해제 OneHand 콤보 공격 및 공중 콤보 OneHand Q 스킬 구현 Assassin 무기 장착 및 해제 Assassin 콤보 공격 및 공중 콤보 Assassin Q스킬 미구현(구현중) Rifle 무기 장착 및 해제 Rifle 무기 반동처리, UI, 재장전 및 탄창 분리와 탄피 떨어짐 구현 Rifle Q스킬 구현 ==> 적절한 애니메이션을 찾지 못해 스킬이 등장할 때 머티리얼 값을 변경해 등장시킴 Rifle 무기 장착 시 Hand IK 적용 공콤 시 잔상 구현 적 더미 케릭터 생성 및 히트 구현 2023.04.13 - Assassin Q스킬 타게팅 작업 ..
SOLID는 객체 지향 설계 원칙으로 프로그램을 읽기 쉽고 확장이 용이하며 리팩토링시 간편하게 수정을 할 수 있도록 하는 설계 원칙입니다. SOLID는 SRP - 단일 책임 원칙 OCP - 개방 폐쇄 원칙 LSP - 리스코프 치환 원칙 ISP - 인터페이스 분리 원칙 DIP - 의존 역전 원칙 으로 구성됩니다. 여기서 ISP. 즉, 인터페이스 분리 원칙에 대해서 알아보겠습니다. ISP ISP는 인터페이스를 클라이언트가 필요로 하는 기능에 따라 분리해야 한다는 원칙으로, 의존성을 분리해 모듈 간의 결합도를 낮추고 유연성을 높이는 것이 목적인 설계 원칙입니다. 인터페이스가 작고 응집도가 높아질수록 클래스 간의 관계가 단순해지고 변경 사항에 대한 유지보수성도 향상됩니다. 다시 말해 ISP란, 범용적인 인터페이..
2023.03 ~ 지금까지 진행 완료된 사항 케릭터 이동 및 속도 보간 카메라 보간 Foot IK 적용 더블 점프 구현 OneHand 무기 장착 및 해제 OneHand 콤보 공격 및 공중 콤보 OneHand Q 스킬 구현 Assassin 무기 장착 및 해제 Assassin 콤보 공격 및 공중 콤보 Assassin Q스킬 미구현(구현중) Rifle 무기 장착 및 해제 Rifle 무기 반동처리, UI, 재장전 및 탄창 분리와 탄피 떨어짐 구현 Rifle Q스킬 구현 ==> 적절한 애니메이션을 찾지 못해 스킬이 등장할 때 머티리얼 값을 변경해 등장시킴 Rifle 무기 장착 시 Hand IK 적용 공콤 시 잔상 구현 적 더미 케릭터 생성 및 히트 구현 https://youtu.be/KS0xChIWnz0 2023..
디자인 패턴 중 행위 패턴인 상태 패턴은 객체 상태를 캡슐화함으로써 참조하게 하는 방식으로 상태에 따라 다르게 처리할 수 있도록 내용을 변경하여, 변경 시 원시 코드의 수정을 최소화할 수 있고, 유지보수의 편의성도 갖는 디자인 패턴이다. 즉, 객체 상태에 따라 동작이 달라지는 경우 사용되는 디자인 패턴으로 객체를 상태(state)와 상태에 따른 동작(action)으로 분리하여 구현하고, 객체의 상태가 변할 때마다 적절한 상태에 맞는 동작을 수행하도록 한다. 자기 스스로 상태를 판단해 행동하도록 하는 것인데, 이는 유한 상태 기계(FSM)와 밀접한 관련이 있음 * 유한 상태 기계(FSM): 상태(State)와 상태 전환(Transition)으로 이루어진 모델로, 각 상태에서는 특정 동작을 수행하며 입력이 ..
2021 인천대학교 컴퓨터공학부 캡스톤디자인 수상작입니다. 모든 로직은 Unreal Engine의 블루프린트를 이용해 제작하였습니다. 팀원: 김민기 외 4명 구현 내용 중앙 맵을 통해 이어지는 5개의 테마를 가진 서브 맵들을 클리어해서 다음 스테이지로 넘어가는 형식의 탈출 맵을 제작 5개의 서브 맵은 탈출, 미로, 점프, 추격, 퍼즐 맵으로 구성되며 서브 맵을 클리어할 때마다 중앙 맵의 전등에 불이 들어오며 5개의 전등에 불이 들어오면 발전기가 돌아가며 다음 스테이지로 넘어가는 문이 열리게 됨 각 서브 맵에는 케릭터의 능력을 향상시켜주는 아이템이 존재하고, 플레이어가 사망시 세이브존에서 리스폰을 하게 되지만 로봇을 컨셉으로 한 케릭터인 만큼 확률적으로 디버프가 걸리게 됨 담당 파트 한 스테이지에 중앙 맵..
디자인패턴 중 행위 패턴인 옵저버 패턴은 한 객체의 상태가 바뀌면 그 객체에 의존하는 다른 객체들에 알림이 가고 자동으로 내용이 갱신되는 방법으로 일대다의 의존성을 가진다. 상호작용하는 객체 사이에서는 가능하면 느슨하게 결합하는 디자인 패턴이다. 옵저버 패턴에는 Subject(주체)와 Observer(관찰자)라는 두 가지 개념이 사용되는데, Subject는 상태가 변할 수 있는 객체를 나타내고, Observer는 Subject의 상태에 관심이 있는 객체를 나타낸다. Subject는 Observer의 리스트를 관리하며 Subject의 상태가 변하면 Observer들에게 알림을 보내어 각 Observer가 적절한 조치를 취할 수 있도록 한다. 옵저버 패턴은 MVC(Model-View-Controller) 아..
디자인패턴 중 생성패턴인 싱글턴은 전역 변수를 사용하지 않고 객체를 하나만 생성하도록 하며 생성된 객체를 어디에서든지 참조할 수 있도록 하는 디자인패턴이다. 오직 하나의 객체만을 생성할 수 있는 클래스를 의미한다. 따라서 단일 인스턴스를 생성해 공유해서 사용해야 하는 상황에서 유용하다. 싱글턴을 정교하게 구현하고 사용한다면 객체 유일성을 보장하고 어디에서나 싱글턴 객체에 접근할 수 있는 접근성의 장점이 있지만, 득보다 실이 많은 패턴이므로 유의하자!! 싱글턴을 왜 사용할까? (장점) 객체를 하나만 생성해서 공유하기 때문에 메모리 낭비를 방지할 수 있다. 또한, 한 번도 사용하지 않는다면 아예 인스턴스 자체를 생성하지 않는다. 예를 들어 DB연결, NW연결, 파일 입출력 등과 같은 리소스를 사용하는 경우 ..
디자인 패턴 중 구조 패턴인 경량 패턴은 객체를 공유해 메모리 사용량을 줄이는 것을 목적으로 한다. 즉, 한개의 고유 상태를 다른 객체들에서 공유하게 만들어 메모리 사용량을 줄이는 것이다. 경량 패턴은 최적화와 밀접한 관계가 있으며 공장에서 같은 제품을 찍어내며 생산하듯이 대량의 데이터를 찍어내기 위해 사용한다. 내용이 같은 객체가 있으면 새로 객체를 생성하지 않고 기존의 객체를 공유한다 예를 들어, 게임 엔진인 Unreal에서 폴리지와 같은 툴을 사용할 때 풀과 잔디, 조약돌과 같은 애셋을 이용해 폴리지를 적용하려고 할 때 애셋을 하나하나 mesh, texture와 같은 정보를 렌더링하게 되면 엄청난 오버헤드를 초래하게 된다. 그래서 언리얼 엔진의 애셋은 기본적으로 경량 패턴이 적용되는데, 경량 패턴은..
디자인 패턴은 소프트웨어 설계에서 공통으로 발생하는 문제에 대해 자주 쓰이는 설계 방법을 정리한 패턴이다. 모듈의 세분화된 역할이나 모듈간의 인턴페이스 구현 방식을 설계할 때 참조할 수 있는 전형적인 해결 방식을 정리한 것으로 디자인 패턴을 통해 설계 문제, 해결 방법, 해결책을 언제 적용해야 할 지, 그 결과로 무엇인지 등을 알 수 있다. 1995년 GoF(Gang of Four)라고 불리는 Erich Gamma, Richard Helm, Ralph Johnson, John Vissides가 처음으로 디자인 패턴을 구체화하였다. GoF의 디자인 패턴에는 생성 패턴 5개, 구조 패턴 7개, 행위 패턴 11개로 총 23개의 패턴으로 구성된다. 디자인 패턴을 사용하여 개발할 경우, 개발의 효율성, 유지보수성..