精华内容
下载资源
问答
  • webgl编程指南

    2018-04-18 23:05:54
    webgl编程指南webgl编程指南webgl编程指南webgl编程指南webgl编程指南webgl编程指南webgl编程指南webgl编程指南
  • WebGL编程

    2019-04-26 17:17:03
    webgl_interactive_cubes.html <!DOCTYPE html> <html lang="en"> <head>...three.js webgl - map controls</title> <meta charset="utf-8"> <meta name="vie...

    webgl_interactive_cubes.html

    <!DOCTYPE html>
    <html lang="en">
    	<head>
    		<title>three.js webgl - map controls</title>
    		<meta charset="utf-8">
    		<meta name="viewport" content="width=device-width, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">
    		<style>
    			body {
    				color: #000;
    				font-family:Monospace;
    				font-size:13px;
    				text-align:center;
    				font-weight: bold;
    
    				background-color: #fff;
    				margin: 0px;
    				overflow: hidden;
    			}
    
    			#info {
    				color:#000;
    				position: absolute;
    				top: 0px; width: 100%;
    				padding: 5px;
    				box-sizing: border-box;
    			}
    
    			a {
    				color: red;
    			}
    		</style>
    	</head>
    
    	<body>
    		<div id="info">
    			<a href="http://threejs.org" target="_blank" rel="noopener">three.js</a> - map controls example
    		</div>
    
    		<script src="js/three.js"></script>
    		<script src="js/controls/MapControls.js"></script>
    		<script src="js/controls/DragControls.js"></script>
    		<script src="js/WebGL.js"></script>
    
    		<script src='js/libs/dat.gui.min.js'></script>
    
    		<script>
    
    			if ( WEBGL.isWebGLAvailable() === false ) {
    
    				document.body.appendChild( WEBGL.getWebGLErrorMessage() );
    
    			}
    
    			var camera, controls, scene, renderer;
    
    			init();
    			//render(); // remove when using next line for animation loop (requestAnimationFrame)
    			animate();
    
    			function init() {
    
    				scene = new THREE.Scene();
    				scene.background = new THREE.Color( 0xcccccc );
    				// scene.fog = new THREE.FogExp2( 0xcccccc, 0.002 ); // 雾
    				var objects = [];
    
    				renderer = new THREE.WebGLRenderer( { antialias: true } );
    				renderer.setPixelRatio( window.devicePixelRatio );
    				renderer.setSize( window.innerWidth, window.innerHeight );
    				document.body.appendChild( renderer.domElement );
    
    				camera = new THREE.PerspectiveCamera( 60, window.innerWidth / window.innerHeight, 1, 2000 );
    				//camera.up.x = 0;
                    //camera.up.y = 0;
                    //camera.up.z = 1;//相机以Z方向为上方
    				/*
    				 * x:0
    				 * y:1000
    				 * z:0
    				 */
    				camera.position.set( 0, 1000, 0 ); // 摄像机的位置
    
    				// controls
    
    				controls = new THREE.MapControls( camera, renderer.domElement );
    
    				//controls.addEventListener( 'change', render ); // call this only in static scenes (i.e., if there is no animation loop)
    
    				controls.enableDamping = true; // an animation loop is required when either damping or auto-rotation are enabled
    				controls.dampingFactor = 0.25; // 旋转灵敏度
    
    				controls.screenSpacePanning = false;
    
    				controls.minDistance = 0;
    				controls.maxDistance = 2000;
    
    				controls.maxPolarAngle = Math.PI / 2;
    				
    				// 地板图
    				var loader = new THREE.TextureLoader();
    				loader.load("js/img/aaaaaa.png", function(texture) {
    					texture.wrapS = texture.wrapT = THREE.RepeatWrapping;
    					texture.repeat.set(1, 1); // 图片排列
    					var floorGeometry = new THREE.BoxGeometry(3875, 1746, 1); // 平面大小
    					var floorMaterial = new THREE.MeshBasicMaterial({
    						map : texture,
    						side : THREE.DoubleSide
    					});
    					var floor = new THREE.Mesh(floorGeometry, floorMaterial);
    					floor.position.y = 1;
    					floor.rotation.x = Math.PI / 2;
    					scene.add(floor);
    				});
    
    				// world
    				var geometry = new THREE.BoxBufferGeometry( 1, 1, 1 );
    				geometry.translate( 0, 0.5, 0 );
    				var material = new THREE.MeshPhongMaterial( { color: 0xffffff, flatShading: true } );
    				var diban = new THREE.Mesh( geometry, material );
    				for ( var i = 0; i < 500; i ++ ) {
    
    					var mesh = new THREE.Mesh( geometry, material );
    					mesh.position.x = Math.random() * 1600 - 800;
    					mesh.position.y = 0;
    					mesh.position.z = Math.random() * 1600 - 800;
    					mesh.scale.x = 20;
    					mesh.scale.y = 50;
    					mesh.scale.z = 20;
    					mesh.updateMatrix();
    					mesh.matrixAutoUpdate = false;
    					mesh.name = "Jinold" + i;
    					
    					
    					scene.add( mesh );
    					objects.push( mesh );
    
    				}
    
    				// lights
    
    				var light = new THREE.DirectionalLight( 0xffffff );
    				light.position.set( 1, 1, 1 );
    				scene.add( light );
    
    				var light = new THREE.DirectionalLight( 0x002288 );
    				light.position.set( - 1, - 1, - 1 );
    				scene.add( light );
    
    				var light = new THREE.AmbientLight( 0x222222 );
    				scene.add( light );
    
    				//
    
    				window.addEventListener( 'resize', onWindowResize, false );
    
    
    				var gui = new dat.GUI();
    
    				gui.add( controls, 'screenSpacePanning' );
    				
    				
    				// 
    				var dragControls = new THREE.DragControls( objects, camera, renderer.domElement );
    				dragControls.addEventListener( 'dragstart', function (event) {
    					// alert(event.object.name)
    					event.object.material.emissive.Color = 0xff00ff
    					controls.enabled = false;
    
    				} );
    				dragControls.addEventListener( 'dragend', function (event) {
    
    					controls.enabled = true;
    
    				} );
    
    			}
    
    			function onWindowResize() {
    
    				camera.aspect = window.innerWidth / window.innerHeight;
    				camera.updateProjectionMatrix();
    
    				renderer.setSize( window.innerWidth, window.innerHeight );
    
    			}
    
    			function animate() {
    
    				requestAnimationFrame( animate );
    
    				controls.update(); // only required if controls.enableDamping = true, or if controls.autoRotate = true
    
    				render();
    
    			}
    
    			function render() {
    
    				renderer.render( scene, camera );
    
    			}
    
    		</script>
    
    	</body>
    </html>
    

     

    展开全文
  • WebGL编程指南

    2019-06-26 14:25:49
    WebGL编程指南
  • webgl 编程指南

    2017-12-23 14:58:18
    webgl 编程指南 源码,已经测试完全正确 # WebGL-Programming-Guide It is used to record all the code I have learned from this book. 《WebGL Programming Guide》 Interaction 3D Graphics Programming with ...
  • webGL编程示例源码

    2019-02-20 11:23:54
    WebGL编程指南》的主要篇幅讲解了WebGL 原生API 和三维图形学的基础知识,包括渲染管线、着色器、矩阵变换、着色器编程语言(GLSL ES)等等,也讲解了使用WebGL 渲染三维场景的一般技巧,如光照、阴影、雾化等等。...
  • Webgl编程指南书上例子 Webgl编程指南书上例子Webgl编程指南书上例子Webgl编程指南书上例子
  • webGL编程指南代码

    2019-01-02 15:34:39
    webGL编程指南的附书代码,包括各个章节的源码
  • webgl-cookbook:webgl编程指南_案例源码
  • webgl编程指南源码

    热门讨论 2014-09-14 17:25:26
    webgl编程指南源码 Webgl Programming Guide source
  • WebGL编程指南的书本源代码 WebGL编程指南的书本源代码 WebGL编程指南的书本源代码
  • WebGL编程指南.zip

    2019-06-21 16:56:38
    WebGL编程指南,使用三维开发,基础编程指南
  • WebGL编程指南pdf

    2018-04-04 22:45:56
    WebGL编程指南.pdf 中文扫描版,学习webgl技术必备入门资源,以及为后续threejs等框架学习打下良好基础
  • WebGL编程指南-源码

    2019-02-21 16:08:20
     《WebGL编程指南》的主要篇幅讲解了WebGL原生API和三维图形学的基础知识,包括渲染管线、着色器、矩阵变换、着色器编程语言(GLSLES)等等,也讲解了使用WebGL渲染三维场景的一般技巧,如光照、阴影、雾化等等。...
  • WebGL编程指南函数库

    2019-04-25 11:26:07
    WebGL编程指南书籍使用到的函数库 cuon-matrix.js cuon-utils.js webgl-debug.js webgl-utils.js!
  • WebGL编程指南.pdf

    2018-04-06 14:25:21
    WebGL编程指南.pdfWebGL编程指南.pdfWebGL编程指南.pdfWebGL编程指南.pdfWebGL编程指南.pdfWebGL编程指南.pdf
  • WebGL编程指南+源代码

    2019-07-08 23:00:29
    WebGL编程指南+源代码
  • WebGL编程指南pdf版本

    2019-04-22 11:39:47
    包含webgl编程指南pdf版本,还有教材中实例的源码(windows和mac版本),还有cuon-matrix.js,cuon-utils.js,webgl-debug.js,webgl-utils.js供大家下载使用!
  • WebGL编程指南.7z

    2019-05-15 14:35:00
    WebGL编程指南-配套源代码
  • webgl编程指南(webgl programming guide:interactive 3D graphics programming with webgl)电子工业出版社,谢光磊翻译版本。
  • WebGL编程指南 第七版 pdf 自带目录 WebGL编程指南 第七版 pdf 自带目录

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 900
精华内容 360
关键字:

webgl编程