我想用THREE.js显示一个.obj文件。
在加载.obj文件之前,我想加载在index.html文件中链接的OBJLoader.js文件。
<html>
<head>
<meta charset="utf-8"/>
<title>OBJ Car rendering</title>
<style>
body {margin: 0%}
canvas { width: 100%; height: 100%;}
</style>
</head>
<body>
<script src="js/three.js"></script>
<script src="scripts.js"></script>
<script src="OBJLoader.js"></script>
</body>
</html>
另一个代码是scripts.js文件
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.innerHeight, window.innerWidth);
document.body.appendChild(renderer.domElement);
var objloader = new THREE.OBJLoader();
//game logic
var update = function()
{
};
//draw scene
var render = function()
{
renderer.render(scene,camera);
};
//run game loop, update, render, repeat
var GameLoop = function()
{
requestAnimationFrame(GameLoop);
update();
render();
};
GameLoop();
但是,如果我在浏览器中打开index.html文件,它会给我一个错误:
THREE.OBJLoader不是构造函数
答案 0 :(得分:1)
好吧,我回答了我自己的问题:D
这是链接事物的命令!
<html>
<head>
<meta charset="utf-8"/>
<title>OBJ Car rendering</title>
<style>
body {margin: 0%}
canvas { width: 100%; height: 100%;}
</style>
</head>
<body>
<script src="js/three.js"></script>
<script src="OBJLoader.js"></script>
<script src="scripts.js"></script>
</body>
</html>
OBJLoader必须在脚本之前加载!