전체 글 1019

객체지향의 프로그래밍의 3요소 - 다형성

은닉성:https://monstrosite.tistory.com/18 객체지향의 프로그래밍의 3요소 - 은닉성상속성 : https://monstrosite.tistory.com/17 객체지향 프로그래밍의 3요소 - 상속성 객체지향 프로그래밍(Object Oriented Programming) 줄여서 OOP의 3가지 요소에 대해 알아보고자 합니다. 첫 번째 시작으로, 상monstrosite.tistory.com 저번 포스팅에서는 객체지향 프로그래밍의 3대 요소 중 하나인 은닉성에 대해 배워보았습니다.이번 포스팅에서는 마지막 요소인 다형성에 대해 알아보겠습니다. 1) 다형성이란?마이크로소프트 공식문서에서는 다형성에 관해 2가지 측면의 설명을 제시합니다.https://learn.microsoft.com/ko-..

컴퓨터 구조 2024.03.30

객체지향의 프로그래밍의 3요소 - 은닉성

상속성 : https://monstrosite.tistory.com/17 객체지향 프로그래밍의 3요소 - 상속성객체지향 프로그래밍(Object Oriented Programming) 줄여서 OOP의 3가지 요소에 대해 알아보고자 합니다. 첫 번째 시작으로, 상속성에 대해 알아보겠습니다. 위의 코드에서 Knight 클래스는 아주 간단하게monstrosite.tistory.com 저번 포스팅에서는 객체지향 프로그래밍의 3요소 중 하나인 상속성에 대해 배워보았습니다.이번 포스팅에서는 상속성에 이어 은닉성에 대해 배워보겠습니다.  1) 은닉성이란? 자동차를 구매했다고 생각해봅시다. 자동차를 운전하기 위해서는 기본적으로 핸들, 페달, 기어 등을 알아야 합니다.그런데 사실 자동차라는 것을 구성하는 것은 위에서 언급..

컴퓨터 구조 2024.03.30

객체지향 프로그래밍의 3요소 - 상속성

객체지향 프로그래밍(Object Oriented Programming) 줄여서 OOP의 3가지 요소에 대해 알아보고자 합니다.첫 번째 시작으로, 상속성에 대해 알아보겠습니다. 위의 코드에서 Knight 클래스는 아주 간단하게 체력과 공격력, 그리고 움직이고 공격하는 동작을 갖는 클래스입니다.그리고 Paladin 클래스는 Knight 클래스와 비슷하지만, 신성력을 갖고있다는 것이 차이입니다.문제없어 보이지만, 조금만 더 깊게 보면 문제가 있는 부분이 있습니다. 1)  코드를 재사용할 수 없다Knight 클래스와 Paladin 클래스는 하나를 제외하고 같은 특성을 갖고 있습니다.비슷한 특성들을 갖고 있음에도,  단 하나의 차이점으로 인해 클래스를 새로 만들고 멤버들을 다시 작성해주는 문제가 생깁니다.이건 매..

컴퓨터 구조 2024.03.29

언리얼 로그 메세지의 한글이 깨지는 현상과 해결책 / 부작용

언리얼 엔진을 사용해 빌드의 결과를 확인하려 로그를 열어보면 한글이 깨지는 현상을 볼 수 있습니다. 이 오류를 해결하는 방법은 생각보다 간단합니다. 윈도우 검색 탭에서 '국가 또는 지역변경'을 검색하시고,  위의 관련 설정 중 '기본 언어 설정'으로 들어가 주세요. 그 후에,  유니코드를 지원하지 않는 프로그램용 언어의 시스템 로캘 변경을 클릭하시고,  Beta: 세계 언어 지원을 위해 Unicode UTF-8 사용을 체크해주시면 됩니다. 체크 후, 재부팅을 하시면 언리얼의 로그가 정상적으로 출력되는 것을 확인하실 수 있습니다. 그러나, 저 위의 방법을 저는 추천드리지 않습니다. 저 설정을 적용하고 나면,언리얼과 관련 없는 프로젝트에 적어놓은 주석들이나 설치한 프로그램의 한글이 깨지는 현상을 확인하실 수..

오토 세이브 기능 활용하기

언리얼에서는 기본적으로 오토 세이브라는 기능을 통해사용자가 저장하지 못해 벌어지는 문제를 예방해줍니다. 그러나 오토 세이브가 되어도 어떻게 활용해야 하는지 모르는 경우가 많아 불편함을 겪을 수가 있습니다.이 포스팅에서는 오토 세이브 활용법을 알려드리겠습니다. 언리얼 에디터 오른쪽 하단에서 자동으로 오토 세이브가 되었다는 팝업 메세지가 확인되었다면지금까지의 변경사항이 자동저장되었음을 알 수 있습니다. 그 이후,프로젝트의 폴더로 이동하여  위의 Saved 폴더로 이동합니다.Saved 폴더 안으로 이동하면 여러가지 파일들이 존재하는데, 그 중 AutoSaves 폴더로 이동하면작업에 따라 확장자명이 .uproject또는 .uasset인 파일들이 존재합니다. 그 후 해당 파일들을 복사 후, 같은 이름의 기존 파일..

프로그래밍 개론

1) 컴퓨터의 연산을 구성하는 요소들간단하게 얘기하자면 컴퓨터는 위와 같이 작동하게 된다.1) CPU : 연산 장치로써 연산을 수행한다2) RAM(주기억 장치) : 연산을 하는데 필요한 데이터들을 기억한다. 단, 전원이 꺼지면 데이터가 손실된다3) SSD(보조 기억 장치) : RAM을 보조하는 반영구적인 기억장치이다 위의 관계에서 볼 수 있듯이 필수적인 내용들을 SSD에 저장하고, 그 내용들을 필요로 할 때, RAM에서 불러와서 사용하게 된다  2) RAM의 구조RAM에서 데이터가 사용하는 공간은 간단하게 4개의 영역으로 분리가 가능하다. 1) 코드(텍스트) 영역 : 소스 코드가 저장되는 영역2) 데이터 영역 : 전역 변수나 정적 변수가 저장되는 영역3) 힙 영역 : 동적할당되는 요소들이 저장되는 영역4..

컴퓨터 구조 2024.02.18

언리얼 엔진과 C++ 호환에서 live coding과 관련한 문제

언리얼 엔진에서 C++를 사용하기 시작하면서 많은 분들이 에디터를 사용하여 C++ 클래스를 만들곤 합니다. 그리고 언리얼 엔진에서는 이러한 사용자들을 배려하여 라이브 코딩이라는 기술을 지원합니다. https://docs.unrealengine.com/5.0/ko/using-live-coding-to-recompile-unreal-engine-applications-at-runtime/ 라이브 코딩런타임 중에 게임의 바이너리를 리컴파일 및 패치합니다.docs.unrealengine.com 공식문서상에서는 라이브 코딩을 위와 같이 정의하였습니다. 하지만, 언리얼 엔진을 접한 지 얼마 안된 분들께서는 이 라이브 코딩을 사용하시면서 반드시 겪는 문제가 있습니다.  위와 같이 언리얼 엔진에서 사용할 변수를 정의하..

언리얼 엔진 작업 결과물을 저장할 때 생기는 오류

열심히 작업하여 완성한 결과물을 저장하려고 ctrl + shfit + s를 눌렀을 때,예기치 않은 저장 오류 메세지가 팝업되는 것을 본 적이 있으실 겁니다. 특히나, 이런 경우 언리얼 엔진을 처음 접하신 분들이 코드에 문제가 있는 것으로 착각하여 코드를 처음부터 다시 만들거나, compile을 여러 번 하여 문제가 어디 있는지 알아 보려고 시도하는 경우가 많습니다. 결국에는 언리얼 엔진을 종료하고, 다시 원점부터 시작하여 프로젝트를 완성하려고 시도하는 경우도 있습니다. 그러나 이런 우여곡절을 겪어도 똑같은 저장 에러가 발생하는 문제가 발생합니다. 이 경우 제일 먼저 작업 관리자에 들어가서 확인해주세요.  현재 작업중인 UnrealEditor외에하단의 백그라운드 프로세스에서 다른 UnrealEditor가 ..

언리얼엔진 블루프린트 사용 중 화면이 멈추는 현상에 관하여

언리얼 엔진을 처음 배우는 많은 분들이 C++사용 이전에 블루 프린트를 이용하여 코드가 어떻게 작동하는지 배웁니다.  위와 같이 블루 프린트는 블록 코딩처럼 작동하여 노드 간 연결을 통해 코드의 흐름을 이끌어내게 됩니다. 하지만 블루 프린트를 사용하던 중,   위의 기능을 사용하여 Actor를 클래스로 만들어 사용하고자 하면 갑자기 언리얼 엔진이 다운되어 아무것도 할 수 없는 상태가 되어버리는 경우가 있습니다.  이 경우에는 화면의 클릭도 되지 않아 결국 작업 관리자로 언리얼 엔진을 강제 종료하는 방법밖에 없을 겁니다. 이 문제를 해결하기 위해서는 어떻게 해야 하는 지 알려 드리겠습니다. https://forums.unrealengine.com/t/unreal-freezes-on-creating-blue..