이 책의 기원
2006 년부터 우리는 OGRE3D 의 중국어 공동체를 설립하여 열렬한 친구들의 도움을 받아 OGRE 3D 관련 문서 (OGRE 3D 브로셔, 기본 자습서, 중급 자습서, 관련 문장 시리즈 포함) 를 많이 번역했습니다. 그래서 오늘 제가 OGRE 3D 에 대한 책을 처음부터 쓰려고 할 때, 대부분의 지식은 이미 인터넷에서 찾아 한 권 더 만들 수 있다는 것을 알게 되었습니다.
나는 절대 위험을 무릅쓰고 이리저리 모여서' 학술부패' 의 문집을 여러분께 보여 드릴 엄두가 나지 않는다. 인터넷에서 기존 지식을 반복하는 대신, 코드부터 시작하여 OGRE 3D 엔진을 학습한 후 게임 개발 프레임워크를 통해 전체 게임을 어떻게 더 완성할 수 있는지 설명할 수 있습니다. (윌리엄 셰익스피어, Northern Exposure (미국 TV 드라마), 게임명언)
이 책은 독자에게 그래픽 엔진의 기초를 알려 주는 것이 아니라, 그래픽 엔진을 이해한 후 완전한 게임을 완성하기 위해 또 어떤 도구가 부족한지 독자에게 알려 주고 싶어 한다. (윌리엄 셰익스피어, 그래픽 엔진, 그래픽 엔진, 그래픽 엔진, 그래픽 엔진, 그래픽 엔진, 그래픽 엔진) 이 책은 식인마 3D 를 기반으로 한 완전한 게임을 개발하는 방법에 대해 더 알고 싶은 친구를 위한 책입니다.
우리는 CD 에' PRO OGRE 3D 프로그래밍' 중국어 버전의 다운로드 주소를 제공하여 OGRE 3D 에 대한 지식과 세부 사항을 상세히 소개했다. 독자들이 이 이 두 권의 책을 함께 읽을 수 있기를 바랍니다. 여기서 나는 나의 편집인 원여사에게 감사해야 한다. 그녀의 긍정으로 나는 비로소 이 책을 완성할 자신이 있기 때문이다.
위 포지셔닝에 따라 이 책은 OGRE 3D 게임 개발을 배우는 두 번째 책이어야 하며, 독자가 엔진 연구자에서 실용적인 게임 개발자가 될 수 있도록 도와야 한다. 독자들은 OGRE 3D 그래픽 엔진을 접한 적이 없을 수도 있지만 서점에서 우연히 이 책을 보고 OGRE 3D 개발팀에 가입할지 여부를 결정하고 있다. 이 책 1 장은 독자들이 OGRE 3D 그래픽 엔진의 발전 역사와 관련 자원을 거시적으로 설명하는 데 도움이 될 것이다. 우리는 독자들이 서점의 책꽂이 옆에 서서 OGRE 3D 를 배울 필요가 있는지, 이 책에 비용을 지불할 필요가 있는지를 결정할 수 있도록 간단명료하게 말하려고 노력한다. 관심 있는 게임 개발 도구를 찾으면 이 책은 언젠가는' 눈 속에 탄소 보내기' 효과를 가져다 줄 것이다.
이 책의 독서 가이드
이 책의 가장 큰 특징은 코드에 의지하여 진도를 추진하는 것이다. 2 장부터 거의 모든 과목에는 독자가 참고할 수 있는 관련 코드공학이 있어 독자가 이 책에서 소개하는 내용을 더 직관적으로 이해할 수 있게 해 준다. (데이비드 아셀, Northern Exposure (미국 TV 드라마), 공부명언)
인터넷 행동에 대한 연구에 따르면 2 1 일을 고집한다면 새로운 습관을 바꾸거나 형성할 가능성이 높다. 나는 이 방면의 전문가는 아니지만, 나는 여전히' 2 1 일 마스터 XXX' 의 관례에 따라 이 장의 과정을 3 주로 나누었다. 매주 전체 프로젝트를 설명하여 적어도 독자들이 읽기 시간을 쉽게 계획할 수 있도록 한다.
매주 1 일 (일요일) 이번 주 과정의 구체적인 내용과 배경 지식을 설명합니다. 다음 월요일부터 토요일까지의 과정에서는 전체 프로젝트가 여섯 부분으로 분해되어 점진적으로 보완되고 설명된다.
OGRE 3D 는 자신을 순수 그래픽 엔진으로 포지셔닝합니다. 우수한 독립성의 부작용은 완전한 게임을 완성해야 한다면 식인마 3D 로는 충분하지 않다는 것이다. 오디오 엔진, 네트워크 엔진, 입력 엔진과 같은 기능 라이브러리와 효율적이고 안정적이며 강력한 프레임워크도 필요합니다. 독자가 완전한 게임을 해본 적이 있든 없든 간에, 좋은 틀이 한 게임에 얼마나 중요한지 느낄 수 있어야 한다. 이 책은 이 방면의 지식을 중점적으로 소개할 것이다. 2 장 1 주 과정에서는 OGRE 3D 데모에서 독자가 사용하는 프레임워크를 소개하고' 쥐 치는' 게임을 완성했습니다. 이 프레임워크는 상업 게임을 완성할 만큼 강력하지는 않지만, 적어도 독자가 게임 개발에서 프레임워크의 중요한 역할을 이해하는 데 도움이 될 수 있습니다.
대량의 번역 문서 외에도 OGRE 3D 중국어 커뮤니티는 OGRE 3D 기반 비즈니스 게임 개발 프레임워크 Orz (오픈 리소스 영역) 를 개발하고 개선하는 중요한 작업을 하고 있습니다. 오픈 소스를 발표한 1 년 동안 우리는 많은 업계 친구들, 심지어 해협 양안의 친구들로부터 긍정과 지지를 받았다.
수업 둘째 주에 OGRE 3D demo 프레임워크 대신 Orz 프레임워크를 사용하여 클래식 게임' 우주 침입자' 를 실현했습니다. 이번 주 과정에서는 Orz 프레임워크의 고급 기능을 과도하게 사용하지 않고 빠르게 개발된 방법으로 게임 프로토타입을 완성했습니다. 이를 통해 독자는 복잡한 배경 지식을 파악하지 않고도 프레임워크를 통해 게임의 개발 속도와 품질을 향상시키는 방법을 이해할 수 있습니다. Orz 는 실제 비즈니스 어플리케이션에서 생산성을 크게 높였습니다.
독자가 다른 회사의 내부 개발 프레임워크 중 일부를 접할 경우 Orz 는 이러한 상업용 제품보다 나쁘지 않으며 여러 가지 면에서 다른 제품보다 낫다는 것을 알 수 있습니다.
Orz 프레임 워크에는 자체 야망이 있습니다. 독자가 개발 효율성을 높이는 데 도움이 되는 도구일 뿐만 아니라 프레임워크 설계에서' 이상적인 분산 개발' 의 게임 설계를 위한 방법론 기반을 제공합니다. Dell 은 메시지 시스템, 플러그인 시스템, ID 관리자 등의 강력한 도구를 사용하여 개발자 간의 통신 비용을 최소화하고 개발자가 최소한의 조정 비용으로 방대한 게임을 개발할 수 있는 기반을 제공합니다.
이러한 이념을 바탕으로 OGRE 3D 중국어 커뮤니티는 일부 개발자를 조직하여 코드를 완성하여 이종격투기 클럽과 같은 게임을 실현하고 서로 교류하지 않았다. (윌리엄 셰익스피어, Northern Exposure (미국 TV 드라마), 스포츠명언) 따라서 세 번째 주 과정에서는 이 실제 활동을 배경으로' 이상적인 분산 개발' 모델을 사용하여 게임을 완성하는 방법을 설명합니다. Orz 의 다양한 고급 기능 및 도구를 사용하여 Orz 게임 개발 프레임워크의 "디저트" 를 보다 높은 수준에서 살펴봅니다.
이' 디저트' 들이 독자의 입맛을 사로잡았는지 모르겠다. 그렇지 않다면 다음 3 장에서' 성찬' 을 준비하며 Orz 프레임워크의 사용 세부 사항을 상세히 소개했다.
Orz 는 프레임 워크의 설계에서 가능한 한 MVC 패턴을 따르며, 좋은 디자인은 단순한 프레임 워크와 풍부한 도구와 같다고 생각합니다. 프레임워크를 설계하는 동안 관련 장의 일부 게임 개발 모듈을 독자가 선택적으로 사용할 수 있는 별도의 도구로 해석하여 게임 개발 프로세스를 단순화할 수 있도록 했습니다. 독자가 처음부터 게임을 만들고 완전한 Orz 프레임워크를 도입할 계획이라면 간단한 프레임워크에 대한 자세한 소개도 있습니다. 물론 이전 강좌와 마찬가지로 Orz 프레임워크의 모든 코드뿐만 아니라 각 강좌에 해당하는 루틴도 제공합니다.
저는 중국에서 자란 많은 게임 개발자들이 독립 실행형' 러시아 벽돌' 이 아닌 온라인 MMO 게임을 원하고 있다고 믿습니다.
곰 선생의 사심없는 헌신에 감사드리며, Orz 에는 확실히 이런 독립된 게임 개발망인 OrzAsio 가 있습니다. OrzAsio 는 효율적이고 확장 가능한 플랫폼 간 비동기 네트워크 라이브러리로서 효율적이고 안정적이며 유연한 네트워크 프로그램 개발 구성 요소를 사용자에게 제공하여 효율적이고 유연한 네트워크 프로그램을 쉽게 구축할 수 있도록 설계되었습니다. OrzAsio 의 중요한 목표 중 하나는 처리량이 높고 부하가 많은 온라인 게임 서버 요구 사항을 충족하기 위해 대규모 멀티플레이어 온라인 게임을 위한 네트워크 모듈을 개발하는 것입니다. OrzAsio 의 네트워크 기반은 boost::asio 를 기반으로 합니다. 효율적이고 확장 가능하며 플랫폼 간 네트워크 라이브러리입니다. 만약 당신이 우리 커뮤니티에 관심이 있다면, 독자들은 곰 씨가 CORBA 사양에 기반한 온라인 게임 네트워크 개발 아키텍처를 완성하고 있다는 것을 알게 될 것입니다.
OrzAsio network library 및 도구 Toolkit_Plus 에 의존하는 설명서는 이 책과 함께 제공되는 CD 에서 제공됩니다.
독자들이 우리가 정성껏 준비한 저녁을 좋아하길 바랍니다. 만약 네가 즐겁게 그것을 즐길 수 있다면, 그것은 우리의 영광이 될 것이다. 하지만 완전한 게임을 만드는 것은 책 한 권으로 완전히 설명할 수 있는 것이 아니기 때문에, 우리는 이 책의 마지막에 천국을 만드는 지도를 제공하였다. (윌리엄 셰익스피어, 햄릿, 독서명언) 이 책의 부록에는 Boost 라이브러리, 디자인 패턴 및 OGRE 3D 에 대한 간략한 개요가 있습니다.
감사를 표하다
할리우드 오스카의 수상자는 가장 중요한 때에 감사의 말을 할 것이다. 우리가 말하고 싶은 것은 다음과 같다.
나와 이전의 사장과 동료들의 지지와 격려에 감사드립니다. 물론, 내가 근무 시간에 글을 쓰지 않았고, 업무 진도를 늦추지 않았다고 믿어주세요.
OGRE 3D 커뮤니티에서 이렇게 좋은 소프트웨어를 제공해 주셔서 감사합니다. 엔진의 핵심 개발자들은 대부분 중국어를 이해하지 못하지만, 이 책에서 나는 그들에게 진심으로 감사해야 한다.
OGRE 3D 엔진의 중국 보급을 위해 노력한 분들께 감사드립니다. 미가의 게임 개발팀, 성숭산 선생님, 엄첸, 사건화 씨가 당신들의 명예를 함께 나누도록 하겠습니다.
곰 씨가 인터넷 라이브러리 및 해당 문서를 기증해 주셔서 감사합니다. Mega 게임 개발팀 임효우 씨가 OGRE 사용자 가이드의 일부 장을 허가해 주셔서 감사합니다. 감사합니다.' 부록 C', 형제들에게 오타를 발견해 주셔서 감사합니다.
나에 대한 가족들의 관심에 감사드리며, 부모님의 제멋대로의 포용에 감사드립니다. 여자 친구의 지원 덕분에 그녀는 내가 매일 외지에서 원고를 쓰는 것을 받아들였고, 그들에게 전화를 하지 않았다.
만약 우리 가족이 이 책을 읽을 줄 몰랐다면, 지금 여기서 본 독자들에게 먼저 감사를 표하겠습니다. (데이비드 아셀, Northern Exposure (미국 TV 드라마), 가족명언) 만약 네가 이 책을 샀다면, 너는 이미 경제적으로 나를 도왔을 것이다. 주변 친구에게 이 책을 읽게 하면 꿈속에서 나를 도왔다.
이 꿈은:
텔레비전을 보는 모든 사람이 게임을 개발하게 하다.