안쓰는 안드로이드폰을 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에는 많은 기능이 엮여 있어 컴파일 시간이 오래걸림. 언리얼 컨테이너 라이브러리는 언리얼 엔진에 특화돼 있음. 언리얼 컨테이너 라이브러리는 ..

UE5/이득우의 언리얼 프로그래밍 공부 노트 2023. 12. 17. 17:22[Part1] 9.언리얼C++ 설계(3) - 델리게이트

느슨한 결합(Loose Coupling) 강한 결합과 느슨한 결합 강한 결합(Tight Coupling) 클래스들이 서로 의존성을 가지는 경우를 의미한다. 아래 예시에서 Card가 없는 경우 Person이 만들어질 수 없다. 이 때 Person은 Card에 대한 의존성을 가진다고 한다. 핸드폰에서도 인증할 수 있는 새로운 카드가 도입된다면? 느슨한 결합(Loose Coupling) 실물에 의존하지 말고 추상적 설계에 의존하라. (DIP 원칙) 왜 Person은 Card가 필요한가? → 출입을 확인해야 하기 때문 출입에 관련된 추상적인 설계에 의존하자. ICheck를 상속받은 새로운 카드 인터페이스를 선언해 해결 이러한 느슨한 결합 구조는 유지 보수를 손쉽게 만들어 줌. 기존 코드 class Card { ..

UE5/이득우의 언리얼 프로그래밍 공부 노트 2023. 11. 25. 18:39[Part1] 8.언리얼C++ 설계(2)-컴포지션

언리얼 오브젝트의 컴포지션 컴포지션(Composition) 객체 지향 설계에서 상속이 가진 Is-A 관계만 의존해서는 설계와 유지보수가 어려움. 컴포지션은 객체 지향 설계에서 Has-A 관계를 구현하는 설계 방법 컴포지션의 활용 복합적인 기능을 가진 거대한 클래스를 효과적으로 설계하는데 유용하게 사용할 수 있음. 아래 코드는 어떤 사람이 카드를 소유하는 개념을 컴포지션을 사용해서 구현한 예시 class Card { public: CarD(int InId) : Id(InId) {} int Id = 0; }; class Person { public: Person(Card InCard) : IdCard(InCard) {} protected: Card IdCard; }; 모던 객체 설계 기법과 컴포지션 좋은 객..

image