سؤال

أحاول تقديم 6 أضواء بقعة لإنشاء ضوء نقطة لخوارزمية خرائط الظل.

لست متأكدا مما إذا كنت أفعل هذا الحق، فقد اتبعت التعليمات أكثر أو أقل هنا عند إعداد مصفوفات الرأي الخاصة بي، ولكن النتيجة النهائية تبدو وكأنها هذه:

alt text

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

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

المحلول

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

بعبالة أخرى: ضبط مصفوفة الإسقاط الأنوار "FOV"، لذلك لن يتم عرض الأفعال التي تتضمن مخروط الضوء، لكن المخروط سيتضمن عطل الرأي.

التنفيذ الكامل انظر هذه الورقة.

نصائح أخرى

ما تراه هنا هي دائرة واثنين من أقسام مخروطية من الزغب - بالضبط النتيجة التي قد تتوقعها إذا أخذت مخروط مزدوج المنتهية وتقاطعها مع طائرة.

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

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

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

خيار آخر هو نقل تركيز جميع الأضواء أقرب بكثير إلى مصادرها. بهذه الطريقة، سيتقومون بتآباتهم بسرعة أكبر.

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