ThreeJS学习笔记(4)-3D文字

来源:互联网 发布:电脑特效软件 编辑:程序博客网 时间:2024/05/17 21:07
<!DOCTYPE html><html lang="en">    <head>        <meta charset="utf-8">        <script src="../build/three.js" type="text/javascript"></script>            </head>    <body>         <script  type="text/javascript" >        var scene,camera,render;        var loader = new THREE.FontLoader();        //导入字体,设定字体,这里的话,你们找对自己的字体路径,可能和我的不一样的!!下载的three.js包里面examples/fonts里面有字体        loader.load('../examples/fonts/helvetiker_bold.typeface.json',function(font){            init(font);            animate();        });        function init(font){            // 老三样 场景scene,相机camera,渲染器render             scene=new THREE.Scene();            // 相机            camera = new THREE.PerspectiveCamera(45,window.innerWidth/window.innerHeight,1,1000);            camera.position.set(0,10,500);                      // 渲染器            renderer=new THREE.WebGLRenderer();            //背景颜色修改一下            renderer.setClearColor( 0xf0f0f0 );            renderer.setSize(window.innerWidth,window.innerHeight);            //显示在窗体            document.body.appendChild(renderer.domElement);                   // 文字            var text = "text3D";            var g = new THREE.TextGeometry(text,{                // 设定文字字体,                font:font,                //尺寸                size:30,                //厚度                height:30,            });            //计算边界,暂时不用管            g.computeBoundingBox();            //3D文字材质            var m = new THREE.MeshBasicMaterial({color:0xff0000});            var mesh = new THREE.Mesh(g,m);                      // 加入到场景中            scene.add(mesh);                       }        function animate(){            requestAnimationFrame( animate );             // 渲染            renderer.render(scene,camera);           }    </script>    </body></html>

经过优化后的代码,如下:

<!DOCTYPE html><html><head><title></title><style type="text/css">body{margin:0;}div#canvas-frame {border: none;cursor: pointer;width: 100%;height: 600px;background-color: #EEEEEE;}</style><script src="js/three.js"></script><script src="js/jquery.js"></script><script>//定义场景并初始化var scene;function initScene(){scene = new THREE.Scene();}//定义相机并初始化var camera;function initCamera(){camera = new THREE.PerspectiveCamera(45,window.innerWidth/window.innerHeight,1,10000);camera.position.set(0,100,500);camera.lookAt(new THREE.Vector3(0,0,0));}//定义渲染器并初始化var renderer;function initRenderer(){renderer= new THREE.WebGLRenderer();renderer.setSize(window.innerWidth,window.innerHeight);$("#canvas-frame").append(renderer.domElement);renderer.setClearColor(0x39609b,1);}//定义灯光并初始化var light;function initLight(){light=new THREE.DirectionalLight(0xFF0000,1.0,0);light.position.set(100,100,200);scene.add(light);}//添加渐变线function initObject(){var geometry = new THREE.Geometry();var material = new THREE.MeshBasicMaterial({ vertexColors: true });var color1=new THREE.Color(0x444444);var color2=new THREE.Color(0xFF0000);var p1=new THREE.Vector3(-100,0,100);var p2=new THREE.Vector3(100,0,-100);geometry.vertices.push(p1);geometry.vertices.push(p2);geometry.colors.push(color1,color2);var line=new THREE.Line(geometry,material);scene.add(line);}//添加3D文字function init3DText(fontloader){var fontloader;fontloader = new THREE.FontLoader();fontloader.load('fonts/helvetiker_bold.typeface.json',function(font){var text="FOX";var g=new THREE.TextGeometry(text,{font:font,size:50,height:30,});g.computeBoundingBox();//3D文字材质var m = new THREE.MeshBasicMaterial({color:0xffff00});var mesh = new THREE.Mesh(g,m);// 加入到场景中scene.add(mesh);  });}function threeStart(){initScene();initCamera();initRenderer();initLight();initObject();init3DText();// 渲染animate();}        function animate(){            requestAnimationFrame( animate );             // 渲染            renderer.render(scene,camera);           }</script></head><body onload="threeStart();"><div id="canvas-frame"></div></body></html>


原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 魂飞魄散的上古大仙在修真界诈尸 快穿:大佬她又抢了反派剧本 夫人她总想逃 穿成阴戾反派未来嫂嫂 上神大人他偏甜系啊 咸鱼后妈带崽在综艺当对照组 系统BUG让我成了舔包专业户 快穿:系统有的是力气和手段 当我的霸总老公有了读心术 穿成炮灰渣妻后我和反派开农场 前任小姐姐帅又飒 弄潮1990从厂长开始 光阴之外 心动侵占 重回逃荒开端,手握空间来逆袭 重生之网红教父 蛮荒求生:反派大佬被迫种田 玄学大佬在星际重建地府 总裁又惹火夫人了 农门空间:重生娇娘撩糙汉 重生后我弃了天运之子 快穿:绑定系统后我疯狂崩人设 慕爷你虐错了夫人就是白月光 欢乐班 快穿之反派今天也在求负责 喜提娇夫:快穿作精她被迫崛起了 修真大佬都是我 唐人的餐桌 重生之大小姐她换了黑莲花剧本 重回九零做学霸 穿越星际之直播探险生活 我在古代做美食博主 小机器人每天都在劝我追校草 救命!隐婚老公当着全球撩我 仙子她一心修仙 快穿:主神他好撩人 修真界如今不太平 我与帝君虚情假意后he了 女法医她靠玄学飒翻天 蜜糖冰语 穿越年代:手握三室一厅被娇宠!