{"product_id":"138171","title":"기초부터 배운다! 3D 게임 프로그래밍","description":"\u003ccenter\u003e\u003cdiv style=\"text-align:center\"\u003e\u003cimg src=\"https:\/\/tmgdisk01.cafe24.com\/images\/vs\/4172\/sv\/3jXPCfJejC99jW6L31i6SwVCpuYBuS.png?v=1765060921\" style=\"max-width:100%;max-height:10px\"\u003e\u003c\/div\u003e\u003c\/center\u003e\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\u003ccenter\u003e\n\u003cdiv style=\"width:95%\"\u003e\n\u003cdiv style=\"text-align:center;font-size:30px;font-weight:bolder;line-height:1.6em\"\u003e기초부터 배운다! 3D 게임 프로그래밍\u003c\/div\u003e\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\u003cdiv style=\"border-bottom:1px;border-bottom-style:dotted;border-color:;padding-bottom:20px\"\u003e\u003ccenter\u003e\u003ctable align=\"center\" width=\"100%\"\u003e\u003ctbody style=\"border:0px\"\u003e\n\u003ctr\u003e\u003ctd align=\"center\" style=\"line-height:1.2em;text-align:center;font-size:18px;color:black;font-weight:bold;padding-bottom:20px;\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\n\u003ctr\u003e\u003ctd style=\"text-align:center\"\u003e\u003cimg src=\"https:\/\/image.yes24.com\/goods\/161528917\/XL\" style=\"max-width:100%;height:auto\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\n\u003c\/tbody\u003e\u003c\/table\u003e\u003c\/center\u003e\u003c\/div\u003e\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\u003cdiv style=\"width:95%;{split_style6}padding-top:20px;padding-bottom:20px\"\u003e\n\u003cdiv style=\"text-align:left;font-size:16px;font-weight:bold;padding-bottom:20px\"\u003eDescription\u003c\/div\u003e\n\u003cdiv style=\"text-align:left;word-break:break-all;font-size:14px;line-height:1.6em;\"\u003e\n\u003cdiv\u003e \u003ch5\u003e\u003cb\u003e책소개\u003c\/b\u003e\u003c\/h5\u003e \u003c\/div\u003e \u003cdiv\u003e \u003cdiv\u003e \u003cdiv\u003e  이 책은 C++과 OpenGL을 이용하여 3D 렌더링의 원리를 배우고 실습해보는 책이다.\u003cbr\u003e\u003cbr\u003e폴리곤이 화면에 출력되는 원리, 게임 수학, 셰이더 프로그래밍 그리고 스플라인 기법을 배우면서 3D 렌더링이 어떤 요소들로 구성되어 있는지 파악할 수 있다.\u003cbr\u003e유니티나 언리얼과 같은 게임 엔진은 모두 OpenGL이나 DirectX같은 그래픽스 API를 사용하여 3D 폴리곤을 렌더링 한다.\u003cbr\u003e단순히 엔진만 사용하게 되면 이런 숨겨진 과정은 존재하는지조차 모를 수 있다.\u003cbr\u003e하지만 이런 기초 원리를 이해하고 나면 게임 엔진을 더 자유롭게 활용할 수 있게 된다.\u003cbr\u003e더 나아가 게임 엔진의 소스코드를 분석할 때도 훨씬 더 깊은 이해도를 갖게 될 수 있을 것이다.\u003cbr\u003e \u003c\/div\u003e \u003c\/div\u003e \u003cdiv\u003e \u003cul\u003e \u003cli\u003e 책의 일부 내용을 미리 읽어보실 수 있습니다.\u003cbr\u003e\u003cspan\u003e미리보기\u003c\/span\u003e\n\u003c\/li\u003e \u003c\/ul\u003e \u003c\/div\u003e \u003c\/div\u003e \u003cbr\u003e\u003cdiv\u003e \u003ch5\u003e\u003cb\u003e목차\u003c\/b\u003e\u003c\/h5\u003e \u003c\/div\u003e \u003cdiv\u003e \u003cdiv\u003e  ? Part 1.\u003cbr\u003e3D 렌더링 기초 지식\u003cbr\u003eCHAPTER 1.\u003cbr\u003eOpenGL 준비하기\u003cbr\u003eOpenGL이란?\u003cbr\u003e왜 OpenGL을 사용하는가?\u003cbr\u003e개발 환경 구성\u003cbr\u003e윈도우 만들기\u003cbr\u003e정리\u003cbr\u003e\u003cbr\u003eCHAPTER 2.\u003cbr\u003e삼각형 그리기\u003cbr\u003e기본 지식\u003cbr\u003e버텍스 버퍼\u003cbr\u003e인덱스 버퍼\u003cbr\u003e정리\u003cbr\u003e\u003cbr\u003eCHAPTER 3.\u003cbr\u003e색상, 텍스쳐 매핑\u003cbr\u003e폴리곤 색상 변경하기\u003cbr\u003e텍스쳐 매핑\u003cbr\u003e텍스쳐 합성\u003cbr\u003e정리\u003cbr\u003e\u003cbr\u003ePart 2.\u003cbr\u003e3D 렌더링 원리\u003cbr\u003eCHAPTER 4.\u003cbr\u003e변환\u003cbr\u003e이동, 스케일, 회전 행렬\u003cbr\u003e셰이더 프로그래밍 기초\u003cbr\u003e공간\u003cbr\u003e정리\u003cbr\u003e\u003cbr\u003eCHAPTER 5.\u003cbr\u003e기초 수학\u003cbr\u003e벡터\u003cbr\u003e벡터의 덧셈, 뺄셈, 곱셈, 내적, 외적\u003cbr\u003e삼각함수\u003cbr\u003e탄젠트, 사인, 코사인\u003cbr\u003e원과 삼각함수\u003cbr\u003e파이, 라디안\u003cbr\u003e정리\u003cbr\u003e\u003cbr\u003eCHAPTER 6.\u003cbr\u003e렌더링 라이브러리 제작\u003cbr\u003e클래스 구조\u003cbr\u003e게임 오브젝트\u003cbr\u003e카메라\u003cbr\u003e라이트\u003cbr\u003e씬\u003cbr\u003e메시, 머티리얼, 셰이더\u003cbr\u003eOBJ 파일 로드하기\u003cbr\u003e3D 씬 만들기\u003cbr\u003e정리\u003cbr\u003e\u003cbr\u003ePart 3.\u003cbr\u003e셰이더 프로그래밍과 곡선\u003cbr\u003eCHAPTER 7.\u003cbr\u003e셰이더 프로그래밍\u003cbr\u003e단색 셰이더\u003cbr\u003e조명 기법\u003cbr\u003e림 라이팅\u003cbr\u003e외곽선 만들기\u003cbr\u003e체형 조절하기\u003cbr\u003e정리\u003cbr\u003e\u003cbr\u003eCHAPTER 8.\u003cbr\u003e스플라인\u003cbr\u003e베지에 스플라인\u003cbr\u003e허밋 스플라인\u003cbr\u003e캣멀-롬 스플라인\u003cbr\u003e정리\u003cbr\u003e\u003cbr\u003e마치며\u003cbr\u003e참고자료 \u003c\/div\u003e \u003cdiv\u003e\u003c\/div\u003e \u003c\/div\u003e \u003cbr\u003e\u003cdiv\u003e \u003ch5\u003e\u003cb\u003e책 속으로\u003c\/b\u003e\u003c\/h5\u003e \u003c\/div\u003e \u003cdiv\u003e \u003cdiv\u003e \u003cdiv\u003e  수많은 버텍스의 행렬 곱셈 연산은 CPU보다는 그래픽 카드에 존재하는 GPU에서 병렬 처리하여 수행하는 것이 더 좋은 성능을 가져옵니다.\u003cbr\u003e따라서 GPU가 해석할 수 있는 형태로 프로그램을 작성해야 할 필요성이 생깁니다.\u003cbr\u003e--- p.109\u003cbr\u003e\u003cbr\u003e이번에도 3.14가 나왔습니다.\u003cbr\u003e원은 크기가 크든 작든 모두 닮은 도형이기 때문에 지름과 둘레의 비율은 항상 같은 값이 나옵니다.\u003cbr\u003e이 비율을 좀 어려운 말로 원주율이라고 부르며 파이(π)라고 표시합니다.\u003cbr\u003e이 원주율은 원의 크기에 상관없이 항상 일정하다는 것을 알 수 있습니다.\u003cbr\u003e주변에 있는 동그란 물체의 지름과 둘레를 재 본다면 어떤 크기의 물체이던지 그 비율은 항상 3.14가 나올 것입니다.\u003cbr\u003e--- p.190\u003cbr\u003e\u003cbr\u003e이렇게 t를 0부터 1까지 적절히 증가시키며 반복 계산한다면 곡선을 만들기 위한 전체 좌표를 얻을 수 있게 될 것입니다.\u003cbr\u003et의 증가 범위가 작을수록 계산된 점의 개수도 많아져 더 정밀한 곡선이 그려지게 됩니다.\u003cbr\u003e\n\u003c\/div\u003e \u003cdiv\u003e--- p.269\u003c\/div\u003e \u003c\/div\u003e \u003cdiv\u003e\u003c\/div\u003e \u003c\/div\u003e \u003cbr\u003e\u003cdiv\u003e \u003ch5\u003e\u003cb\u003e출판사 리뷰\u003c\/b\u003e\u003c\/h5\u003e \u003c\/div\u003e \u003cdiv\u003e \u003cdiv\u003e  실무에서 3D 게임 클라이언트 프로그래밍을 하다 보면 유니티나 언리얼 같은 게임 엔진을 주로 사용하여 게임을 만들게 됩니다.\u003cbr\u003e이런 엔진을 잘 다루는 것도 중요하지만, 결국 엔진을 구성하는 원리를 확실히 이해하는 것이 엔진을 더 잘 사용할 수 있는 길입니다.\u003cbr\u003e\u003cbr\u003e이 책은 화려한 엔진 내부에 감추어져 있는 3D 렌더링의 원리를 C++과 OpenGL만을 이용하여 재구성해 보는 책입니다.\u003cbr\u003e바이브코딩으로 원하는 소프트웨어를 만들어내는 요즘 시대에 비추어 보면 조금은 불편하고 느린 방법일 수 있지만 기초 과학의 중요성은 엔지니어라면 그 누구도 부정하지 못할 것입니다.\u003cbr\u003e\u003cbr\u003e이 책의 장점은 쉽다는 것입니다.\u003cbr\u003e전문적인 3D 배경 지식이 없다 하더라도 C++문법만 알고 있다면 책의 내용을 따라가는데 큰 무리가 없습니다.\u003cbr\u003e\u003cbr\u003e또한 복잡해 보였던 벡터, 행렬 같은 게임 수학도 아주 단순한 원리부터 시작해 실제 활용되는 부분까지 단계적으로 설명해 나갑니다.\u003cbr\u003e이 과정을 거치면서 지루하고 재미없던 게임 수학에 대해 나도 한 번 해볼 수 있겠다는 자신감이 생깁니다.\u003cbr\u003e\u003cbr\u003e마지막으로 셰이더 프로그래밍과 스플라인 기법을 배우면서 3D 프로그래밍의 고급 기술까지 맛볼 수 있습니다.\u003cbr\u003e비록 아주 깊은 부분까지 들어가지는 않지만 어렵고 생소한 분야에 자연스럽게 발을 들여놓게 해줍니다.\u003cbr\u003e\u003cbr\u003e그동안 복잡하고 수식이 가득한 3D 게임 프로그래밍 서적에 지치신 분들에게 이 책을 추천합니다.\u003cbr\u003e \u003c\/div\u003e \u003cdiv\u003e\u003c\/div\u003e \u003c\/div\u003e \u003c\/div\u003e\n\u003c\/div\u003e\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\u003cdiv style=\"width:95%;padding-top:20px;padding-bottom:20px\"\u003e\n\u003cdiv style=\"text-align:left;font-size:16px;font-weight:bold;padding-bottom:20px\"\u003eGOODS SPECIFICS\u003c\/div\u003e\n\u003cdiv style=\"text-align:left;font-size:14px;line-height:1.6em;\"\u003e\n\u003cdiv style=\"width:100%;margin-bottom:5px;line-height:1.6em;font-size:14px\"\u003e- \u003cstrong\u003e발행일 : \u003c\/strong\u003e2025년 11월 17일\u003c\/div\u003e\n\u003cdiv style=\"width:100%;margin-bottom:5px;line-height:1.6em;font-size:14px\"\u003e- \u003cstrong\u003e쪽수, 무게, 크기 : \u003c\/strong\u003e288쪽 | 542g | 183*235*12mm\u003c\/div\u003e\n\u003cdiv style=\"width:100%;margin-bottom:5px;line-height:1.6em;font-size:14px\"\u003e- \u003cstrong\u003eISBN13 : \u003c\/strong\u003e9791199483309\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003ccenter\u003e\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\u003cspan\u003e\u003c\/span\u003e\n\u003c\/center\u003e\n\u003c\/center\u003e","brand":"LIBRAIRIE COREENNE","offers":[{"title":"Default Title","offer_id":43893212119082,"sku":"138171","price":31.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0683\/2750\/5962\/files\/89eac8cdae6b565c086728d8b8f52734.jpg?v=1765391993","url":"https:\/\/librairie.coreenne.fr\/ko\/products\/138171","provider":"LIBRAIRIE COREENNE","version":"1.0","type":"link"}