Foundations of Game Engine Development, Volume 1: Mathematics
کتاب Foundations of Game Engine Development, Volume 1: Mathematics (مبانی توسعه موتور بازی، جلد اول: ریاضیات)، مقدمه ای مفصل از ریاضیات مورد استفاده توسط برنامه نویسان موتورهای بازی مدرن را ارائه میدهد. سه فصل اول کتاب، به شکلی متداول همچون بسیاری از کتابهای دیگر در این زمینه ها، مباحث جبر خطی (بردارها و ماتریس ها)، تبدیلها و هندسه را شامل میشوند. در طول مسیر، ما چندین بار تلاش خواهیم کرد تا مباحثی از یک مدل ریاضی آشکارا ظریفتر و صحیحتر را که در فصل چهارم ظاهر خواهند شد، را از پیش مرور کنیم. یک چهارم آخر کتاب تلاش دارد تا با معرفی جبر گراسمن و جبر هندسی، درک عمیقتری از مفاهیمی که پیشتر مورد بحث قرار گرفته بودند را ارائه دهد. دانش این شاخههای ریاضیات همچنین به ما این امکان را میدهند تا در سه فصل اول کتاب شهود را منتقل کرده و جزئیاتی را ارائه دهیم که یافتن آن در جاهای دیگر دشوار است.
یکی از اهداف این کتاب، ارائه توصیههای مهندسی کاربردی است. این امر از طریق لیستهای کد کوتاه بسیاری که در کل کتاب نشان داده شده اند انجام شده است و نشان میدهند که چگونه ریاضیاتی که ما در مورد آنها بحث میکنیم، در موتورهای بازی واقعی پیاده سازی شده اند. برای جلوگیری از پر کردن صفحات با لیست کدها که به طرز آشکاری زائد هستند، ساختمان دادهها یا توابعی که در جاهای مختلفی به آنها اشاره میشوند، عمداً کنار گذاشته شده اند. این تنها زمانی اتفاق میافتد که شکل و رفتار کد از قلم افتاده واضح باشد. به عنوان مثال، فصل 1 شامل لیست کدهایی است که ساختمان دادهها و عملیات مربوط به یک بردار سه بعدی را تعریف میکنند، اما کد مشابهی برای یک بردار چهار بعدی نشان داده نشده است، حتی اگر که توسط لیستهای کد دیگر در ادامه کتاب استفاده شده باشند، زیرا تا حد زیادی یکسان بوده اند.
ما فرض کرده ایم که خواننده درک خوبی از مثلثات پایه، دانش کار با زبان ++C و آشنایی نسبی با اعداد اعشاری استاندارد دارد. کمی حساب در فصل 3 آمده است، اما درک کامل این موضوع خاص برای بقیه کتاب ضروری نیست. خوانندگان سطح بالا که دانش کاملی از جبر خطی دارند، ممکن است که بخواهند از بسیاری از مطالب دو فصل اول بگذرند. با این حال ما به تمام خوانندگان توصیه میکنیم که قبل از رفتن به سراغ فصل آخر، نگاهی به فصل ۳ بیندازند، چرا که فصل ۴ فرض کرده است که با علامت گذاری و جزئیات مفهومی که در فصل ۳ مورد بحث قرار گرفته اند آشنایی دارید. این کتاب اولین جلد از مجموعه ای است که طیف گسترده ای از موضوعات مربوط به توسعه موتور بازی را پوشش میدهد.