2

ThreeExtras.js を使用するこの webGL moonを分解しようとしています。

Threeextras.js は、Three.js の一部のバリアントに加えて、レポの他の場所からのいくつかの部分のようです。それに関するドキュメント、または標準の Three.js との違いの説明はありますか?

(バリアント ビルドのリポジトリも見つけましたが、three.js リポジトリ以外にドキュメントや起源についての言及はありません。) http://www.chandlerprall.com/threebuilds/

4

3 に答える 3

1

同じ WebGL の月のデモを見て、もっとうまくやれるかどうか試してみることにしました。Three.JS の最新バージョンで同様のことができる方法を確認したい場合は、私のMoon Demoをチェックしてください。リポジトリ ページにリンクされたブログが投稿されていますが、これは進行中の作業です。ただし、コードを掘り下げることを気にしない場合は、現在見ているデモよりもうまく使用できるでしょう。ライブ デモをご覧になりたい場合は、こちらをご覧ください。拡散照明と法線マッピングを実装します。ただし、鏡面照明は適用されませんでした。

于 2013-06-01T23:04:22.293 に答える
1

WebGL の月のデモで分解しようとしているのがテクスチャ ベースの効果である場合、ここにいくつかの情報があります。Three.js の最近のバージョンでは、バンプ マッピングやスペキュラー マッピングなどのテクスチャ効果の一部が THREE に組み込まれていました。 .MeshPhongMaterial。同様の一連の効果の例については、たとえば惑星地球について、次の例を確認してください。

http://stemkoski.github.io/Three.js/Earth.html

特に関連するコードは次のとおりです。

// Create the Earth with nice texturing - normal map for elevation, specular highlights
var sphereGeo = new THREE.SphereGeometry(100, 64, 32);  

var colors = THREE.ImageUtils.loadTexture( "images/earth-day.jpg" );
var bumps  = THREE.ImageUtils.loadTexture( "images/earth-topo.jpg" );
var shine  = THREE.ImageUtils.loadTexture( "images/earth-specular.jpg" );

var earthMaterial = new THREE.MeshPhongMaterial( { color: 0xffffff, map: colors, 
    bumpMap: bumps, bumpScale: 4, specular: 0xffffff, specularMap: shine, emissive: 0x888888 } );

var earthSphere = new THREE.Mesh( sphereGeo, earthMaterial ); 
scene.add(earthSphere);

お役に立てれば!

于 2013-05-30T04:22:46.120 に答える