728x90 반응형 전체 글461 게임그래픽프로그래밍기초 11주차 - 렌더링파이프라인 렌더링파이프라인 이해 렌더링이라는 것은 무엇인가? 렌더링 : 컴퓨터 그래픽스에서 3D 모델, 2D 이미지를 화면에 보여지는 과정 전체를 의미한다. - 2D 렌더링 : 2D 이미지를 기반으로 색상, 위치 등의 속성을 통하여 화면에 표현하는 과정. - 3D 렌더링 : 3D 장면을 기반하여 카메라를 통해 장면을 어떻게 볼 것인지 계산하고 광원, 재질 등의 속성을 통하여, 화면에 표현하는 과정. 게임은 2D 렌더링부터 시작한다. (스페이스워, 슈퍼마리오 브로스) 게임은 3D 렌더링에서 고도화된다. (울펜슈타인 3D, 버추어 파이터) GPU의 가속을 받으면서 렌더링도 발달했다. 렌더링 파이프라인 그래픽데이터가 Modeling, Lighting. Shading 등의 핵심 과정 등을 거쳐 화면에 2차원 픽셀로 표시되.. 2023. 5. 22. 게임네트워크프로그래밍 11주차 - 키 입력 동기화 게임 실습 지난 주 시간 복습 객체 직렬화/ 역직렬화 키 입력 동기화 게임 만들기 키 입력 동기 구조, 상태 관리 키 입력 지연 키 입력 지연을 고려한 송수신과 상태 전환 정보가 버퍼에 저장된 상태 - 자신의 키 입력 정보를 송신 - 상대의 키 입력 정보를 수신 - 지연된 분량만큼 정보를 송수신하지 않은 상태 상태를 고려한 상태 전환 - 송수신하지 않은 상태 - 정보의 동기화 대기 상태 - 정보가 동기화된 상태 어떤 식으로 구현할지 고민 해 보아야 한다. 네트워크 게임 제작 실습 네트워크 통신을 위한 파트너 지정 플레이어 고양이를 움직여서 화살을 피하는 게임 : 서버를 경유한 게임 플레이 (예제) 2주간 실습 진행. 플레이어 고양이를 움직여서 과일을 얻는 게임 : 서버를 경유한 게임 플레이 두 번째 실습의 주요 목.. 2023. 5. 22. 게임레벨디자인 10주차 - 엑셀 사용 기초2 엑셀 학습 - 기본 엑셀 사용 1 : 유용한 메뉴 - 기본 엑셀 사용 2 : 엑셀 함수 활용 - 데이터 테이블 개념 - 레벨을 위한 기본 시스템 구조 - 레벨을 위한 데이터 기본 엑셀 사용 실습 Recipe Data.xlsx : FoodData - 요리 목록 작성. - 중복된 요리가 있는가 : 이것은 중복인가, 아닌가. - FoodData에 요리 아이디 부여. (숫자열, 문자열), UI 이름 작성. - 총 요리 개수는 몇 개인가. Recipe Data.xlsx : IngredientData - 재료 목록 작성 - 중복된 재료가 있는가. - 중복된 재료 삭제, 하나로 통합. - 총 재료 개수는 몇 개인가. - IngredientData에 요리 아이디 부여. (숫자열, 문자열), UI 이름 작성. Recip.. 2023. 5. 18. 게임음악작곡법 10주차 - Minor Key Minor Key (단조) 1. Minor Scale(단음계)에 관하여 - Minor Scale의 종류 a. Natural Minor Scale (자연적 단음계) b. Harmonic Minor Scale (화성적 단음계) c. Melodic Minor Scale (선율적 단음계) d. Jazz Minor d를 제외한 모든 단음계는 올라갈 때와 내려갈 때의 차이가 있다. 네츄럴 마이너를 추천한다. One Chord Tone (원 코드 톤) - 가장 간단한 멜로디는 코드 톤 하나로 구성된 것이다. 이러한 멜로디들은 3가지의 장점을 갖는데, 그것은 만들기 쉽고 부르기 쉽고 그리고 기억하기가 쉬워서 특히 청중에게 어필할 수 있다는 점이다. 이 마지막 장점은 특히 중요하다. 만약 청중들이 멜로디를 부를 수 있다.. 2023. 5. 18. 게임데이터설계 10주차 - 팔방미인 '가챠' 시스템 지난 시간 복습 시스템 기획을 하려면 구현을 위한 로직이 있다. 로직의 흐름을 완성하려면 값이 있어야 한다. 데이터와 시스템 기획은 밀접한 관계를 가지고 있다. 지난 주, 시스템 기획이 데이터와 친숙한 이유를 지난 시간 강화 시스템을 통해 설명했다. 아이템을 강화창 소켓에 올렸을 때, '강화 불가 아이템' 팝업창을 띄우고 싶다면? 이름만 가지고는 구현을 할 수 없다. 프로그래머는 강화 불가 아이템이 어떤 아이템인지 알 수 없기 때문. 해당 아이템이 '강화 불가 아이템' 인지를 알 수 있는 방법을 프로그래머에게 설명할 수 있어야 한다. * 강화가 가능한 아이템을 설명하는 것도 같은 맥락을 갖는다. ex) upgrade_type, upgrade_code로 구분 강화가 가능한 아이템을 강화창 소켓에 올렸을 때.. 2023. 5. 17. 게임알고리즘 9주차 - Binary Search Tree 지난시간 복습. 탐색 순회 - 전위, 중위, 후위, 깊이우선 탐색, 너비우선 탐색 Tree - 이진트리 - 레벨 - 높이 (height) : 가장 큰 레벨 = max(왼쪽 sub 높이, 오른쪽 sub 높이) - 비어있는 트리의 높이는 - 1 - 균형 (balance) : 좌우의 sub tree의 높이의 차. - 균형트리 : balance factor가 1 이하인 tree. - 포화이진트리 : balance factor가 0인 tree. - 완전이진트리 : balance factor가 0이거나 1인 tree. Binary Search Tree Dynamic Search using Tree - 정적 검색 (Static Search) : 데이터가 한꺼번에 저장되어 추후에 추가나 삭제가 이루어지지 않는 경우에 .. 2023. 5. 17. 게임프로그래밍고급 11주차 - Compute Shader 실습 진행. 빛의 종류 자연광 Ambient, 분산광 Diffuse, 반사광 Specular, 환경광 Global illumination invironment mapping Rendering Pipeline Local > World > View > Projection World space - 모든 연산은 특별한 경우를 제외하고는 월드 스페이스에서 이루어진다. - 벡터 공간의 연산을 해도 대부분은 월드 스페이스에서 진행한다. - 버텍스의 위치, Texture mapping file를 활용하기 위해서 TEXTURE COORDINATE 구조체를 사용한다. 두 벡터의 크기가 1일 경우 두 벡터의 내적은 cosθ와 같다. 이 과정을 통해 두 벡터의 사이값을 알 수 있다. 노말 값과 라이트 디렉션의 사잇 값이 θ라.. 2023. 5. 16. 게임기획크리틱 11주차 - 인공지능 기말고사 설명 - 6월 20일 수업전까지 팀별 작업물 제출, 발표. - 15주차 발표의 피드백 반영하여 시스템/ 콘텐츠 기획서 작성. - 15주차 팀 발표 결과물은 평가 안함. - 6월 25일 일요일 24시 개인 작업물 제출. 강의 중간평가 피드백 인공지능 설계하기 - 인공지능은 눈에 보이기도 하고, 눈에 보이지 않기도 한다. - 날씨, 환경도 인공지능에 속한다. - 자신 스스로 컨트롤을 해서 돌아가는 것들. - 만들어내는 시스템 중에 자동적으로 스케쥴링을 하며 돌아가는 모든 것이 인공지능. - 정해준 스케쥴에 따라 움직인다. - 유저가 조건을 달성하면 조건에 맞게 움직인다. - GTA의 경우 범죄 시스템의 단계에 따라 주위 환경이 변화함. 게임의 인공지능과 일반 인공지능의 차이 게임의 인공지능 - 유저.. 2023. 5. 16. 게임그래픽프로그래밍 10주차 - 도형 그리기와 칠하기 기본 도형 기본 도형의 종류 - 점 - 직선 (선분) - 삼각형 - 사각형 - 원 기본 도형 - 3D 그래픽스 프로그래밍에서 기본 도형은 복잡한 그래픽 모델들을 표현하기 위해서 필요한 기본 단위이다. - 대부분의 3D Graphic API에서 Point, Triangle, Line에 대한 기본 구현을 제공한다. - Triangle : 게임 프로그램에서 대중적인 3D 그래픽 표현 기본 단위. - Point : 포인트 클라우드를 통해서 3D 그래픽 표현을 진행. - 3D 오브젝트들은 삼각형으로 이루어져 있다. Triangle vs Point 게임 프로그래밍에서는 주로 전자를 사용한다. Point의 경우 AR에서 많이 사용한다. 점과 선 그리기 점의 정의 : 공간상에 위치한 한 지점 픽셀의 정의 : 디지털 이.. 2023. 5. 15. 이전 1 ··· 40 41 42 43 44 45 46 ··· 52 다음 728x90 반응형