1. 程式人生 > >three.js 原始碼註釋(四十九)Material /MeshNormalMaterial.js

three.js 原始碼註釋(四十九)Material /MeshNormalMaterial.js


俺也是剛開始學,好多地兒肯定不對還請見諒.

以下程式碼是THREE.JS 原始碼檔案中Material/MeshNormalMaterial.js檔案的註釋.

/**
 * @author mrdoob / http://mrdoob.com/
 *
 * parameters = {
 *  opacity: <float>,
 *
 *  shading: THREE.FlatShading,
 *  blending: THREE.NormalBlending,
 *  depthTest: <bool>,
 *  depthWrite: <bool>,
 *
 *  wireframe: <boolean>,
 *  wireframeLinewidth: <float>
 * }
 */

/*
///MeshNormalMaterial方法根據引數parameters建立mesh(網格)的標準材質型別,到這裡真的不知道怎麼翻譯才好,還不如叫NormalMaterial呢,
///parameters引數的格式看上面.MeshNormalMaterial物件的功能函式採用,定義構造的函式原型物件來實現.大部分屬性方法繼承自材質的基類Material.
*/
///<summary>MeshNormalMaterial</summary>
///<param name ="parameters" type="String">string型別的JSON格式材質屬性引數</param>
///<returns type="MeshNormalMaterial">返回MeshNormalMaterial,網格標準材質.</returns>
THREE.MeshNormalMaterial = function ( parameters ) {

	THREE.Material.call( this, parameters );	//呼叫Material物件的call方法,將原本屬於Material的方法交給當前物件MeshNormalMaterial來使用.

	this.shading = THREE.FlatShading;	//著色方式,THREE.FlatShading //GL_FLAT恆定著色:對點,直線或多邊形採用一種顏色進行繪製,整個圖元的顏色就是它的任何一點的顏色。
										//還有以下幾種THREE.NoShading = 0;    //不著色???? 
										//THREE.SmoothShading = 1; 平滑著色:用多種顏色進行繪製,每個頂點都是單獨進行處理的,各頂點和各圖元之間採用均勻插值。

	this.wireframe = false;			//以線框方式渲染幾何體.預設為false
	this.wireframeLinewidth = 1;		//線框的寬度.

	this.morphTargets = false;	//定義材質是否設定目標變形動畫,預設為false

	this.setValues( parameters );	//呼叫Material類的setValues方法,將引數parameters賦值給當前MeshNormalMaterial材質的屬性.

};

/*************************************************************
****下面是MeshNormalMaterial物件的方法屬性定義,繼承自Material
*************************************************************/
THREE.MeshNormalMaterial.prototype = Object.create( THREE.Material.prototype );

/*clone方法
///clone方法克隆MeshNormalMaterial物件,
*/
///<summary>clone</summary>
///<param name ="material" type="MeshNormalMaterial">MeshNormalMaterial物件,可有可無.</param>
///<returns type="MeshNormalMaterial">返回克隆的MeshNormalMaterial物件</returns>	
THREE.MeshNormalMaterial.prototype.clone = function () {
	//以下是將材質的屬性一一進行復制
	var material = new THREE.MeshNormalMaterial();

	THREE.Material.prototype.clone.call( this, material );

	material.shading = this.shading;

	material.wireframe = this.wireframe;
	material.wireframeLinewidth = this.wireframeLinewidth;

	return material;	//返回克隆的MeshNormalMaterial物件

};




以下程式碼是THREE.JS 原始碼檔案中Material/MeshNormalMaterial.js檔案的註釋.

相關推薦

three.js 原始碼註釋Material /MeshNormalMaterial.js

俺也是剛開始學,好多地兒肯定不對還請見諒. 以下程式碼是THREE.JS 原始碼檔案中Material/MeshNormalMaterial.js檔案的註釋. /** * @author mrdoob / http://mrdoob.com/ * * para

three.js 原始碼註釋objects/Mesh.js

俺也是剛開始學,好多地兒肯定不對還請見諒. 以下程式碼是THREE.JS 原始碼檔案中objects/Mesh.js檔案的註釋. /** * @author mrdoob / http://mrdoob.com/ * @author alteredq / htt

three.js 原始碼註釋Light/AreaLight.js

俺也是剛開始學,好多地兒肯定不對還請見諒. 以下程式碼是THREE.JS 原始碼檔案中Light/AreaLight.js檔案的註釋. /** * @author MPanknin / http://www.redplant.de/ * @author alte

three.js 原始碼註釋Material /MeshDepthMaterial.js

俺也是剛開始學,好多地兒肯定不對還請見諒. 以下程式碼是THREE.JS 原始碼檔案中materials/MeshDepthMaterial.js檔案的註釋. /** * @author mrdoob / http://mrdoob.com/ * @author

three.js 原始碼註釋Core/Object3D.js

俺也是剛開始學,好多地兒肯定不對還請見諒. 以下程式碼是THREE.JS 原始碼檔案中Core/Object3D.js檔案的註釋. /** * @author mrdoob / http://mrdoob.com/ * @author mikael emting

three.js 原始碼註釋Core/BufferGeometry.js

俺也是剛開始學,好多地兒肯定不對還請見諒. 以下程式碼是THREE.JS 原始碼檔案中Core/BufferGeometry.js檔案的註釋. /** * @author alteredq / http://alteredqualia.com/ */ /* //

three.js 原始碼註釋extras/geometries/IcosahedronGeometry.js

俺也是剛開始學,好多地兒肯定不對還請見諒. 以下程式碼是THREE.JS 原始碼檔案中extras/geometries/IcosahedronGeometry.js檔案的註釋. /** * @author timothypratley / https://git

three.js 原始碼註釋extras/geometries/ParametricGeometry.js

俺也是剛開始學,好多地兒肯定不對還請見諒. 以下程式碼是THREE.JS 原始碼檔案中extras/geometries/ParametricGeometry.js檔案的註釋. /** * @author zz85 / https://github.com/zz8

three.js 原始碼註釋Texture/Texture.js

俺也是剛開始學,好多地兒肯定不對還請見諒. 以下程式碼是THREE.JS 原始碼檔案中Texture/Texture.js檔案的註釋. /** * @author mrdoob / http://mrdoob.com/ * @author alteredq /

three.js 原始碼註釋Material /MeshPhongMaterial.js

俺也是剛開始學,好多地兒肯定不對還請見諒. 以下程式碼是THREE.JS 原始碼檔案中materials/MeshPhongMaterial.js檔案的註釋. /** * @author mrdoob / http://mrdoob.com/ * @author

three.js 原始碼註釋objects/Line.js

俺也是剛開始學,好多地兒肯定不對還請見諒. 以下程式碼是THREE.JS 原始碼檔案中objects/Line.js檔案的註釋. /** * @author mrdoob / http://mrdoob.com/ */ /* ///Line物件,建立一條線,或者

three.js 原始碼註釋Math/Vector3.js

以下程式碼是THREE.JS 原始碼檔案中Math/Vector3.js檔案的註釋. // File:src/math/Vector3.js /** * @author mrdoob / http://mrdoob.com/ * @author *kil

數組類模板

數組類 類模板 數值型模板參數 之前我們學習了類模板,今天我們來看看數組類模板。模板參數可以是數值型參數(非類型參數),如下 使用數值型模板參數是有限制的,如:a> 變量不能作為模板參數;b> 浮點數不能作為模板參數;c> 類對象不能作為模板參數。其

《Android 基礎》Navigation Of JetPack【譯】

原文地址: https://developer.android.google.cn/topic/libraries/architecture/navigation/ 介紹 Jetpack是Android軟體元件的集合,可以使你更輕鬆地開發出色的Android應用

ElasticSearch最佳入門實踐各種query搜尋語法

1、match all 查詢所有 GET /_search { "query": { "match_all": {} } } 2、match 匹配某一個filed是否包含文字 GET /_search {

Java基礎-常用類庫

正則表示式 背景 通過之前一系列的分析可以看見,String是一個非常萬能的型別,因為String不僅僅可以支援有各種字串的處理操作,也支援有向各個資料型別的轉換功能,所以在專案的開發之中,只要是使用者輸入的資訊基本都是String表示。於是在向其他資料轉換的時

Android原始碼解析-->應用程式返回按鍵執行流程

從這篇文章中我們開始分析android系統的事件分發流程,其實網上已經有了很多關於android系統的事件分發流程的文章,奈何看了很多但是印象還不是很深,所以這裡總結一番。 android系統的事件分發流程分為很多部分: Native層 –> V

c#Winform自定義控制元件-下拉框表格

前提 入行已經7,8年了,一直想做一套漂亮點的自定義控制元件,於是就有了本系列文章。 GitHub:https://github.com/kwwwvagaa/NetWinformControl 碼雲:https://gitee.com/kwwwvagaa/net_winform_custom_contr

three.js 原始碼註釋extras/core/Shape.js

俺也是剛開始學,好多地兒肯定不對還請見諒. 以下程式碼是THREE.JS 原始碼檔案中extras/core/Shape.js檔案的註釋. /** * @author zz85 / http://www.lab4games.net/zz85/blog * Def

three.js 原始碼註釋Math/Sphere.js

俺也是剛開始學,好多地兒肯定不對還請見諒. 以下程式碼是THREE.JS 原始碼檔案中Math/Sphere.js檔案的註釋. // File:src/math/Sphere.js /** * @author bhouston / http://exocorte