Bonjour,
Je débute avec three.js.
J'ai donc commencé par https://threejs.org/docs/index.html#...eating_a_scene
ça marche
Puis j'ai voulu ajouter un sprite : https://threejs.org/docs/index.html#...SpriteMaterial
ça ne marche pas
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 <html> <head> <title>My first three.js app</title> <style> body { margin: 0; } canvas { width: 100%; height: 100% } </style> </head> <body> <script src="js/three.js"></script> <script> var scene = new THREE.Scene(); var camera = new THREE.PerspectiveCamera( 75, window.innerWidth/window.innerHeight, 0.1, 1000 ); var renderer = new THREE.WebGLRenderer(); renderer.setSize( window.innerWidth, window.innerHeight ); document.body.appendChild( renderer.domElement ); // instantiate a loader var loader = new THREE.TextureLoader(); //allow cross origin loading //loader.crossOrigin = ''; // load a resource loader.load('b.png') var spriteMaterial = new THREE.SpriteMaterial( { map: loader, color: 0xffffff } ); var sprite = new THREE.Sprite( spriteMaterial ); scene.add( sprite ); camera.position.z = 2; var render = function () { requestAnimationFrame( render ); renderer.render(scene, camera); }; render(); </script> </body> </html>
Erreur dans la console :
Les questions que je me pose :Uncaught TypeError: Cannot read property 'x' of undefined
at SpritePlugin.render (three.js:6973)
at WebGLRenderer.render (three.js:21007)
at render (sprite.html:29)
at sprite.html:31
1. où doit se trouver l'image b.png ?
- dans le répertoire de mon code (sprite.html) ?
- dans le répertoire /js ?
2. pourquoi l'exemple fourni par three.js ne fonctionne pas chez moi ?
Merci
Partager