سؤال

عندما أحاول إضافة صورة إلى مجال ثلاثي الأبعاد باستخدام Babylon.js، يظهر لي الخطأ Uncaught SecurityError: Failed to execute 'texImage2D' on 'WebGLRenderingContext': Tainted canvases may not be loaded.

هذه هي الطريقة التي كتبت بها الكود الخاص بي.لقد تابعت البرنامج التعليمي هنا وكل شيء يعمل بشكل مثالي حتى أحاول تغيير القوام.

//Creation of spheres
var sphere1 = BABYLON.Mesh.CreateSphere("Sphere1", 10.0, 6.0, scene);
var sphere2 = BABYLON.Mesh.CreateSphere("Sphere2", 2.0, 7.0, scene);
var sphere3 = BABYLON.Mesh.CreateSphere("Sphere3", 10.0, 8.0, scene);

//Positioning the meshes
sphere1.position.x = 10;
sphere3.position.x = -10;

//Textures
var sphere1texture = new BABYLON.StandardMaterial("sphere1texture", scene);
var sphere2texture = new BABYLON.StandardMaterial("sphere2texture", scene);
var sphere3texture = new BABYLON.StandardMaterial("sphere3texture", scene);
sphere1texture.alpha = 0.75
sphere2texture.diffuseTexture = new BABYLON.Texture("./texture1.jpg", scene); 

sphere2 (الذي حاولت تحميل الصورة إليه) لا يظهر في البرنامج، ولكن كل شيء آخر يعمل بشكل جيد.

لقد حاولت أيضًا تنزيل الكود المصدري للدرس وحدث نفس الشيء، لذلك أعتقد أن الأمر يتعلق بمتصفحي (Google Chrome).

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

المحلول

يجب عليك استخدام ملفاتك على خادم ويب وليس محليًا لضمان عدم وجود مشكلات أمنية

نصائح أخرى

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

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