در اکتبر 1997، دو کارمند در استودیو فرشته پیامی را برای خود بر روی دیوار گذاشتند: «ما یک بازی را در 1 سپتامبر 1999 منتشر خواهیم کرد که مردم آن را دوست دارند. ما می دانیم که آنها آن را دوست دارند زیرا تا اول ژانویه 1، دو میلیون نسخه از آن فروخته خواهد شد.
اندکی بعد، کپکام استودیو فرشته را برای پورت انتخاب کرد رزیدنت 2 شر به نینتندو 64. مدیر پروژه، کریس فودور و برنامه نویس اصلی جیمی برایانت، این وظیفه را بر عهده گرفتند و شروع به ایجاد مقدمات و جمع آوری تیم کردند. در حالی که هر دو تجربه قبلی با نینتندو 64 داشتند، این پروژه جاه طلبانه و چالش برانگیز به سرعت نشان داد که آنها واقعاً نمی دانستند که N64 چگونه کار می کند. مطمئناً، آن یک CPU و یک پردازنده هندسی، و یک تراشه گرافیکی، و آتش از اینجا، اینجا و آنجا خارج میشود، اما دقیقاً در چه ارتفاعی ماسکهای اکسیژن پایین میآیند یا باید به صورت دستی توسط خلبان فعال شوند؟ در چند ماه بعد، سیستم عامل بازسازی شد، واحدهای برداری (بله، N64 یک واحد برداری دارد) آزاد شدند، و N64 مجذوب اسرار خود شد.
اصلی رزیدنت 2 شر برای پلی استیشن شامل دو سی دی بود. باید آن را روی یک کارتریج میآوریم. اما این فقط یک پورت است، درست است؟ در دستان ما یک بازی کلاسیک با طراحی عالی، تمام هنر انجام شده و هوش مصنوعی تنظیم شده و در جای خود داشتیم. با این حال، برای اجرای آن بر روی N64 به برنامهنویسی بسیار هوشمندانه نیاز داشت. این وظیفه ای بود که گروه های خبری، وب سایت های بازی و شاید حتی ناشر در انجام آن تردید داشتند.
آنچه درست رفت
1. محیط کار و تیم
با توجه به اینکه این یک پروژه بسیار فنی بود، بسیار مهم بود که ما یک تیم برنامه نویسی قوی و منسجم داشته باشیم. با ورود الکس ایراث و سپس من در دسامبر 1998، پروژه به سرعت افزایش یافت. الکس انبوهی از تجربه، فداکاری و کار سخت را به ارمغان آورد. من که تازه از دانشگاه فارغ التحصیل شده بودم، وظیفه انجام ویدیوی تمام حرکتی را به عهده گرفتم. (برای جزئیات در مورد چگونگی انجام این موفقیت، مقاله من "ماموریت: فشرده سازی - دستیابی به ویدیوی تمام حرکتی در نینتندو 64" را در شماره آتی سپتامبر 2000 بررسی کنید. توسعه دهنده بازی.کریس فودور و جیمی برایانت رهبری مشترک داشتند. گاهی اوقات این منجر به "آشپزهای بیش از حد در آشپزخانه" می شد، اما اغلب آنها مکمل یکدیگر بودند و رهبری موثر را در طول مدت پروژه ارائه می کردند. کن کامدار در پایان پروژه وارد صحنه شد و حس آرامش و آرامش (و همچنین مهارت های برنامه نویسی خود را) در زمان مناسب به ارمغان آورد. در این مرحله استرالیا، آلمان، انگلیس، ایران و آمریکا نماینده داشتیم. شما آن را انتخاب نمی کردید، اما این ترکیب غیرعادی سطحی از هم افزایی داشت که به ندرت در بسیاری از تیم های برنامه نویسی یافت می شد.
اسکرین شات از رزیدنت 2 شر برای نینتندو 64 |
ما برنامه نویسان میزهایمان را به صورت نیم دایره و رو به بیرون چیده بودیم، اما اینطور شروع نشده بود. در ابتدا، کریس دفتر خود را داشت، و الکس و جیمی کاملاً از هم دور از هم نشسته بودند و قلمرو خود را مشخص می کردند. با این حال، یک ماه پس از پروژه، ما از برنامه بسیار عقب بودیم. ما نیاز داشتیم که در راس همه چیز باشیم و خیلی بیشتر با هم ارتباط برقرار کنیم.
تصمیم گرفتیم کنار هم بنشینیم. وقتی من و بعداً کن رسیدیم، نیم دایره را بزرگ کردند. در مورد حالات مغز و منطقه بسیار نوشته شده است، و همانطور که جیمی به یاد می آورد، "الکس گاهی اوقات مرا با تمام توپ هایم در هوا قطع می کرد تا یک جوک واقعا احمقانه به من بگوید، اما من تضمین می کنم که زمان از دست رفته در مقایسه با بهره وری از حضور همه در آنجا به دست آورید». در ابتدای پروژه سوالات زیادی مطرح می شود و تصمیماتی باید گرفته شود. همه میتوانستند به صحبتها گوش دهند، حتی اگر در ابتدا بخشی از بحث نبودند، و غالباً شخصی برمیگشت و مروارید حکمت یا بینش جدیدی را ارائه میداد که به راهحل بهتری منجر میشد. در اواسط پروژه، بهتر بودیم که در افکار عمیق کسی را قطع نکنیم. در پایان، فکر میکنم ماهها صرفهجویی کردیم: "قطع شد" [نکته ها]. [سر را برمیگرداند] "اوه، بله، این اشکال لیکر است - وقتی این کار را انجام می دهد دکمه B را فشار ندهید [نکته ها] - و من تا ده دقیقه دیگر بررسی میکنم.»
ساعات طولانی و سخت یک اعتماد متقابل قوی را در بین گروه ایجاد کرد. طولی نکشید که همه ما بدون نظارت مشغول انجام وظایف خود بودیم. این اجازه می دهد ساعت های انعطاف پذیری را بدون به خطر انداختن توان کار انجام دهید.
2. میخکوب کردن اولین نقطه عطف
اگر شرکت شما عناوین خود را منتشر نمی کند، پس شما یک تولید کننده خارجی در ناشر خود دارید. وقتی تولیدکنندگان برای نوشیدن آبجو بیرون میروند، در مورد اینکه توسعهدهندگانشان چقدر دیر کردهاند صحبت میکنند و در مورد اینکه چگونه آنها را در صف قرار دهند صحبت میکنند. بسیاری از تولیدکنندگان فکر میکنند که توسعهدهندگان سرنخی در مورد ضربالاجلهای بازاریابی، بودجهها، و همه چیزهای دیگری که ما واقعاً از آنها اطلاعی نداریم، ندارند. ما به زبان دیگری صحبت می کنیم. اما اگر به اولین نقطه عطف خود دست پیدا کنید، متفاوت هستید.
اول، تهیه کننده شما داستان متفاوتی برای گفتن به رئیس و همتایانش دارد. دوم، شما مبنایی را برای برقراری ارتباط ایجاد کرده اید - نشان داده اید که معنی کلمه "مهلت" را می دانید. پس از یادگیری اولین کلمه در واژگان یک تهیه کننده، متوجه خواهید شد که آنها آماده بحث درباره ایده های پیچیده تر هستند، حتی در ضرب الاجل های آینده انعطاف پذیر هستند. در نهایت، شما نزد تهیه کننده و ناشر خود اعتبار دارید. اگر اولین نقطه عطف خود را بدون مراقبت از دست بدهید، تهیه کننده شما را برای همیشه در سطل «بچه نشستن/ببین صحبت کردن» قرار خواهد داد.
3. عدم وابستگی مذهبی
هرگز ایده خوبی نیست که بیش از حد به کاری که انجام داده اید وابسته شوید، خواه این یک فرآیند تجاری، یک الگوریتم یا فقط یک پیاده سازی باشد. اگر چیزی کار نمی کند، آن را انجام ندهید. اگر چیزی جواب داد و دیگر جواب نداد، آن را رها کنید و چیز جدیدی پیدا کنید.
ما این اصل را در ارتباطات گروهی خود اعمال کردیم. ما با استفاده از Microsoft Team Manager 97 شروع کردیم. این حتی یک ماه هم طول نکشید. سپس میزهایمان را به نیم دایره منتقل کردیم، در حالی که همه نزدیک و در یک اتاق بودند. این خیلی خوب کار کرد و ما آن را حفظ کردیم.
بعد، جیمی تصمیم گرفت ببیند اگر همه مجبور شوند از یک ویرایشگر استفاده کنند، با انتخاب های صفحه کلید یکسان، چه اتفاقی می افتد. نتیجه این بود که ویرایشگر جدید را در یک روز یاد میگیرید، در یک هفته مسلط هستید، و هرکسی میتواند پشت دستگاه شما بنشیند و از آن استفاده کند، انگار که خودش است.
ما از سیستم وظایف Outlook استفاده کردیم. لیست وظایف به ظاهر ساده Outlook می تواند از ایمیل برای همگام نگه داشتن وظایف همه استفاده کند. این چند ماه خیلی خوب کار کرد اما بعد از مدتی کمتر از آن استفاده کردیم. این به این دلیل بود که در پایان پروژه، به سادگی یک لیست کامل از کارهای بسیار شناخته شده وجود داشت که باید انجام می شد. ما یک صفحه نمایش بسیار بصری را امتحان کردیم، با ساختن تکههای کاغذ برای هر مورد و چسباندن آنها به دیوار به نام همه. و آنجا ماندند، تقریباً دست نخورده، تا روزی که بازی را منتشر کردیم. آنها با صفحات گسترده اکسل جایگزین شدند.
وقتی نوبت به برنامه نویسی رسید، این نگرش برای توسعه سیستم FMV ما معجزه کرد. تلاش بیوقفه همه چیز، اغلب چندین بار (بهعنوان بهبود کیفیت یا سرعت باعث شد رویکردی که قبلاً رد شده بود دوباره قابل اجرا باشد)، یک نتیجه عالی و اولین صنعت را برای ما به ارمغان آورد - ویدیوی با کیفیت بالا در یک کنسول مبتنی بر کارتریج.
ما همچنین ارزش نوشتن کد برای کار را یاد گرفتیم، نه اینکه این کار در آینده چه خواهد بود. امیدوارم اکثر برنامه نویسان این را بدیهی بدانند، اما بسیاری از ما (از جمله من زمانی) در سرزمین C++ گم شده ایم. مزایای زیادی برای C++ وجود دارد، اما بسیاری از آنها به دلایل عملکرد و اندازه در یک کنسول قدیمی قابل اجرا نیستند. هنگام نوشتن کدهای شی گرا، بسیار آسان است که در دام تلاش برای طراحی حتی یک سیستم معقول بیفتید. اذیت نکن برای بازنویسی همه چیز آماده باشید. ممکن است بتوانید بخشی از کد را سه برابر سریعتر از زمانی که برای طراحی یک سلسله مراتب کلاس کامل نیاز دارد، بازنویسی کنید. نکته اصلی این است که شما نباید به چیزی که دارید وابسته باشید. آماده باشید که آن را دور بیندازید و چیز دیگری را امتحان کنید.
4. استفاده از یک برنامه و برنامه دقیق
از ابتدا، RE2 یک برنامه واضح و دقیق از آنچه که دقیقاً مورد نیاز است، به جزئیات بسیار دقیق تقسیم شده بود. با این اطلاعات، تهیهکننده توانمند ما، استوارت اسپیلکین، توانست وظایف پروژه و تخصیص منابع را بهطور دقیق برنامهریزی کند (استوارت در مقابله با مشکلات خارجی نقش اساسی داشت، که به ما امکان میداد روی توسعه تمرکز کنیم و همیشه پروژه را به اتمام نزدیکتر میکردیم). من نمی توانم اهمیت یک طرح دقیق را اغراق کنم. این شما را وادار می کند تا بررسی کنید و اغلب کشف کنید که واقعاً چه کاری باید انجام شود و به شما امکان می دهد برای آن برنامه ریزی کنید. شما نمی توانید جزئیات زیادی داشته باشید. مطمئناً برنامه بلندپروازانه ای بود، اما قابل دستیابی بود - که آن را هم سخت و هم ارزشمند می کرد.
ما ویژگی ها را اولویت بندی کردیم. با پایان یافتن ضرب الاجل، ما بی رحمانه فقط روی ویژگی های اساسی و استراتژیک کار کردیم. گهگاه بحث هایی در مورد اینکه چه ویژگی هایی لازم است و چه ویژگی هایی لازم نیست وجود دارد، اما این نگرش تضمین می کند که ما به برنامه پایبند بوده و پروژه را به سرانجام برسانیم. ما میخواستیم بازیمان عالی باشد، اما باید عرضه میشد. کاری را که برای بیرون آوردن آن از در لازم است انجام دهید، سپس تمام کارهایی را که برای آنها وقت دارید انجام دهید.
ما با درخواستهای ناشر برای افزودن ویژگیهای جدید، بهویژه در اواخر پروژه، با جدیت برخورد کردیم. بهجای حمله داخلی «خزش ویژگیها»، اینها از بیرون آمدند. هر بار که یک ویژگی جدید پیشنهاد میشد، بررسی میکردیم که برای پیادهسازی آن چه چیزی لازم است و گزارش صادقانهای از آنچه برای پیادهسازی آن از نظر منابع لازم است ارائه میکنیم. به عنوان مثال، ما تخمین زدیم که با یک برنامه نویس تمام وقت اضافی، قطعاً می توانیم به وظیفه A، احتمالاً وظیفه B (80 درصد) و شاید وظیفه C (20 درصد) برسیم. سپس مشتری تمام اطلاعات مورد نیاز برای انتخاب را داشت و اغلب اوقات "نه" را انتخاب می کرد.
مقابله با این فشارهای اضافی می تواند استرس زا باشد و هر بار شما را از کارتان دور می کند. با این حال، می توانید با بررسی منطقی کارهایی که باید انجام شود و اجرای آن ویژگی جدید به چه چیزی نیاز دارد، برنامه و بودجه پروژه خود را ذخیره کنید.
5. به حداکثر رساندن استفاده مجدد
با حجم عظیمی از دارایی های ارائه شده توسط نسخه PSX، تجزیه و تحلیل هر نوع داده (جنگ های دوبعدی، داده های برخورد و غیره) و پیاده سازی خط لوله ای که دارایی های خاص PSX را به چیزی تبدیل می کند بسیار منطقی تر است. می تواند در N2 بخواند و از آن استفاده کند. از آنجایی که این یک پورت بود، میتوانیم مطمئن باشیم که اگر صرفاً بهصورت دستهای آنها را به طور کامل تبدیل کنیم، به جای اینکه تک تک آنها را بهصورت جداگانه لمس کنیم، میتوانیم مطمئن باشیم که تمام قطعات مورد نیاز خود را به دست میآوریم و در مقادیر بسیار زیادی صرفهجویی میکنیم. زمان از این طریق چند روز طول کشید تا کدی بنویسیم که تمام اسپرایتهای دوبعدی را به فرمت مورد نیاز ما تبدیل کند، اما برای یک هنرمند زمان زیادی طول میکشد تا هزاران اسپرایت را با دست لمس کند.
در صورت امکان، روالها و عملکردهای سختافزاری خاص PSX را برای دستیابی به نتایج مشابه در N64 تقلید کردیم و استفاده مجدد از کد منبع موجود را به حداکثر رساندیم.
منبع: https://www.gamasutra.com/view/feature/131556/postmortem_angel_studios_.php?page=1
- "
- حساب
- اضافی
- AI
- الکس
- الگوریتم
- معرفی
- در میان
- استدلال
- دور و بر
- هنر
- مقاله
- هنرمند
- دارایی
- استرالیا
- عزیزم
- آبجو
- تخته
- اشکال
- کسب و کار
- اهميت دادن
- متهم
- بررسی
- تراشه
- نزدیک
- رمز
- کالج
- ارتباط
- ارتباطات
- شرکت
- تمرکز
- داده ها
- روز
- معامله
- طرح
- میز
- جزئیات
- توسعه دهنده
- توسعه دهندگان
- پروژه
- DID
- مدیر
- از دست نده
- قطره
- سردبیر
- موثر
- بهره وری
- کارکنان
- انگلستان
- محیط
- اکسل
- نما
- ویژگی
- امکانات
- سرانجام
- پایان
- آتش
- نام خانوادگی
- رفع
- قالب
- تازه
- آینده
- بازی
- بازی
- هندسه
- آلمان
- خوب
- بزرگ
- گروه
- سخت افزار
- سر
- اینجا کلیک نمایید
- چگونه
- چگونه
- HTTPS
- اندیشه
- از جمله
- صنعت
- اطلاعات
- ایران
- IT
- زبان
- رهبری
- رهبری
- یاد گرفتن
- آموخته
- رهبری
- سطح
- لاین
- فهرست
- طولانی
- عشق
- ساخت
- بازار یابی (Marketing)
- ماسک
- مایکروسافت
- میلیون
- ماموریت
- ماه
- ویژگی های جدید
- ویژگی های جدید
- نینتندو
- ارائه
- باز کن
- دیگر
- چشم انداز
- اکسیژن
- مقاله
- مردم
- کارایی
- خلبان
- پلی استیشن
- فشار
- تهيه كننده
- تولید
- برنامه نويسي
- پروژه
- منتشر کردن
- کیفیت
- RE
- دلایل
- منابع
- منابع
- نتایج
- در حال اجرا
- حس
- متانت
- به اشتراک گذاشته شده
- ساده
- سایت
- اندازه
- مهارت ها
- So
- فروخته شده
- سرعت
- صحنه
- ردی
- آغاز شده
- ایالات
- استراتژیک
- سیستم
- فنی
- آینده
- زمان
- بالا
- لمس
- اعتماد
- ما
- us
- ارزش
- تصویری
- ثروت
- وب
- هفته
- مهاجرت کاری
- نوشته