2015-08-05 4 views
1

У меня есть работающая программа three.js на firefox, все загружается нормально. Когда я пытаюсь запустить программу на хроме, она частично отображает фон и некоторые мерцающие объекты. Я проверил терминал и, кажется, извергают тысячи ошибок, связанных с этим вопросом -three.js проблема рендеринга с хромом - uncaught typeerror

Uncaught TypeError: Cannot read property 'update' of undefined 
THREE.Vertex has been DEPRECATED. Use THREE.Vector3 instead. 
THREE.Vertex has been DEPRECATED. Use THREE.Vector3 instead. 
THREE.Vertex has been DEPRECATED. Use THREE.Vector3 instead. 
THREE.UV has been DEPRECATED. Use THREE.Vector2 instead. 
THREE.UV has been DEPRECATED. Use THREE.Vector2 instead. 
THREE.UV has been DEPRECATED. Use THREE.Vector2 instead. 

    THREE.WebGLRenderer 66 
WebGL: INVALID_VALUE: uniform3fv: no array 
WebGL: INVALID_VALUE: uniform3fv: no array 
Uncaught SecurityError: Failed to execute 'texImage2D' on 'WebGLRenderingContext': The cross-origin image at file:///C:/foodshop/images/wall-2.jpg may not be loaded. 
WebGL: INVALID_VALUE: uniform3fv: no array 
Uncaught SecurityError: Failed to execute 'texImage2D' on 'WebGLRenderingContext': The cross-origin image at file:///C:/foodshop/images/wall-2.jpg may not be loaded. 
WebGL: INVALID_VALUE: uniform3fv: no array 
Uncaught SecurityError: Failed to execute 'texImage2D' on 'WebGLRenderingContext': The cross-origin image at file:///C:/foodshop/images/wall-2.jpg may not be loaded. 

Поскольку она не дает номер строки, чтобы найти, где может быть ошибка, я совсем запутался. Как я могу решить эту проблему?

EDIT -------

Я изменил версию моего three.min.js последним, и мне пришлось изменить некоторые аспекты моей программы, такие как CubeGeometry к BoxGeometry.

теперь у меня есть следующие проблемы в моем журнале

"THREE.Projector has been moved to /examples/js/renderers/Projector.js." 

Также некоторые из них.

"THREE.WebGLRenderer: Texture is not power of two. Texture.minFilter should be set to THREE.NearestFilter or THREE.LinearFilter. (images/light.jpg)" 
+0

Начните свой браузер с 'chrome.exe --allow-доступ к файлам-from- файлы ' – gaitat

ответ

1

Отладка с неминифицированной версией или версией разработчика (three.js) и последней версией библиотеки.

Кроме того, вы не должны использовать устаревшие методы в своей программе .. попробуйте использовать Vector3 и Vector2 вместо VERTEX или UV.

Согласно SecurityError, попробуйте следующее:

THREE.ImageUtils.crossOrigin = ''; 
var yourtxture = THREE.ImageUtils.loadTexture('your url or whatever') 

или прочитать этот пост:

Three.js and loading a cross-domain image

+0

Спасибо за отзыв. Я разрешил ошибку безопасности. Затем я получил последние три .min.js для экспериментов. С тех пор я зачищал области, где исходный конструктор не существует в новых трех.min.js. Например, мне пришлось изменить CubeGeometry на BoxGeometry. Однако теперь у меня проблемы с другими вещами. Я подробно расскажу об этом в приведенном выше правиле. – AMorton1989

+1

@ AMorton1989 Не меняйте вопрос после ответа. Создать новый пост. – WestLangley

Смежные вопросы