11 'stereoscopic-mode':'mono', // stereo-horizontal, stereo-vertical, stereo-interlaced,
12 'stereo-base': 65 // Distance in millimeters between left/right cameras typically between (50-70mm)
17 'view-mode': viewMode,
22 var dali = require('dali')( options );
26 var dali = require('../build/Release/dali')( options );
31 daliApp.createMeshActor = function() {
35 "attribute mediump vec2 aPosition1;\
36 attribute mediump vec2 aPosition2;\
37 uniform mediump mat4 uMvpMatrix;\
38 uniform mediump vec3 uSize;\
39 uniform mediump float uMorphAmount;\
42 mediump vec2 morphPosition = mix(aPosition1, aPosition2, uMorphAmount);\
43 mediump vec4 vertexPosition = vec4(morphPosition, 0.0, 1.0);\
44 vertexPosition.xyz *= uSize;\
45 vertexPosition = uMvpMatrix * vertexPosition;\
46 gl_Position = vertexPosition;\
50 "uniform lowp vec4 uColor;\
51 uniform sampler2D sTexture;\
54 gl_FragColor = uColor;\
58 vertexShader : vertShader,
59 fragmentShader: fragShader
62 var shader = new dali.Shader(shaderOptions);
64 // Create vertex buffer
65 var pentagonVertexFormat ={ "aPosition1" : dali.PROPERTY_VECTOR2 };
67 var pentagonVertexData = [ 0, 1,
73 var pentagonVertexDataArray = new Float32Array(pentagonVertexData.length);
74 pentagonVertexDataArray.set(pentagonVertexData, 0);
75 var pentagonVertices = new dali.PropertyBuffer(pentagonVertexFormat);
76 pentagonVertices.setData(pentagonVertexDataArray, 5);
78 var pentacleVertexFormat ={ "aPosition2" : dali.PROPERTY_VECTOR2};
80 var pentacleVertexData = [ 0, -1,
86 var pentacleVertexDataArray = new Float32Array(pentacleVertexData.length);
87 pentacleVertexDataArray.set(pentacleVertexData, 0);
88 var pentacleVertices = new dali.PropertyBuffer(pentacleVertexFormat);
89 pentacleVertices.setData(pentacleVertexDataArray, 5);
91 var indexFormat ={ "indices" : dali.PROPERTY_INTEGER };
93 var indexData = [0, 1, 1, 2, 2, 3, 3, 4, 4, 0];
95 var indexDataArray = new Uint32Array(indexData.length);
96 indexDataArray.set(indexData, 0);
99 var geometry = new dali.Geometry();
100 geometry.addVertexBuffer( pentagonVertices );
101 geometry.addVertexBuffer( pentacleVertices );
102 geometry.setIndexBuffer( indexDataArray, 10 );
103 geometry.setType( dali.GEOMETRY_LINES );
105 var renderer = new dali.Renderer(geometry, shader);
106 renderer.depthIndex = 0;
109 var meshActor = new dali.Actor();
110 meshActor.addRenderer( renderer );
111 meshActor.size = [300, 300, 0];
112 meshActor.parentOrigin = dali.CENTER;
113 meshActor.anchorPoint = dali.CENTER;
114 meshActor.registerAnimatableProperty("uMorphAmount", 0.0);
116 dali.stage.add( meshActor );
118 // Animate the mesh actor
119 var animation = new dali.Animation(5);
121 var keyFramesIndex = [{progress:0.0, value: 0.0}, {progress:1.0, value:1.0}];
122 var animOptions = { alpha:dali.ALPHA_FUNCTION_SIN, delay:0, duration:5};
124 animation.animateBetween( meshActor, "uMorphAmount", keyFramesIndex, animOptions );
125 animation.setLooping(true);
134 daliApp.init = function()
136 daliApp.createMeshActor();