일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Overloading
- Algorithm
- 백준
- 학습용
- ue5
- rendering pipeline
- 알고리즘연습
- Implicit method
- ComputeShader
- C++
- C
- stretch force
- Conjugate Gradient
- class
- Til
- 알고리즘
- ppt
- dedicatedserver
- sparse matrix
- 논문
- TIP
- listenserver
- UNORDERED_MAP
- game jam
- 독서
- 참조자
- 2020.03.16
- 프로그래머스
- graphics
- 2020.02.23
- Today
- Total
OSgood의 개발일기
리슨 서버(Listen Server)와 데디케이티드 서버(Dedicated Server)는 멀티플레이어 게임의 네트워크 아키텍처에서 매우 중요한 개념이며, 각각의 장단점이 분명하게 존재합니다. 🧩 개념 정의🎧 리슨 서버 (Listen Server)게임 클라이언트 중 하나가 서버 역할을 동시에 수행함.해당 클라이언트는 게임을 직접 플레이하면서, 동시에 다른 클라이언트의 접속을 받아 호스트가 됨.🖥 데디케이티드 서버 (Dedicated Server)클라이언트가 아닌 별도의 독립 실행 서버 프로그램이 존재.서버는 게임을 직접 플레이하지 않으며, 오직 클라이언트들의 데이터 동기화 및 게임 진행 관리만을 담당.🔍 주요 비교 항목항목 Listen Server Dedicated Server호스팅 위치유저의 클..
병렬/병행 소프트웨어를 구현할 때 꼭 알아야 할 핵심 이론과 기법들을 정리한 메모입니다.📚 목차병행 프로그래밍이 필요한 이유병행 모델: 메시지 전달 vs 공유 메모리경쟁 상태와 데이터 경쟁임계 구역과 원자성스레드 동기화 도구락 기반 병행성의 한계병행성 설계 원칙락-프리 병행성 개념원자적 명령어와 메모리 장벽C++11의 std::atomic과 메모리 정렬고급 락 기법 (스핀 락, 재진입 락 등)SIMD 벡터화 프로그래밍GPGPU 병렬 프로그래밍1. 병행 프로그래밍이 필요한 이유문제 자체가 여러 제어 흐름에 더 적합한 경우가 있음.멀티코어 CPU 성능을 극대화하려면 병행 설계 필수.2. 병행 모델: 메시지 전달 vs 공유 메모리메시지 전달: 스레드 간 메시지를 주고받음.공유 메모리: 같은 메모리에 직접 접..
Lyra Experience 시스템은 Epic Games가 Unreal Engine 5 기반으로 만든 샘플 프로젝트인 Lyra Starter Game에서 설계한 커스텀 구조입니다.Unreal Engine 자체에 내장된 공식 시스템은 아니지만, Gameplay Ability System(GAS), Game Feature Plugin, Modular Gameplay 등 최신 언리얼 생태계와 가장 잘 통합되는 게임 구조 패턴으로 사실상 Epic이 권장하는 모듈화 설계 방식이라 할 수 있습니다.이 글에서는 Lyra의 Experience 시스템이 무엇이며, Unity 개발자의 시선에서 어떻게 이해하면 빠르게 적응할 수 있는지를 중점으로 설명합니다.✅ Experience란 무엇인가?Lyra의 Experience는 ..
언리얼 엔진 모듈은 언리얼 엔진의 소프트웨어 아키텍처를 구성하는 기본 단위로, 특정 기능이나 도구를 독립된 코드 단위로 캡슐화하여 프로젝트의 구조를 체계적으로 구성하고 유지보수를 용이하게 합니다.(Epic Games Developer)✅ 모듈의 주요 특징 및 장점코드 캡슐화 및 분리: 모듈은 특정 기능을 독립적으로 구성하여 코드의 내부 구현을 숨기고, 명확한 인터페이스를 제공합니다.빌드 시간 단축: 각 모듈은 별도의 컴파일 단위로 처리되므로, 변경된 모듈만 재컴파일되어 대규모 프로젝트의 빌드 시간을 효율적으로 관리할 수 있습니다.(Epic Games Developer)종속성 관리: 모듈 간의 종속성을 명확히 정의하고, 실제로 사용되는 코드만 포함하는 "Include What You Use (IWYU)" ..
PDF 파일을 검색하거나 텍스트를 복사하려고 했는데 안 되는 경험, 한 번쯤 해보셨을 겁니다. 특히 스캐너로 만든 문서들은 이미지 형식이라서 눈에는 글자가 보이지만, 컴퓨터 입장에서는 ‘그림’일 뿐입니다. 텍스트 검색도 안 되고, 복사도 안 되고, 하이라이트도 안 되는 이유죠.이럴 때 필요한 게 바로 **OCR (Optical Character Recognition, 광학 문자 인식)**입니다.**OCRmyPDF**는 이 OCR 기능을 스캔된 PDF 파일에 자동으로 적용해주는 오픈소스 도구입니다. 즉, 이미지만 있는 PDF에 ‘숨겨진 텍스트 레이어’를 추가해 검색 가능한 문서로 바꿔주는 역할을 하죠.🔍 예를 들어, 계약서를 스캔해서 받은 PDF에 OCRmyPDF를 돌리면 → 키워드 검색, 텍스트 복사,..

💡아래 발표 자료를 번역 및 해석한 내용입니다.GPU Architecture & Compute Shader - Carlos Fuentes개인적인 요약배경 지식픽셀 스레드(Thread): 가장 기본적인 실행 단위워프(Warp): 동시에 실행되는 스레드 그룹 (NVIDIA에서는 일반적으로 32개 스레드)블록(Block): 여러 워프의 집합그리드(Grid): 여러 블록의 집합요약 1. GPU 아키텍처 기본 구조첫 번째 다이어그램은 GPU의 기본 계층 구조를 보여줍니다:GPU는 크게 NVIDIA와 AMD 아키텍처로 나뉩니다.NVIDIA는 SM(Streaming Multiprocessor)을 사용하고, 그 안에 워프(32개 스레드)가 있습니다.AMD는 CU(Compute Unit)를 사용하고, 그 안에 웨이..
child process의 경우 자세한 디버깅이 안 되서 불편한 점이 많다. 이럴 때 유용한 visual studio extension이 있어서 포스팅을 한다. 해당 extension을 활용하면 세부디버깅이 가능하다. 다만, 해당 extension이 켜져있을 경우 해당 child process가 제대로 빌드가 되지 않기 때문에 빌드가 필요할 경우는 끄고 해야하며, 디버깅이 필요할 때만 켜는 것을 추천한다. https://marketplace.visualstudio.com/items?itemName=vsdbgplat.MicrosoftChildProcessDebuggingPowerTool
* 본 글의 저자는 application 개발의 초보자이다.(원래 GameEngineDeveloper 이다.) 본 글을 작성하는 목적은 application 공부를 처음 시작하면서 스스로 터득한 내용을 소화하는데 있다. 따라서 틀린 내용도 있을 수 있으니, 이러한 점은 양해바란다. 또한 나와 같은 초보자가 이 블로그를 통해서 조금이라도 정보를 얻을 수 있다면 좋을 것 같다.^^ React-Native 를 처음 공부하기 시작하면서 expo라는 것을 알게 되었다. 따라서 정확하지는 않지만 내가 이해한대로 최대한 쉽게 설명하고 넘어가려고 한다. React-Native는 기본적으로 cross platform application 개발을 위해 사용한다. 그렇다면 생각해볼 것이 있다. React-Native로 개발..