首先须要准备好开发环境,这里在windowns上面,须要安装nodejs和vscode(vscode是我本身在用的编辑器.).html
1.安装nodejs.
下载地址:https://nodejs.org/en/ (下载8.9.1)
安装的时候注意一下安装选项,把系统的路径加一下,英文对应大概是"add path...."巴拉巴拉的.node
安装完成后,打开命令行工具(cmd.exe)后输入,node -v
后,你会看到nodejs的版本号,证实你安装成功了.webpack
由于镇内的环境,npm可能并非特别好用,若是你没有翻出去,那么建议你打开cmd.exe以后,安装一下cnpm.
npm是你在nodejs安装后就有的,上面下载版本为8.9.1,由于nodejs9的npm如今提示不大支持.
安装cnpm的方法:
命令行敲下面这个:npm install -g cnpm --registry=https://registry.npm.taobao.org
git
2.安装vscode.
https://code.visualstudio.com/ (vscode下载)
这里我使用vscode做为个人开发环境.es6
3.新建文件夹,为开发项目建立个文件夹吧.这里取名 <threejs_study>
而后使用cmd.exe打开该地址,windows能够在文件夹地址上敲cmd就能够打开.(或者用vscode打开后,按Ctrl+` 打开终端.)web
4.输入npm init
初始化项目.一直按回车就好了,由于该过程会在文件夹生成一个package.json
文件.chrome
5.安装依赖的包.这里我一次性安装完成.cnpm i three webpack webpack-dev-server html-webpack-plugin typescript awesome-typescript-loader @types/three @types/node
typescript
6.到这里了,用vscode打开该文件夹项目吧.npm
7.初始化webpack.
首先在根目录建立文件,webpack.config.ts
写入以下代码json
var path = require('path'); var HtmlWebPackPlugin = require("html-webpack-plugin"); module.exports = { //项目入口 entry: "./src/index.ts", //输出设置 output: { filename: "bundle.js", path: path.resolve(__dirname, 'dist') }, //调试工具 devtool: "source-map", //模块加载器设置 module: { loaders: [ { test: /\.tsx?$/, loader: "awesome-typescript-loader" }, ] }, //调试服务 devServer: { contentBase: path.join(__dirname, "dist"), compress: true, port: 7777 }, //插件 plugins: [ new HtmlWebPackPlugin( { title: "threejs学习" }), ] }
建立tsconfig.json
{ "compilerOptions": { "outDir": "./built", "allowJs": true, "target": "es6", "lib": [ "es2017", "dom" ], "types": [ "node" ], "module": "commonjs", "experimentalDecorators": true }, "include": [ "./src/**/*" ] }
8.恭喜你完成了项目配置,如今咱们能够编写代码了.
建立文件夹src
,而且建立index.ts
由于咱们没有书写html代码,那么咱们用纯的js操做dom去建立canvas.
代码以下:
import * as THREE from "three"; //建立场景. let scene = new THREE.Scene(); //相机 let camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.1, 1000); //渲染器 let renderer = new THREE.WebGLRenderer(); //设置画布大小 renderer.setSize(window.innerWidth, window.innerHeight); //加入到body document.body.appendChild(renderer.domElement); //第二步,建立几何体. let geometry = new THREE.BoxGeometry(1, 1, 1); let material = new THREE.MeshBasicMaterial({ color: 0x00ff00 }); let cube = new THREE.Mesh(geometry, material); //加入到场景 scene.add(cube); //设置相机位置 camera.position.z = 5; //渲染循环 function animate() { requestAnimationFrame(animate); renderer.render(scene, camera); } animate();
而后你修改package.json
文件,在scripts中加入
"scripts": { "dev": "webpack-dev-server" },
而后你就能够在命令行中运行,npm run dev
了.
你能够在拓展中安装debugger for chrome
插件.这样你就能够按F5进行代码调试了.
记得选择Chrome
调试,而且记得修改launch.json
文件中的端口,改为7777(上述webpack.config.js中设置的端口)
大概如这样
{ "version": "0.2.0", "configurations": [ { "type": "chrome", "request": "launch", "name": "Launch Chrome against localhost", "url": "http://localhost:7777", "webRoot": "${workspaceRoot}" } ] }
此刻,你按F5,发现浏览器打开了,而且绘制了这样的画面
恭喜你,入门了three.js的开发.
这篇文章只是大概的说了一下如何用工具,具体有不少资料是没有在教程中说起的,须要的用到的技术也是须要时间去积累的,下面列出一些参考资料,能够了解一下这些工具,如何使用,以及为何要用这些工具.
参考资料:
1.typescript 中文手册 地址:https://www.tslang.cn/
2.cnpm 地址:https://cnpmjs.org/
3.vscode 地址:https://code.visualstudio.com/
4.nodejs 地址:https://nodejs.org/en/
5.webpack 地址:https://doc.webpack-china.org/
6.npm config 地址:https://docs.npmjs.com/cli/co...
7.threejs 地址:https://threejs.org/
8.本项目git托管地址: https://gitee.com/BearCAD/thr...