2024/12 15

[ 내일배움캠프 ] 2. OOP Summary

3️⃣ 필수 기능 가이드Animal이라는 기본 클래스를 정의 합니다.Animal 클래스에는 makeSound()라는 순수 가상 함수를 포함합니다.Animal 클래스를 상속받아 다양한 동물 클래스를 생성합니다.예) Dog, Cat, Cow각 동물 클래스에서 makeSound()함수를 재정의하여 해당 동물의 소리를 출력하면 됩니다!메인 함수에서 Animal 타입의 포인터 배열을 선언하고 Dog, Cat, Cow를 각각 배열의 원소로 선언합니다. → 이후 Animal 배열을 반복문으로 순회하면서 각 동물의 울음소리를 내게 합니다!4️⃣ 도전 기능 가이드필수 기능 가이드에 있는 요구사항을 만족하는 코드를 구현했다면 아래 코드 스니펫을 보고 요구사항대로 Zoo 클래스를 정의해주세요!class Zoo {privat..

[ 내일배움캠프 ] 1. 간단한 프로그래밍 구현하기

3️⃣ 필수 기능 가이드해당 기능은 반드시 구현을 해주셔야해요! 원격 강의를 들었다면 어렵지 않게 할 수 있습니다!사용자로부터 5개의 숫자를 입력 받아 배열에 저장하고 이들의 합계와 평균을 계산해서 출력해주세요!5개의 숫자를 입력 받는 공간은 배열을 활용할게요!합과 평균을 구하는 동작은 main함수에 한번에 작성하지 말고 각각 함수를 구현해주시는 것으로 해요!왜 이렇게 하는 것이 좋은지를 한 번 더 생각해보면서 작성해봐요!4️⃣ 도전 기능 가이드도전 기능인만큼 난이도가 쉽지는 않아요! 사용자가 입력한 숫자 배열을 정렬하는 프로그램을 구현해볼까요?정렬은 오름차순 정렬과 내림차순 정렬이 가능해야 합니다.숫자 1을 입력 받으면 오름차순 정렬, 숫자 2를 입력 받으면 내림차순 정렬을 하도록 구현해주세요.입력을 ..

[ 내일배움캠프 ] 알고리즘 코드 카타 11~15 💬

[내일배움캠프 - 사전캠프]알고리즘 코드카타 ❤️‍🔥Algorithm Code Kata  코딩에 더 익숙해지기 위해, 내일배움캠프는 매일 아침 알고리즘 코드카타 시간을 가집니다. 반복되는 연습이라는 뜻을 가진 `Kata`를 통해 매일 아침 코딩을 훈련해봅시다.  11. 정수 num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하는 함수, solution을 완성해주세요. 제한사항num은 int 범위의 정수입니다.0은 짝수입니다. 입출력 예num1return3"Odd"4"Even" Solution#include  #include  using namespace std; string solution(int num) {     string answer = "";     if(num%2==0..

[ Unreal Engine ] TIL 📖 ( 6 )

챕터 1-1 : 프로그래밍 기초  변수- 프로그램에서 데이터를 저장하고 처리하기 위해 사용하는 메모리 공간. 두개의 숫자를 입력하면 입력된 숫자의 합을 보여주는 프로그램 코드 결과   배열- 같은 종류의 데이터를 일정한 순서로 저장하는 자료 구조- 연속적인 메모리 공간에 저장하여 효율적인 접근처리 가능 학생 5명의 점수를 입력받고 총점과 평균을 내는 프로그램 코드cin을 이용하여 score배열에 학생 5명의 점수를 연속적인 메모리에 저장함.tot라는 변수에 학생들 점수의 총합을 저장함.사진속 24번째 줄 tot를 구하는 식에서 만약 학생수가 5명이 아니고 100명이라고 하면 일일이 더하기 힘들다.따라서 다음과 같이 작성할 수도 있다이렇게 구한 총합(tot)를 학생수 (5)로 나누게 되면 평균이 나온다. ..

[ Unreal Engine ] TIL 📖 ( 5 )

DAY 5 블렌더 스페이스와 움직이는 액터 액터를 내가 입력한대로 움직일 수 있도록 만들었지만 애니메이션이 첫 모션 그대로여서 어색한 느낌이 들었다. 그래서 이번엔 캐릭터에 애니메이션을 추가해보았다! 캐릭터 달리기 애니메이션 설정하기 콘텐츠 드로어 우클릭 > 애니메이션 > 애니메이션 블루프린트을 클릭하여 애니메이션 블루프린트를 생성한다. 생성한 캐릭터의 AnimGraph에서 A_Bot_Idle 파일을 이용해서 아무것도 하지 않을때의 애니메이션을 적용시킨다. 연결 후 적용시키면 아까 기본 모양과 다르게 차렷 자세를 하고 있다. 이후 캐릭터의 디테일탭에서 방금 만든 애니메이션 캐릭터블루프린트를 등록해준다. 그다음 블렌드 스페이스를 하나 생성한다.Speed변수를 하나 만들고 세로축에 넣는다.이후 Speed가 ..

[ Unreal Engine ] TIL 📖 ( 4 )

DAY 4 플레이어 캐릭터와 나만의 레벨 디자인  레벨 디자인 : 플레이어가 경험할 수 있는 환경과 구조를 만드는 과정.-> 시각적 요소를 배치하는 것 뿐만 아니라 플레이어 경험의 핵심을 설계하는 역할 에셋 펩 라이브러리에서 샘플 에셋 적용플레이어 캐릭터 생성하기 콘텐츠 드로어 우클릭 > 블루프린트 생성 > 캐릭터 로 생성을 하고이렇게 새로 생긴 에셋을 더블클릭 하면이렇게 캐릭터 뷰포트가 생긴다. 이때 사용할 스켈레탈 메시 에셋을 선택해주면이런식으로 생기게 된다. 뷰포트에 떠있는 파란색 화살표가 캐릭터가 바라보고있는 방향이라서 캐릭터 방향을 맞춰줘야한다.이렇게 !!!이후 캐릭터를 따라다니는 카메라를 달아줄거다.컴포넌트에서 Spring Arm 과 Camera를 달아주면이렇게 화면에 생성이 된다.이 캐릭터를..

[ Unreal Engine ] TIL 📖 ( 3 )

DAY 3 블루프린트를 이용한 비주얼 스크립팅 블루프린트 이런 창 위에 스크래치 프로그램처럼 블록을 연결하여 코드를 만드는 방식이다. 오늘의 과제 강의시간에는 아래 조건을 만족하는 텍스트 슈팅 게임을 만들었는데총알은 기본적으로 30발이 주어집니다.마우스 좌클릭을 할 때마다 총알이 1발씩 발사됩니다.키보드 R을 누르면 총알 30발이 재장전됩니다.이를 응용한 문제 4개와 추가 문제 2개를 더 해봤다. 1.총알 발사 버그 (30번 이상은 불가능하도록)강의시간에 만든 텍스트 슈팅 게임은 총알이 30발임에도 불구하고 더 쏘면 총알 갯수가 -로 찍히고 무한슈팅이 가능했다.이를 수정하기위해마우스 클릭 이벤트 이후 Branch를 이용하여 Bullet 갯수가 0보다 클 때 총을 쏘고, 0개일때는 총알이 없다는 문구를 출..

[ Unreal Engine ] TIL 📖 ( 2-2 )

DAY 2 게임 개발 과정에 대해 알아보고 언리얼 엔진과 놀아보기! 언리얼 설치는 마쳤으니 본격적으로 프로그램에 대해서 알아보자 (실습) 주인공 캐릭터의 색상을 변경하는 것이 목표.먼저 주인공 캐릭터를 클릭한 후 오른쪽 디테일 탭에 메시>탐색기 클릭. 그럼 이렇게 하단에 콘텐츠 브라우저가 뜨게되는데 활성화 된 캐릭터가 지금 내가 클릭한 주인공 캐릭터이다.저 에셋을 복사하여 수정해보겠다 !! 저 에셋을 더블클릭하면 이렇게 수정창이 뜨는데 저 중에서 오른쪽의 머티리얼 슬롯에서 외형을 바꿔보겠다.저중에서 베이스컬러, 메탈릭, 스페큘러, 러프니스 등등 수정이 가능한데 나는 빨간색 베이스에 파란색 빛이 나도록 색을 지정했다.적용시키면 이렇게 !!! 발광을 파란색으로 지정해놔서 그림자진 곳에서는 파랗게 보이는 모습..

[ Unreal Engine ] TIL 📖 ( 2-1 )

DAY 2 게임 개발 과정에 대해 알아보고 언리얼 엔진과 놀아보기! 언리얼 설치는 마쳤으니 본격적으로 프로그램에 대해서 알아보자 (개념)전체적인 구조 살펴보기언리얼 샘플 프로젝트에 연결한 모습이다.이를 조금 더 자세히 살펴보자1. 뷰포트 ( Viewport )화면 중앙에 위치하며 3D 월드를 직접 볼 수 있는 영역카메라를 조작하여 월드를 탐색하거나 오브젝트를 배치+) 뷰포트에서 사용되는 추가 용어 정리 1. 월드레벨이 존재하는 최상위 컨테이너, 모든 액터와 구성 요소 포함게임 로직의 전반적인 상태 관리 (물리 시뮬레이션, 이벤트 처리, 게임루프 등)이후 API를 이용하여 월드 관리 및 상태 변경 가능여러 개의 레벨 동시 로드 및 관리 가능2. 레벨게임 또는 프로젝트 하나의 "씬"을 의미 함엔진 안에서 작..

[ Unreal Engine ] TIL 📖 (1)

DAY 1 게임 엔진에 대해 알아보고 언리얼 엔진 설치해보기!우리가 흔히 알고 있는 유명한 게임은 여러가지 요소가 합쳐져서 구현됩니다.  - 그래픽 (시각적 요소)캐릭터, 배경 , 아이템 등의 시각적 표현 - 사운드 (청각적 요소)배경 음악, 효과음 , 음성 등 상황에 맞는 사운드 - 인터렉션 (상호 작용)플레이어가 게임 세계와 상호 작용 등등각 요소들이 적절히 조화되지 못하거나 한 요소가 다른 것에 비해 부족하다면 게임의 완성도가 떨어진다고 느끼게 됩니다.이러한 요소들을 이용하여 게임을 쉽게 개발할 수 있도록 도와주는 도구가 바로 게임 엔진입니다. 게임 엔진은 게임 개발을 위한 소프트웨어 프레임워크로 개발자는 이러한 엔진의 도움을 받아 복잡한 기술적인 문제들보다 디자인, 콘텐츠에 집중할 수 있게 됩니다..