سؤال

حاولت تجميع بعض بيكسل شادر الأمثلة.ولكن كل منهم يعطي نفس رسالة الخطأ.

"لا تخلط shader model 3.0 مع في وقت سابق تظليل النماذج.إذا إما vertex shader أو تظليل بكسل هو تجميع 3.0 ، يجب أن يكون كل من."

يبدو أن المشكلة أن بيكسل شادر يستخدم ps_3_0 و العفريت دفعة لديه إصدار سابق.

technique MyTechnique
{
    pass
    {
        PixelShader = compile ps_3_0 Mandelbrot_PixelShader();
    }
}

http://blogs.msdn.com/b/shawnhar/archive/2006/12/11/sixty-fractals-per-second.aspx http://blogs.msdn.com/b/shawnhar/archive/2010/04/05/spritebatch-and-custom-shaders-in-xna-game-studio-4-0.aspx

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

المحلول

يجب إعادة ترجمة vertex shader مع الإصدار 3.0.يمكنك الحصول على الافتراضي تظليل من XNA من http://create.msdn.com/en-US/education/catalog/sample/stock_effects نسخ التعليمات البرمجية من هناك ، ولكن مجموعة نسخة من vertex shader إلى vs_3_0.

معظم وحدات معالجة الرسومات تحويل إصدارات بصمت, لذلك كنت غير محظوظين قليلا.:)

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