Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Open sidebar
Nicholas Wech
three.js-lite
Commits
a75dbac0
Commit
a75dbac0
authored
6 years ago
by
Mr.doob
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Improved webvr_lorenzattractor example.
parent
317f35d4
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
36 additions
and
22 deletions
+36
-22
examples/webvr_lorenzattractor.html
examples/webvr_lorenzattractor.html
+36
-22
No files found.
examples/webvr_lorenzattractor.html
View file @
a75dbac0
...
...
@@ -25,10 +25,10 @@
<script>
var
camera
,
scene
,
renderer
,
x
,
y
,
z
,
c
,
geometry
;
var
camera
,
scene
,
renderer
,
x
,
y
,
z
,
c
;
var
scale
=
.
0
15
;
// for reducing overall displayed size
var
multiplier
=
5
;
// integer, increase for faster visualization
var
scale
=
.
0
2
;
// for reducing overall displayed size
var
speed
=
5
;
// integer, increase for faster visualization
var
steps
=
100000
;
var
current
=
1
;
...
...
@@ -43,7 +43,9 @@
init
();
animate
();
function
move
()
{
function
draw
()
{
var
geometry
=
attractor
.
geometry
;
geometry
.
attributes
.
position
.
array
.
copyWithin
(
3
);
geometry
.
attributes
.
color
.
array
.
copyWithin
(
3
);
...
...
@@ -80,10 +82,8 @@
function
init
()
{
scene
=
new
THREE
.
Scene
();
scene
.
position
.
set
(
0
,
1.5
,
-
1
);
camera
=
new
THREE
.
PerspectiveCamera
(
50
,
window
.
innerWidth
/
window
.
innerHeight
,
0.1
,
2
);
camera
.
lookAt
(
0
,
1.5
,
-
1
);
camera
=
new
THREE
.
PerspectiveCamera
(
50
,
window
.
innerWidth
/
window
.
innerHeight
,
0.1
,
10
);
//
...
...
@@ -93,37 +93,56 @@
c
=
new
THREE
.
Color
();
geometry
=
new
THREE
.
BufferGeometry
();
var
geometry
=
new
THREE
.
BufferGeometry
();
var
positions
=
new
Float32Array
(
3
*
shown
);
for
(
var
i
=
0
;
i
<
positions
.
length
;
i
+=
3
)
{
positions
.
set
(
[
scale
*
x
,
scale
*
y
,
scale
*
z
],
i
);
}
geometry
.
addAttribute
(
'
position
'
,
new
THREE
.
BufferAttribute
(
positions
,
3
)
);
var
colors
=
new
Float32Array
(
3
*
shown
);
for
(
var
i
=
0
;
i
<
positions
.
length
;
i
+=
3
)
{
colors
.
set
(
[
1
,
0
,
0
],
i
);
}
geometry
.
addAttribute
(
'
color
'
,
new
THREE
.
BufferAttribute
(
colors
,
3
)
);
var
material
=
new
THREE
.
LineBasicMaterial
(
{
vertexColors
:
THREE
.
VertexColors
}
);
var
line
=
new
THREE
.
Line
(
geometry
,
material
);
line
.
frustumCulled
=
false
;
// critical to avoid blackouts!
scene
.
add
(
line
);
attractor
=
new
THREE
.
Line
(
geometry
,
material
);
attractor
.
position
.
set
(
0
,
1.5
,
-
2
);
attractor
.
frustumCulled
=
false
;
// critical to avoid blackouts!
scene
.
add
(
attractor
);
//
var
light
=
new
THREE
.
PointLight
(
0xffffff
,
1
);
light
.
color
=
c
;
light
.
distance
=
2
;
attractor
.
add
(
light
);
// scene.add( new THREE.PointLightHelper( light ))
var
ground
=
new
THREE
.
Mesh
(
new
THREE
.
PlaneBufferGeometry
(
10
,
10
),
new
THREE
.
MeshPhongMaterial
()
);
ground
.
geometry
.
rotateX
(
-
90
*
Math
.
PI
/
180
);
scene
.
add
(
ground
);
//
renderer
=
new
THREE
.
WebGLRenderer
(
{
antialias
:
true
}
);
renderer
.
autoClear
=
false
;
renderer
.
setPixelRatio
(
window
.
devicePixelRatio
);
renderer
.
setSize
(
window
.
innerWidth
,
window
.
innerHeight
);
renderer
.
shadowMap
.
enabled
=
true
;
renderer
.
vr
.
enabled
=
true
;
document
.
body
.
appendChild
(
renderer
.
domElement
);
...
...
@@ -152,16 +171,11 @@
function
render
()
{
scene
.
rotation
.
z
+=
.
001
;
for
(
var
i
=
0
;
i
<
multiplier
;
i
++
)
{
move
();
}
for
(
var
i
=
0
;
i
<
speed
;
i
++
)
draw
();
geometry
.
attributes
.
position
.
needsUpdate
=
true
;
geometry
.
attributes
.
color
.
needsUpdate
=
true
;
attractor
.
geometry
.
attributes
.
position
.
needsUpdate
=
true
;
attractor
.
geometry
.
attributes
.
color
.
needsUpdate
=
true
;
attractor
.
rotation
.
z
+=
.
001
;
renderer
.
render
(
scene
,
camera
);
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment