انیمیشنز · bei.pm
اس صفحے پر بیان کردہ فائل کے فارمیٹس Dynamix, Inc. اور Sierra Entertainment کے ذہنی ملکیت کے تکنیکی تجزیے پر مبنی ہیں۔
ذہنی ملکیت آج Activision Publishing, Inc. / Activision Blizzard, Inc. کی ملکیت ہے اور اس وقت Microsoft Corp. کے پاس ہے۔
یہ معلومات ریورس انجینئرنگ اور ڈیٹا تجزیہ کے ذریعے تاریخی ڈیٹا کے ساتھ محفوظ کرنے اور باہمی تعامل کے لیے جمع کی گئی ہیں۔
کوئی مخصوص یا خفیہ تفصیلات استعمال نہیں کی گئیں۔
یہ کھیل اس وقت gog.com پر ڈاؤن لوڈ کے طور پر خریداری کے لیے دستیاب ہے۔
اب ہم آؤٹ پوسٹ 2 کے ڈیٹا فارمیٹس کے اندر ڈسپلن کی اعلیٰ ترین قسم کی طرف بڑھتے ہیں:
انیمیشنز۔
انیمیشن کی فہرستیں ایک عالمی ہیڈر کے ساتھ شروع ہوتی ہیں، جو بنیادی طور پر ڈیٹا کی تصدیق کے لیے ہوتی ہے۔ اس کے بعد مخصوص انیمیشن کی تعریفیں آتی ہیں، جو 3 سطحوں میں تقسیم ہوتی ہیں:
-
انیمیشن
انیمیشن سب سے اوپر کی سطح ہے؛ یہ کسی یونٹ، عمارت یا 'ذرات کی انیمیشن' (دھماکہ، موسم، دھماکہ) کی انیمیشن کو ایک مخصوص ابتدائی حالت میں ظاہر کرتی ہے۔ -
فریم
فریم انیمیشن کے اندر ایک واحد تصویر ہے۔ ایک انیمیشن میں ایک یا زیادہ فریم شامل ہو سکتے ہیں۔ -
سب فریم
سب فریم اس معلومات کی نشاندہی کرتا ہے کہ ایک مخصوص بٹ میپ کو کچھ مخصوص معیار کے تحت فریم کی ایک مخصوص جگہ پر ڈرائنگ کیا جانا چاہیے۔ ایک فریم میں ایک یا زیادہ سب فریم شامل ہو سکتے ہیں۔
اس کے بعد براہ راست انفرادی انیمیشن کی تعریفیں آتی ہیں۔
ایڈریس | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | کریکٹر | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
آفسیٹ | ڈیٹا کی قسم | نام | وضاحت |
---|---|---|---|
0x0000 | uint(32) | اینیمیشنز کی تعداد | کتنے اینیمیشن ڈیٹا سیٹس موجود ہیں |
0x0004 | uint(32) | فریمز کی تعداد | کل کتنے فریم موجود ہونے چاہئیں |
0x0008 | uint(32) | ذیلی فریمز کی تعداد | کل کتنے سب فریمز موجود ہونے چاہئیں |
0x000c | uint(32) | اختیاری اندراجات کی تعداد | کتنے "اختیاری اندراجات" موجود ہیں۔ |
تدوین
ایڈریس | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | کریکٹر | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
0x0010 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
0x0020 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
آفسیٹ | ڈیٹا کی قسم | نام | وضاحت |
---|---|---|---|
0x0000 | uint(32) | انجان 1 | نامعلوم معلومات |
0x0004 | uint(32) | باؤنڈنگ باکس: بائیں | بائیں جانب کے آغاز (پکسل میں) کی نشاندہی کرتا ہے Bounding Box کا۔ |
0x0008 | uint(32) | باؤنڈنگ باکس: اوپر | اوپر کی شروعات (پکسل میں) باؤنڈنگ باکس کی وضاحت کرتا ہے۔ |
0x000c | uint(32) | باؤنڈنگ باکس: چوڑائی | یہ Bounding Box کی چوڑائی (پکسل میں) کو ظاہر کرتا ہے۔ |
0x0010 | uint(32) | باؤنڈنگ باکس: اونچائی | یہ Bounding Box کی اونچائی (پکسل میں) بتاتا ہے۔ |
0x0014 | uint(32) | آفسیٹ: ایکس | اینیمیشن کا افقی مرکز بتاتا ہے |
0x0018 | uint(32) | آفسیٹ: Y | اینیمیشن کا عمودی مرکز دکھاتا ہے |
0x001c | uint(32) | نامعلوم 2 | نامعلوم معلومات |
0x0020 | uint(32) | فریمز کی تعداد | یہ بتاتا ہے کہ اس متحرک تصویر میں کتنے متحرک فریم شامل ہیں |
0x0024 | uint(32) | کھڑکیوں کی تعداد | یہ بتاتا ہے کہ ڈرائنگ کرتے وقت کتنے ونڈو استعمال کیے جائیں |
اوپر کی سطح کے ڈیٹا، جو کہ انیمیشن سے متعلق ہیں، بنیادی طور پر انتظامی ڈیٹا ہیں - Boundingbox اس وقت گاڑی/عمارت کے گرد نشان کے نقاط کی نشاندہی کرتی ہے، جب یہ منتخب کیا جاتا ہے اور یہ بھی بتاتی ہے کہ کون سا علاقہ کلک کرنے کے قابل ہونا چاہیے۔
آفسیٹ بنیادی طور پر "صفر نقطہ" طے کرتا ہے؛ وہ نقطہ جو کہ کھیل کے اندرونی نقاط میں شامل یا کم کیا جانا ہے۔ اسے ریاضیاتی طور پر بھی بیان کیا جا سکتا ہے: آفسیٹ یہاں نقاط کی اصل کی نشاندہی کرتا ہے۔
ونڈوز بھی، جیسے کہ آفسیٹ، ہر ونڈو کے لیے 4 uint(32) کے اقدار پر مشتمل ہیں، جو ایک ایسا علاقہ فراہم کرتے ہیں جو انفرادی سب فریمز کے لیے استعمال کے قابل ہے۔ ونڈوز کے باہر، جب تک کہ یہ بٹ میپ کے لیے مناسب ہو، ڈرائنگ نہیں کی جا سکتی۔
فریم
ایڈریس | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | کریکٹر | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
آفسیٹ | ڈیٹا کی قسم | نام | وضاحت |
---|---|---|---|
0x0000 | uint(8) | سب فریم کی تعداد اور آپشنل 1، 2 کے لئے ٹوگل | یہ قیمت شامل ہے:
|
0x0001 | uint(8) | نامعلوم 1 اور متبادل 3، 4 کے لیے ٹوگل | یہ قدر درج ذیل چیزوں پر مشتمل ہے:
|
0x0002 | uint(8) | آپشنل 1 | نامعلوم |
0x0003 | uint(8) | اختیاری 2 | نامعلوم |
0x0004 | uint(8) | اختیاری 3 | نامعلوم |
0x0005 | uint(8) | اختیاری 4 | نامعلوم |
ذیلی فریم
ایڈریس | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | کریکٹر | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
آفسیٹ | ڈیٹا کی قسم | نام | وضاحت |
---|---|---|---|
0x0000 | uint(16) | بٹ میپ-آئی ڈی | یہ بتاتا ہے کہ اس سب فریم کے لیے کون سی بٹ میپ استعمال کی جائے گی |
0x0002 | uint(8) | انجان 1 | یہ نامعلوم ہے - میں اس بات کا قوی امکان ظاہر کرتا ہوں کہ یہ ایک رینڈر کی ترجیح (Z-Layer) ہے۔ |
0x0003 | uint(8) | سب فریم-آئی ڈی | یہ بتاتا ہے کہ ہم کس سب فریم میں ہیں |
0x0004 | sint(16) | آف سیٹ - افقی | یہ بتاتا ہے کہ فریم کے اندر سب فریم کہاں رکھا جانا چاہئے، یا بٹ میپ کو افقی طور پر کتنے پکسلز منتقل کیا جانا چاہئے |
0x0006 | sint(16) | آفسیٹ - عمودی | یہ بتاتا ہے کہ فریم کے اندر سب فریم کہاں رکھا جائے، یا بٹ میپ کو عمودی طور پر کتنے پکسلز منتقل کیا جانا چاہئے |
اس کے ساتھ ہم اب انفرادی فریمز اور مکمل متحرک تصاویر کو مناسب طریقے سے ترتیب دے سکتے ہیں، یہاں ایک پیچیدہ متحرک تصویر کی مثال کے طور پر، جو انڈیکس 500 کے ساتھ ہے، پیش کی گئی ہے۔
اینیمیشن 500
انیمیشن 500 دکھاتی ہے کہ کس طرح ایک پلیموٹھ ٹرانسپورٹر، جو کہ عام خام مال سے بھرا ہوا ہے، کو اتارا جا رہا ہے۔ یہ چند انیمیشنز میں سے ایک ہے جو ونڈوئنگ کی فعالیت کا استعمال کرتی ہے۔
اور یوں مکمل انیمیشن کو اکٹھا کیا جا سکتا ہے۔
بدقسمتی سے اوپر کے لوڈنگ دروازے کے ساتھ ایک مسئلہ ہے، کیونکہ یہاں گرافک ٹائپ کی معلومات میں متعلقہ بٹ سیٹ نہیں کیا گیا ہے۔
یہاں کچھ مزید، خوبصورت انیمیشن شدہ اسپرائٹس ہیں جو کھیل سے ہیں: