본문 바로가기

전체 글191

0. Direct X 기초 이해하기 : SDK, 라이브러리, Dx역사. DirectX 기초 이해하기: SDK, 라이브러리, 그리고 DirectX의 역사 게임 및 3D 그래픽 프로그래밍에서 가장 중요한 위치를 차지하는 Direct X.그런 다이렉트 X에 대해서 오늘은 알아보고자 한다. 하지만 그전에 용어에 대해서 알아할 개념들이 몇가지 있다. SDK 란 무엇인가?기본적으로 다이렉트 X를 개발하는 사람들은 DX SDK를 사용한다. 즉, SDK는(Software Development Kit)소프트웨어 개발 키트의 약자이다.정확한 정의 : SDK는 특정플랫폼, 운영체제, 또는 프로그래밍 언어를 위한 개발도구 모음.SDK vs API : SDK는 API(Application Programing Interface)를 포함하는 더 큰 개념이다. API는 소프트웨어 간의 통신 방법을 정.. 2025. 5. 21.
청강문화산업대 게임스쿨 2년 재학 후기를 적어보자. 2편 군대는 언제가야 할까 나는 군대를 사실 가지 않아도 됐었다. 난시로 공익이 되었는데, 그럼에도 군대를 갔다 올 수 밖에 없는 상황이었다. 모두가 그런건 아니지만, 나는 1학년 2학기 당시 원인 모를 우울증에 걸렸고, 학교도 나가지 않고 방황을 하며 지냈다. F는 6개까지 맞을 위기에 처했고, 결국에는 2학기가 끝나기전 휴학을 신청하며 1학년 2학기의 모든 성적을 초기화 시켰다. 사실 공익이 붙었다면 그냥 무시하고 공익 근무를 갔을지도 모르겠지만, 11월 보충역 근로지 선발에서 떨어지게 되었고, 결국엔 2학기 휴학을 한지 대략 17일만에자원입대를 하게 되었다. (솔직히 말하자면 지금은 나름 최고의 선택이라 생각한다.) 12월에 입대해서 6월에 전역을 하면 나름대로 2학기를 다시 복학해 바로 진행을 할 .. 2025. 5. 20.
청강문화산업대 게임스쿨 2년 재학 후기를 적어보자. 1편 참 갑작스럽게도 내가 현재 다니고 있는 대학교의 리뷰(?)를 진행하게 되었다. 군대전역하고 단 2개월만에 복학을 하고나서는 생각보다 바쁘게 살다보니 어느덧 벌써 2학년. 내 전공은 프로그래머이고, 현재 풀스택을 하고 싶어 네트워크와 DX(다이렉트 X) 두개를 모두 공부중이다. 참고로 내 면접당시 포트폴리오를 올릴 생각은 없으니, 그런걸 기대한 사람들은 이창을 끄고 돌아가길 바란다. 면접 준비 당시면접 당시를 이야기를 해보자면, 정말 반쯤 미쳐있었다는게 맞는거 같다.당시 나는 선린인터넷고등학교에 재학중이었고, 사실 상 학교를 잘 나오지는 않았다. 뭐 수험생이던 신분이니 모두가 공부에 혈안이 되어있어 다같이 정상은 아니었다고 생각하지만, 그래도 생각해보면 그때도 지금만큼은 바쁘게 살지는 않았던거 같다. .. 2025. 5. 20.
Git Bash 심화 사용법 정리 Git 심화 사용법 정리1. 브랜치 전략1.1 브랜치 생성 및 전환git checkout -b feature/login 1.2 브랜치 병합 (Merge)git checkout maingit merge feature/login fast-forward 방식: 단순한 선형 병합--no-ff 옵션: 병합 커밋을 남김git merge --no-ff feature/login 1.3 브랜치 삭제git branch -d feature/login # 병합된 브랜치만 삭제git branch -D feature/login # 강제 삭제 2. Rebase와 Merge의 차이2.1 Rebase 사용 예시git checkout featuregit rebase main 커밋 히스토리를 “깔끔하게” 유지하고 싶을 때 사용.. 2025. 4. 21.
Git Bash 설치및 Git 기본 사용법 Git Bash 설치 및 Git 기본 사용법 1. Git Bash란? Git Bash는 Windows 환경에서 Git을 명령어 기반으로 사용할 수 있게 해주는 도구다. Git은 기본적으로 리눅스/유닉스 계열에서 CLI(명령어)를 기반으로 동작하므로, Windows에서도 유사한 환경을 제공하기 위해 Git Bash를 사용한다. 2. Git Bash 설치 방법 Git 공식 홈페이지에 접속운영체제에 맞는 설치파일 다운로드 (Windows 사용자는 .exe 파일)설치파일 실행 후 기본 설정대로 설치 진행설치 완료 후, 바탕화면 또는 우클릭 메뉴에서 “Git Bash Here” 실행 가능 3. Git 최초 세팅 (사용자 정보 설정)git config --global user.name "Your Name"git .. 2025. 4. 21.
4. C# 인터페이스 및 추상클래스 ,다형성 C#의 인터페이스와 추상 클래스, 그리고 다형성의 활용 C#에서는 클래스 간의 관계를 정의하거나 특정 기능을 보장하기 위해 **추상 클래스(Abstract Class)**와 **인터페이스(Interface)**를 사용한다. 이 글에서는 RPG 전투 시뮬레이션을 예시로 하여, 이 두 개념과 더불어 **다형성(Polymorphism)**을 어떻게 활용할 수 있는지 설명한다. 1. 인터페이스란? 인터페이스는 클래스가 따라야 할 **명세(contract)**를 정의한다. 구현을 포함하지 않으며, 오직 시그니처만을 포함한다. 이를 통해 클래스가 특정 기능을 반드시 제공하도록 강제할 수 있다.interface ISpecialAbility{ void UseSpecial(Character target);}ISp.. 2025. 4. 21.
3. C# 클래스 클래스의 구분내장형식(built-in Type, 닷넷 프레임 워크)Console, String, math…사용자 정의 현식(user defined type)using System;using System.Collections.Generic;using System.Linq;using System.Threading.Tasks;namespace ConsoleApp1{ class MyFirstClass { static void Staticmethod() => Console.WriteLine("[1] 정적메서드"); void InstaceMethod() => Console.WriteLine("[2] 인스턴스 메서드"); static void Main() .. 2025. 4. 21.
2. C# 배열, 함수, 델리게이트 컬렉션이름 하나로 데이터 여러개를 담을 수 있는 그릇C# 컬렉션 - 배열(array) 리스트(list), 사전(dictionary)등등배열var array = new string[] {"Array", "List", "Dictionary"};foreach (var arr in array) {Console.WriteLine(arr);}- 출력값ArrayListDictionary리스트var list = new List {"Array", "List", "Dictionary"};foreach (var item in list ) {Console.WriteLine(item );}- 출력값ArrayListDictionary사전(Dictionary)var dictionary= new Dictionary{{0,"Array.. 2025. 4. 21.
1. C# 기초 1. CLR의 타입 시스템 - CLR : 공통 언어 런타임, 즉 모든 C# 코드의 실행 환경 - 타입 안정성 : 잘못된 타입 사용방지 - 모든 타입은 'System.Object'에서 파생됨. 2. 값 타입 - struct, enum 두가지 형식(값 형식은 sealed) - int, long, double, char, bool등, - 스택에 할당되며, 값 자체를 저장한다. - 변수간의 복사는 값 자체의 복사이다.int // System.Int32long // System.Int64double // System.Doubleint a = 0; // System.Int32 a = new System.Int32(); - 변수간 복사는 값자체의 복사이므로, GC 관여없이 효율적이다. int a = 10;in.. 2025. 4. 21.
1. 네트워크 : UDP 서버, 클라 채팅프로그램 서버 구현 : UDPServer.csusing System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Net;using System.Net.Sockets;namespace UDP_Server1{ class Program { const int SERVERPORT = 9000; const int BUFSIZE = 512; static void Main(string[] args) { int retval; Socket sock = null; .. 2025. 3. 14.
아이폰 11 프로 - 6년간 사용기 리뷰 벌써 이 폰을 쓴지 6년이나 되었습니다. 2019년 11월에 사서(뭐 사실 5년 3개월 째이긴 합니다만,)연차로는 6년차에 들어가는 폰이죠... 아이폰 11프로 64기가 입니다. 당시 갤럭시 S10+를 사용중이었고,아무래도 학교 주변애들이 전부 아이폰을 사용하고 있는 바람에저도 물들어서(?) 아이폰을 당시 처음 입문했습니다.  참 쓰면서 좋았던 적도 좀 그지같은 적도 많긴 했지만 나름대로 제 메인폰으로 그동안 써오며 느낀점들을 한번 말씀드려볼까 싶네요.  뭐 지금은 이젠 중고로 사려는 분들도 없으신거 같긴합니다만...ㅋ ㅋㅋ;;  당시 Xs가 나오고나서 처음으로 이 인덕션 카메라와 반투명 유리로 바뀌고 나서나름 완성도 측면에서는 호평이 많았지만 저 인덕션 디자인의 혹평으로  꽤나 욕을 많이도 먹었던 폰이.. 2025. 2. 15.
에이수스 젠북 S 16 - AMD HX 370버전 4개월 사용기 리뷰 대략 맥북프로 2019 16인치를 쓰던 어느날, 개발을 하다가 배터리가 2시간도 못간채 자꾸 충전기를 물려달라고 계속해서 알림이 뜨는 바람에계속해서 스트레스를 누적시키며 받다가... 결국엔 노트북을 교체하기로 결심했습니다.해서 후보군은 맥북프로 m4 pro 모델과, 윈도우 노트북중 좀 성능이 좋으면서도 전성비가 좋은놈으로...하지만 제 직업은 다들 아시다시피 게임 개발자고, 유니티를 사용하지 않고 언리얼로 개발을 하는 입장에서는솔직히 맥북은 iOS 패키징을 할 때 빼고는 사실 크게 메리트가 없습니다만,  macOS의 깔끔했던 UI와 UX경험은 그야말로 저에게는 정말 환상적인 경험이었습니다. 때문에 m2 맥북에어(마개조)는 혹시 모르니 그대로 남겨둬 디자인 & 문서작성 & 영상편집용으로 사용하고,  메인 .. 2025. 2. 15.