인기 포스트
-
[.NET] C# DotNet으로 TCP 소켓 서버 열어보기
> D-15 | Dedicated Server 구축을 위한 조사 및 테스트용 코드를 작성했다. 학습 키워드: C#, DotNet, Socket 프로젝트 진행 사항1) Pathfinding Dedicated Server 구축을 위한 사전 학습: 현재 진행중인 게임 서버 프로젝트(The Last Rollback)는 Unity 클라이언트 게임과 연결된다. 클라이언트에서는 Unity의 NavMesh로 pathfinding을 진행하고 있는데, 개발 초기에 서버에 이를 올려둘 마땅한 방법을 찾지 못해서 클라이언트 주도로만 이루어지고 있다. 이전에 이 문제를 해결하기 위해 토의해서 나온 결론은 pathfinding 만을 담당하는 dedicated 서버를 구축하는 것이었다. C#으로 서버를 개발해야 하다보니 MVP 기..
-
스파르타) The Last Rollback (D-13, Node.js 게임 서버 최종 프로젝트) - DotRecast
> 과제 진행 간 완료한 사항 및 문제점과 해결 과정을 정리해보았다. 학습 키워드: Unity, C#, NavMesh, Recast & Detour, DotRecast 1. Progress1) Unity NavMesh 정보를 추출하여 obj 파일 생성하기:using System.IO;using System.Text;using UnityEditor;using UnityEngine;// Obj exporter component based on: http://wiki.unity3d.com/index.php?title=ObjExporterpublic class ExportNavMeshToObj : MonoBehaviour { [MenuItem("Custom/Export NavMesh to mesh")] ..
-
[Docker] Fluent Bit 세팅해보기 (짧)
학습 키워드: fluent bit, docker, windows 11 Docker를 이용하여 Fluent Bit 세팅해보기1) What is it?: Fluent Bit은 EFK 스택에서 로깅을 담당하는 Fluentd의 경량화된 버전이다. 2) How does it work?: 이 과정은 Windows PowerShell을 사용하여 진행했다. 우선 docker 명령어를 사용하여 fluent-bit의 latest 버전 이미지를 pull 해준다. 이미지 다운로드가 완료되면 Figure1과 같은 메세지가 출력되고, Docker Desktop의 Images 탭에서 설치된 이미지를 확인할 수 있다. 해당 이미지를 바로 실행할 수도 있으나, 아래와 같이 fluent-bit.conf 파일을 정의하여 변경한 ..
-
[WSL] WSL 설치 후 WiFi 연결이 안되는 문제 (Windows 11 Home)
> Docker Desktop을 설치하다가 발생했던 WiFi 연결 문제를 해결하는 과정을 정리해보았다. 학습 키워드: WSL, Docker Desktop, vEthernet, Hyper-V WSL 설치 후 Wifi 연결 안되는 문제1) What is it?: Docker desktop 설치 이후 와이파이 연결이 끊어지고 cmd에서 ipconfig /all을 사용해도 무선 어댑터가 인식되지 않는 문제가 있었는데, 실제 원인은 WSL이 사용하는 가상 어댑터 기본 설정이 제대로 되어있지 않아서였다. 이를 해결한 과정을 정리해보았다. Figure 2 처럼 Hyper-V 관리자(없으면 링크를 따라 설치)를 검색하여 실행하면 우측에 Figure 3과 같은 탭이 있다. 여기서 '가상 스위치 관리자'를 선택한 뒤 ..
-
[Node.js] Stream과 Back Pressure
학습 키워드: Node.js, Stream, Back Pressure, Socket 1. Stream1) What is it?: 연속적인 데이터 흐름을 처리하는 방식으로, 한 번에 모든 데이터를 메모리에 올리지 않고, 작은 단위의 청크(Chunk)로 나누어서 처리하여 메모리 사용을 최소화 함으로써 성능 최적화를 달성하는 방법이다. Node.js에서 스트림은 크게 다음의 네 가지로 나뉜다.Readable Stream: 데이터를 읽을 수 있는 스트림 (File System의 read stream이나 HTTP 요청). Writable Stream: 데이터를 쓸 수 있는 스트림 (File System의 write stream이나 HTTP 응답)Duplex Stream: 읽기와 쓰기가 모두 가능한 스트림 (TCP..
-
스파르타) The Last Rollback (D-12, Node.js 게임 서버 최종 프로젝트) - DotRecast (2)
> 프로젝트 진행 간 DotRecast 관련 학습 내용을 정리해보았다. 학습 키워드: C#, .NET, Recast & Detour, DotRecast, DtNavMesh 1. Progress1) DtNavMesh Loader 기능 추가: 이전 TIL에서는 Wavefront .obj 파일으로 변환하는 과정을 다뤘는데, 이번에는 이 obj 파일을 Detour가 사용할 DtNavMesh로 변환하는 과정을 학습했다. 거의 하루 종일 라이브러리 코드만 들여다 보다가 결국 Demo Scene에서 힌트를 얻어서 메쉬 로드에 성공했다. 이전에 언급했듯이 Demo Scene에 불러온 obj 파일은 Unity에서 이미 NavMesh로 생성된 파일을 변환한 mesh다. 그렇기 때문에 Recast를 통해 새로운 NavMe..