UE5/이득우의 언리얼 프로그래밍 공부 노트 2024. 1. 28. 19:14[Part1] 12.언리얼 엔진의 메모리 관리

언리얼 엔진의 자동 메모리 관리 C++ 언어 메모리 관리의 문제점 C++은 저수준으로 메모리 주소에 직접 접근하는 포인터를 사용해 오브젝트를 관리한다. 그러다보니 프로그래머가 직접 할당(new)과 해지(delete) 짝 맞추기를 해야 한다. 이를 잘 지키지 못하는 경우 다양한 문제가 발생할 수 있음 잘못된 포인터 사용 예시 메모리 누수(Leak) ⇒ new를 했는데 delete 짝을 맞추지 못함 → 힙에 메모리가 그대로 남아있음 허상(Dangling)포인터 ⇒ (다른곳에서) 이미 해제해 무효화된 오브젝트의 주소를 가리키는 포인터 와일드(wild)포인터 ⇒ 값이 초기화되지 않아 엉뚱한 주소를 가리키는 포인터 잘못된 포인터 값은 다양한 문제를 일으키며, 한 번의 실수는 프로그램을 종료시킴 게임 규모가 커지고..

[라즈베리파이] 초기 설정
라즈베리파이 2024. 1. 17. 23:08[라즈베리파이] 초기 설정

❗**이 글은 라즈베리파이를 처음 만져보며 메모를 겸하며 작성한 글이라 조금 비 전문적일 수 있습니다.**❗ 🔥imager 설치 후 실행 우선 여기서 imager installer를 다운받고 설치해준다. 실행 후 대충 디바이스, os, usb포트를 골라주고 다음 클릭 OS 커스터마이징 질문 팝업이 뜬다 설정 편집 클릭 🔥OS 커스터마이징 일반 탭 사용자 이름과 비밀번호 설정(ssh를 위해) 와이파이 미리 설정 → 무선LAN 국가도 주파수때문에 중요한듯 하다. 키보드 레이아웃 옵션은 최근에 추가된것 같은데(아마도) 일단 kr로 해봤다. 서비스 탭 SSH 사용 체크 비밀번호 인증 사용 선택 저장하고 설치를 쭉쭉 진행한다. 설치완료! 🔥SSH 접속 (with powershell) 우선 공유기 설정을 들어가든 ..

안쓰는 안드로이드폰을 Node.js 웹서버로 만들어본 후기
Web/Node.js 2024. 1. 17. 00:21안쓰는 안드로이드폰을 Node.js 웹서버로 만들어본 후기

✌️개요 안쓰는 터치가 고장난 갤럭시S9+를 어떻게 활용할 방법이 없을까 고민하던 와중에 안드로이드도 결국 리눅스에서 출발했으니 웹서버로 쓸 수 있지않을까 라는생각에 검색을 해봤다. 역시나 가능하고 튜토리얼글도 꽤나 발견할 수 있었다. 그치만 이 글에서는 자세하게 튜토리얼을 적진않을것이다. 왜냐면... 다른 블로그의 글을 보고 그대로 따라했고, 그 글이 정말 잘 설명돼있다. (이 분도 해외 글을 번역하고 요약하셨다고 한다.) 대신 해당 글을 그대로 따라했는데 막혔던 부분과, 부연 설명이 필요한것만 적어볼것이다. 참고한 곳 루팅없이 안드로이드폰을 node.js서버(웹 서버)로 만들기 남는 스마트폰을 루팅없이 node.js 서버(웹 서버)로 이용할 수 있는 방법입니다. 참고로 안드로이드 버전이 5.0 이상만..

[Unity] HDR옵션을 켜면 RenderTexture의 배경이 보이는 문제
Unity/TroubleShooting 2024. 1. 9. 15:36[Unity] HDR옵션을 켜면 RenderTexture의 배경이 보이는 문제

✌️ 짧은 팁Unity에서 포스트 프로세싱의 Bloom효과를 제대로 쓸려면 [프로젝트 세팅 - 그래픽]에서 Use HDR 옵션을 활성화 시켜줘야한다.하지만 HDR옵션을 활성화 하고 나서 RenderTexture를 사용해보면 아래 그림과 같이 카메라 화면의 배경이 투명처리되지 않는다.  해결하는 방법은 위에서 활성화한 Use HDR 옵션 밑에있는 HDR Mode를 R11G11B10에서 FP16으로 바꿔주는것그러면 이렇게 깔끔하게 배경이 사라지고 Bloom도 여전히 제대로 적용된다.  다만 유니티가 안드로이드 플랫폼에서 HDR옵션 기본 비활성화에 포맷도 R11G11B10 기본값으로 둔 이유가 있지 않겠는가!HDR옵션을 쓰면 안그래도 무거워지는데 포맷을 FP16으로 쓰면 더더욱 무거워진다.꼭 필요하다면 성능 ..

UE5/이득우의 언리얼 프로그래밍 공부 노트 2023. 12. 31. 18:00[Part1] 11.언리얼 컨테이너 라이브러리(2)-구조체와 Map

[!note] 실습은 지난번 프로젝트인 UnrealContainer에 이어서 작성 언리얼 구조체 🔗공식 문서 → 강의와 똑같은 문서는 사라진것 같음 구조체 게임플레이 클래스용 구조체 생성 및 구현 관련 레퍼런스입니다. https://docs.unrealengine.com/5.1/ko/structs-in-unreal-engine/ 구조체 사용시 알아둘 정보 구조체는 단순한 데이터 타입에 적합하므로 UObjects와는 다름 프로젝트 내부에서 보다 복잡한 인터랙션을 하기 위해서는 UObject 또는 AActor 서브클래스를 만드는것이 좋음 UStruct는 리플리케이션용으로 간주되지 않음 UProperty변수는 리플리케이션응으로 간주됨 언리얼 구조체 UStruct 데이터 저장/전송에 특화된 가벼운 객체 대부분 ..

UE5/이득우의 언리얼 프로그래밍 공부 노트 2023. 12. 24. 20:33[Part1] 10.언리얼 컨테이너 라이브러리(1) - Array와 Set

개요 언리얼 컨테이너 라이브러리 언리얼 엔진이 자체 제작해 제공하는 자료구조 라이브러리 줄여서 UCL(Unreal Container Library) 라고도 함. 언리얼 오브젝트를 안정적으로 지원하며 다수 오브젝트 처리에 유용하게 사용됨. 언리얼 C++는 다양한 자료구조 라이버르리를 직접 만들어 제공하고 있음. 실제 게임 제작에 유용하게 사용되는 라이브러리로 세 가지를 추천함. ⇒ TArray, TMap, TSet C++ STL과 언리얼 컨테이너 라이브러리의 차이점 C++ STL은 범용적으로 설계되어 있다. C++ STL은 표준이기 때문에 호환성이 높다. C++ STL에는 많은 기능이 엮여 있어 컴파일 시간이 오래걸림. 언리얼 컨테이너 라이브러리는 언리얼 엔진에 특화돼 있음. 언리얼 컨테이너 라이브러리는 ..

image