MCPcopy
hub / github.com/HelloZeroNet/ZeroNet / init

Function init

plugins/Sidebar/media_globe/globe.js:89–172  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

87 var PI_HALF = Math.PI / 2;
88
89 function init() {
90
91 container.style.color = '#fff';
92 container.style.font = '13px/20px Arial, sans-serif';
93
94 var shader, uniforms, material;
95 w = container.offsetWidth || window.innerWidth;
96 h = container.offsetHeight || window.innerHeight;
97
98 camera = new THREE.PerspectiveCamera(30, w / h, 1, 10000);
99 camera.position.z = distance;
100
101 scene = new THREE.Scene();
102
103 var geometry = new THREE.SphereGeometry(200, 40, 30);
104
105 shader = Shaders['earth'];
106 uniforms = THREE.UniformsUtils.clone(shader.uniforms);
107
108 uniforms['texture'].value = THREE.ImageUtils.loadTexture(imgDir+'world.jpg');
109
110 material = new THREE.ShaderMaterial({
111
112 uniforms: uniforms,
113 vertexShader: shader.vertexShader,
114 fragmentShader: shader.fragmentShader
115
116 });
117
118 mesh = new THREE.Mesh(geometry, material);
119 mesh.rotation.y = Math.PI;
120 scene.add(mesh);
121
122 shader = Shaders['atmosphere'];
123 uniforms = THREE.UniformsUtils.clone(shader.uniforms);
124
125 material = new THREE.ShaderMaterial({
126
127 uniforms: uniforms,
128 vertexShader: shader.vertexShader,
129 fragmentShader: shader.fragmentShader,
130 side: THREE.BackSide,
131 blending: THREE.AdditiveBlending,
132 transparent: true
133
134 });
135
136 mesh = new THREE.Mesh(geometry, material);
137 mesh.scale.set( 1.1, 1.1, 1.1 );
138 scene.add(mesh);
139
140 geometry = new THREE.BoxGeometry(2.75, 2.75, 1);
141 geometry.applyMatrix(new THREE.Matrix4().makeTranslation(0,0,-0.5));
142
143 point = new THREE.Mesh(geometry);
144
145 renderer = new THREE.WebGLRenderer({antialias: true});
146 renderer.setSize(w, h);

Callers 1

globe.jsFile · 0.70

Calls 1

cloneMethod · 0.80

Tested by

no test coverage detected