ما هو الاسم والتنفيذ الأكثر شيوعا لهذه الخاصية لمحركات الرسومات ثلاثية الأبعاد؟

StackOverflow https://stackoverflow.com/questions/948084

  •  09-09-2019
  •  | 
  •  

سؤال

أريد أن أقول "إطار مرجعي غير مقيد" أو "بيئات فرعية مستقلة ذات صلة مكانية"، لكنني لا أعتقد أن تلك الحق.

تخيل اثنين من سفن فضاء أسطوانية طويلة تطفو بجانب بعضها البعض على متن طائرة مع نفس الاتجاه. تحتوي كل سفينة على مجموعة من الغرف والممرات التي يتحرك فيها اللاعبون بحرية في بيئة ذات أول شخص. بالنظر عبر النوافذ، يمكن أن يبتسم طاقم كل سفينة وموجة إلى طاقم السفينة الأخرى.

السفينة الأولى تطلق تجرباتها ويتحركها تحت السفينة الثانية. افتتاح رصيف السفن وحوض الهواء. يحتاج طاقم السفينة الأولى الآن إلى الصعود أعلى في السفينة الثانية. يغلق airlock وفصل السفن.

السفينة الأولى تتحرك مرة أخرى، هذه المرة فقط في قمة ال السفينة الثانية. يفتح Airlock وهذه المرة يحتاج طاقم السفينة الأولى إلى التحرك أسفل في السفينة الثانية.

كل سفينة هي بيئة ثلاثية الأبعاد قائمة بذاتها تتفاعل مع البيئات الأخرى الموجودة ذاتيا داخل بيئة عالمية أكبر.

أرى اثنين من التطبيقات المحتملة.

1) "المحرك". تمارس كل سفينة قوة على كل كائن داخلها. نظرا لأن السفينة الأولى تتحرك نسبة إلى السفينة الثانية، فإن هذه الحركة ترجمت إلى الطاقم لتغيير موقفها العالمي العالمي. هذا يبدو باهظة الثمن ...

2) "فاكر". عرض نوافذ كل سفينة مقلدة من مساحة عالمية افتراضية، ولكن السفن ومحتوياتها لا تتحرك حقا بالنسبة لبعضها البعض. يعد الاتصال بين السفن بوابة ديناميكية يربط كلاهما "غرف" في الاتجاه الصحيح.

ما اسم هذه الخاصية وأين يمكنني العثور على أمثلة في محركات ثلاثية الأبعاد حقيقية؟

هل كانت مفيدة؟

المحلول

العديد من المحركات ثلاثية الأبعاد تتعامل مع هذا عن طريق الرسم البياني المشهد. وبعد في معظم الرسوم البيانية المشهد، سيكون لديك "العقد" الوالد التي تحتوي كل منها على أطفال، في هذه الحالة، ستكون كل سفينة عقدة، والأشخاص، الغرف، والأثاث، وما إلى ذلك داخل السفينة هي الأطفال.

يتم تحديد مواقف الأطفال نسبة إلى والديهم. هذا يجعلها تافهة "نقل" السفينة، لأنك تتحرك فقط السفينة، ويتحرك الأطفال جنبا إلى جنب معها (دون تغيير موقفهم، بقدر ما تشعر بالقلق).

في مثالك، ستكون الأقسام لأعلى ولأسفل مسألة تتحرك محليا لأعلى أو لأسفل. في مرحلة ما، عندما تمر عبر قفل الهواء، كنت تقوم بنقل الطفل من أحد الوالدين (السفينة) إلى الوالد التالي (سفينة أخرى)، وتغيير موضعه (أي: من أسفل السفينة 1 عند 0،0 ، -20 إلى "أعلى" للشحن 2 عند 0،0،20، إلخ).

ال OpenScenegraph دليل البدء السريع لديه مناقشة جيدة لهذا المفهوم.


يحرر:

كإضافة ذات صلة، العديد من محركات ثلاثية الأبعاد الموجهة للألعاب، مثل غول, ، أيضا توفير وسائل التعامل مع العرف تقسيم الفضاء داخل الرسوم البيانية المشهد الخاصة بهم. على سبيل المثال، يتيح لك Ogre، خارج الصندوق استخدام أسفزهات BSP و OCTREE للمشهد، وهو ما هي الطريقة التي تعالج بها شخصا في سفينة واحدة لا يرى (والأهم من ذلك، حتى لا تحاول تقديمها) السفينة الثانية إذا كان هناك جدار في الطريق، وما إلى ذلك بالنسبة للأشياء مثل مثالك، فإن استخدام تدور الفضاء إلى كول أمر حيوي إذا كنت ترغب في الاحتفاظ بمشاهد عالية مع مشاهد معقدة.

نصائح أخرى

تمديد إجابة ريد. إليك مقتطف من القديم قائمة ميزة تكنولوجيا غير واقعي.

التكنولوجيا الرسم البياني المشهد الديناميكي

تقنية Graph Scene Scene (DSG) هي تمديد طبيعي لتكنولوجيا البوابة. يتكون الرسم البياني المشهد الديناميكي من عقدة الجذر، مما يتوافق مع محيط اللاعب الفوري للاعب، وشجرة هرمية من العقد الهرمية.

يحتوي كل عقدة DSG على تحويل نظام تنسيق، وحجم القطع، ودولة التقديم الأخرى المرتبطة به. يقوم محرك التقديم غير الواقعي بإنشاء رسم بياني مشهد ديناميكي أثناء التنقل عند تقديم كل إطار. يتم إنشاء عقد رسم بياني مشهد جديد حيث تنشر رؤية المشاهد إلى الخارج من خلال البوابات. العقد الرسم البياني المشهد هي اللبنات الأساسية للعديد من الآثار الواقعية والمؤثرات الخاصة، مثل:

  • أسطح المرآة.
  • المواد السامية، مثل أسطح الرخام التي تعكس جزئيا الضوء.
  • آثار بوابة غير:
  • رؤية من خلال النوافذ في منطقة السماء اللانهائية التي يتم فيها إنشاء السماء والكواكب والجبال والكائنات الأخرى.
  • السماء والخلفيات مع أنظمة تنسيق مستقلة للترجمة المستقلة والتناوب.

قوة تقديم DSG هي أن جميع آثار العقدة غير قابلة للتشغيلية بالكامل. على سبيل المثال، بمجرد تعريف عقدة DSG مرآة، يتم دعم المرايا تلقائيا بشكل متكرر (لآثار نوع قاعة المرآة)؛ تعمل المرايا مع سماء؛ تعمل المرايا مع بوابات الاعوجاج؛ Warp Portals تعمل مع سماء، إلخ.

تقنية Graph Scene Scene غير واقعية هي كتلة بناء أساسية سيتم تمديدها في الإصدارات المستقبلية من التكنولوجيا لتضمين تأثيرات الجيل التالي مثل الرؤية بين المستويات، والرؤية عبر خوادم متعددة على الإنترنت، ومياه الانكسار.

لا أستطيع أن أخبركم بالاسم الدقيق لهذا، لكنني أعتقد أنه سيكون من السهل جدا التنفيذ مع OpenGL - عند رسم كل سفينة فضائية، سترجم هذه سفينة الفضاء إلى الموضع الصحيح في العالم ثلاثي الأبعاد. ثم عند رسم جميع الكائنات داخل تلك السفينة، لا إعادة تعيين مصفوفة العالم الخاص بك - احتفظ بالترجمة نفسها، وسيتم رسم كل شيء بالنسبة لموقف السفينة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top