File tree Expand file tree Collapse file tree
mode/libraries/vr/examples/Stereoscopy Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ // Stereoscopy in VR:
2+ // https://github.com/processing/processing-android/issues/593
3+ // By Javier Marco Rubio (https://github.com/jmarco2000)
4+
5+ import processing.vr.* ;
6+
7+ int eyedist = 50 ;
8+
9+ VRCamera cam;
10+
11+ float angulo= 0 ;
12+
13+ float cx, cz;
14+ float px, pz;
15+ float ang;
16+ float orbita = 400 ;
17+ float vorbita = 0.01 ;
18+
19+ // eye matrix
20+ PMatrix3D eyeMat = new PMatrix3D ();
21+
22+ boolean ciclo = false ; // test witch eye is beign draw
23+ float orientacion;
24+
25+ void setup () {
26+ fullScreen(VR );
27+ cameraUp();
28+ rectMode (CENTER );
29+ cam = new VRCamera (this );
30+ cam. setNear(10 );
31+ cam. setFar(2500 );
32+
33+ // posicion planeta
34+ // centro
35+ cx= width / 2 ;
36+ cz= - 200 ;
37+ ang= 0 ;
38+ }
39+
40+ void draw () {
41+ ciclo = ! ciclo;
42+
43+ background (0 );
44+ lights ();
45+ if (! ciclo) {
46+ getEyeMatrix(eyeMat);
47+ orientacion = acos (eyeMat. m00);
48+ if (eyeMat. m02 < 0 ) orientacion = - orientacion;
49+ println (degrees (orientacion));
50+ }
51+ if (ciclo) {
52+ cam. setPosition(+ (eyedist/ 2 ) * cos (orientacion), 100 , 500 + (eyedist/ 2 ) * sin (orientacion));
53+ } else {
54+ cam. setPosition(- (eyedist/ 2 ) * cos (orientacion), 100 , 500 - (eyedist/ 2 ) * sin (orientacion));
55+ }
56+
57+ pushMatrix ();
58+ px = cx + cos (ang) * orbita;
59+ pz = cz + sin (ang) * orbita;
60+ translate (px, 100 , pz);
61+ ang = ang + vorbita;
62+ rotateY (1.25 );
63+ rotateX (- 0.4 );
64+ rotateZ (angulo); // angulo=angulo+0.01;
65+ noStroke ();
66+ fill (251 , 100 , 10 );
67+ box (100 );
68+ popMatrix ();
69+
70+ pushMatrix ();
71+ translate (width / 2 , 100 , cz);
72+ rotateY (1.25 );
73+ rotateX (- 0.4 );
74+ rotateZ (angulo); // angulo=angulo+0.01;
75+ noStroke ();
76+ fill (0 , 200 , 10 );
77+ sphere (70 );
78+ popMatrix ();
79+ }
80+
81+ void mousePressed () {
82+ vorbita = 0 ;
83+ }
84+
85+ void mouseReleased () {
86+ vorbita = 0.01 ;
87+ }
88+
Original file line number Diff line number Diff line change 1+ mode =Android
2+ component =vr
3+ mode.id =processing.mode.android.AndroidMode
You can’t perform that action at this time.
0 commit comments