일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- PCCE
- DirectX
- boj 11053
- render target
- boj 21921
- orthographic projection
- lock based stack
- 지게차와 크레인
- boj 1958
- 색종이와가위
- tessellation
- 비밀 코드 해독
- 데이터 체커
- 2025 프로그래머스 코딩챌린지 1차예선
- 브루트포스
- lock free stack
- pccp 기출문제 풀이
- lock based queue
- 홀짝트리
- DirectX12
- dp
- pcce 기출문제 풀이
- 프로그래밍공부
- LCS
- boj 22942
- c++
- boj 15724
- boj 20207
- boj 6443
- boj 1074
- Today
- Total
목록전체 글 (111)
오구의코딩모험

게임 개발에서 배우는 렌더링 기법과 최적화 개념 게임 개발은 복잡한 그래픽 요소를 효율적으로 처리하는 기술과 최적화 기법을 요구합니다.이번 글에서는 Frustum Culling, Quaternion, Orthographic Projection, 렌더링 기법, Compute Shader, Particle System, Instancing의 개념의 학습한 내용을 중심으로 정리합니다. 1. Frustum Culling Frustum Culling이란? - Frustum Culling은 절두체 영역 내에 있는 물체만 렌더링하는 기술입니다. - 렌더링할 필요가 없는 물체는 CPU에서 예외 처리하여 GPU 연산을 최소화합니다. - 이 과정은 성능 최적화에 큰 도움을 주며, 복잡한 3D 장면에서 필수적..

게임 개발에서 배우는 다양한 개념과 그래픽 처리 게임 개발에는 데이터 관리, 그래픽 처리, 좌표 변환 등 다양한 개념이 포함됩니다. 이번 글에서는 union, 좌표계 변환, 광원(Light)와 빛의 특징, 그리고 Normal Mapping 을 중심으로학습한 내용을 정리합니다. 1. 데이터 관리와 코드 구조 Union - union은 동일한 데이터를 여러 형식으로 접근할 수 있게 합니다. - 메모리를 효율적으로 관리할 수 있지만, 데이터 해석의 일관성에 유의해야 합니다. DirectX SimpleMath 헤더 - DirectX의 SimpleMath 헤더에는 좌표계 변환과 관련된 함수들이 포함되어 있습니다. - 단, 오른손 좌표계 를 기준으로 동작하므로, 부호 설정을 정확히 해야 합니다. ..

문득 페이스북을 보다가잔디 기부 캠페인을 보고 잔디를 기부한다고..? 무슨 소리인가 궁금해서 링크를 들어가 보았다. https://hanghae99.spartacodingclub.kr/campaign 개발자 커리어 개척 캠프 항해99 | 잔디 기부 캠페인세상의 성장에 기여하세요hanghae99.spartacodingclub.kr 진짜 잔디가 아니라깃허브에 심는...개발자들의 '잔디'를 말하는 것이었다 ㅎㅎㅋㅋ 깃허브 계정만 연동하면기부를 동참할 수 있고,기부증도 준다고 하여 나도 참여해보았다!! 나는 크롬 다이노 인형이 나왔다.귀엽군. 항해99에서잔디 1개 = 100원으로 환산하여저소득층 아동에게 코딩 교육을 지원하는 단체에 기부된다고 하니여러분도 함께 해보시면 좋을 것 같다! 개발자 꿈나무들을 ..

https://school.programmers.co.kr/learn/courses/30/lessons/340199 문제 3줄 요약 1. 지갑 크기의 맞게 지폐를 넣고자 한다.2. 지폐가 지갑의 크기보다 크다면, 지폐의 긴 쪽을 반으로 접는다.3. 최소 몇 회를 접어야 넣을 수 있나? 문제 내에 의사코드도 주어져 있어서풀기에 큰 어려움이 없지 않았나 싶었던 문제였다. 문제를 파악 후가장 먼저 작성하고자 했던 것은지폐와 지갑의 크기를 정렬하고큰 부분끼리 비교해보자...! 였다. 지폐와 지갑의 크기가 벡터로 주어졌기에 #include sort(wallet.begin(), wallet.end()); sort(bill.begin(), bill.end()); 다음과 같은 "algor..

https://school.programmers.co.kr/learn/courses/30/lessons/340198 문제 3줄 요약1. 공원에 정사각형 모양의 돗자리를 까려고 한다. (공원은 정사각형이 아닐 수 있다는 점!)2. 공석은 "-1"로 표시되어 있다.3. 사람들이 없는 곳에 돗자리를 펼치려고 하는데, 깔 수 있는 가장 큰 돗자리는? 문제를 읽고 바로 든 접근법은완전탐색을 해보는 것이었다. 모든 좌표를 돌며해당 좌표로부터 N×N 크기의 공간 안이모두 "-1"인지 파악하는 방식을 생각하였고 공원의 길이가 최대 50돗자리의 종류가 최대 10종류, 최대 길이 20의 제한사항을 고려해보았다. (50 × 50)를 완전 탐색하며길이가 20인 돗자리 10개를 탐색한다고 하면2500 × 200 = 5000..

https://www.acmicpc.net/problem/1991 문제 3줄 요약 1. 이진 트리의 순회 결과를 출력한다.2. 전위 / 중위 / 후위 순으로 순회할 것이다.3. 순회 방법은 순회 결과가 힌트! 학부 수업 때,트리 순회를 외우려고 친구들과 고민하던 중친구 한 명이 알려줬던 방법이 기억에 잘 남아서 아직도 잊혀지지 않는다..! 그 방법은트리에 막대기를 붙여서 경로를 이어주는 방법이었다. 전위 순회는 막대를 각 노드의 왼쪽,중위 순회는 막대를 각 노드의 아래쪽,후위 순회는 막대를 각 노드의 오른쪽에 붙여주고 경로를 이어주면막대기의 순서가 순회 결과 순으로 된다는 것이었다. 예를 들어,위의 이진 트리의 중위 순회를 해본다면 막대기는 순회 방식에 따라 다르게 설정해준다.하지만 경로는 항상 왼쪽..

https://www.acmicpc.net/problem/5567 문제 3줄 요약 1. 상근이는 결혼식에 자신의 친구 + 친구의 친구까지만 초대한다.2. 친구의 친구의 친구는? 안된다.3. 친구 관계 리스트를 보고 몇 명을 초대해야할 지 구해보자! C++를 공부를 시작한지 얼마 되지 않아아직 알고리즘 문제푸는게 익숙하지 않다고 느껴다시 차근차근 푼 문제들을 블로그에 작성해야겠다. 처음에는 재귀 DFS를 사용하여 문제에 접근했는데,Depth 처리가 생각보다 쉽지 않다고 느껴서BFS로 바꿔서 풀었다. 제출한 코드가 길지 않으니일단 필자의 데이터 입출력 부분부터 확인해보자! int main(void){ ios::sync_with_stdio(0); // c stream, c++ stream 중 c++ ..

게임 개발에서 배우는 행렬과 좌표 변환 게임 개발에서 행렬(Matrix)은 좌표 변환과 3D 공간을 제어하는 데 매우 중요한 역할을 합니다.이번 글에서는 행렬의 기본적인 연산, 변환의 순서, 그리고 로컬 좌표에서 스크린 좌표로 변환하는 과정을 정리합니다.초심자의 관점에서 배우고 기록한 내용을 공유합니다. 1. 행렬의 기본 개념 행렬의 곱- 행렬 A(m × n)과 B(n × p)를 곱하면 결과는 C(m × p)가 됩니다. - 교환 법칙 : 성립하지 않습니다. (A × B ≠ B × A) - 결합 법칙 : 성립합니다. ((A × B) × C = A × (B × C)) 역행렬 - 역행렬 은 행렬을 곱했을 때 단위행렬로 돌아오게 하는 행렬입니다. - 예: A × A⁻¹ = I (단위행렬) ..

Component, 삼각 함수, Vector게임 개발은 다양한 기술과 수학적 개념이 결합된 창의적인 작업입니다.이번 글에서는 Unity와 Unreal의 Component 시스템 비교와 함께 게임 개발에 필요한 스마트 포인터의 활용법 및 게임 수학의 기본 개념을 정리합니다. 인강을 통해 배우고 정리한 내용을 공유한 글이기에 정확하지 않은 정보가 있을 수 있으며,수정이 필요하다면 언제든 댓글 작성해주시면 감사하겠습니다! 1. Component 시스템 이해 Unity의 Component 기반 구조 Unity는 Component를 사용해 객체에 필요한 기능만 추가할 수 있는 모듈화된 설계를 제공합니다. - GameObject는 기본적인 틀이며, 다양한 Component(예: Transform, Rig..

Input과 Timer, Material DirectX는 게임 개발에 필수적인 요소들을 다룰 수 있는 강력한 도구입니다. 이번 글에서는 게임 입력(Input) 처리, 시간(Timer) 제어, 3D 객체의 재질(Material) 설정에 대해 공부한 내용을 공유합니다. 또한, C++의 구조체와 클래스의 차이점도 함께 다룹니다. 1. Input 시스템 이해 입력 처리란?- 입력 처리(Input Handling)는 키보드, 마우스, 게임패드와 같은 장치에서 사용자의 명령을 받아 게임 로직에 반영하는 과정입니다.- 입력 지연을 최소화하고 정확히 처리하는 것이 중요합니다. Windows API로 키 입력 처리 - Windows API를 사용하여 키보드 입력을 처리하는 간단한 방법이 있습니다. 반복 키 문..