summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/examples/elementary/evas3d_map_example.c10
-rw-r--r--src/examples/elementary/evas3d_object_on_button_example.c8
-rw-r--r--src/examples/elementary/evas3d_scene_on_button_example.c8
-rw-r--r--src/examples/elementary/performance/graphical.c12
-rw-r--r--src/examples/elementary/sphere_hunter/evas_3d_sphere_hunter.c12
-rw-r--r--src/examples/evas/evas-3d-aabb.c10
-rw-r--r--src/examples/evas/evas-3d-blending.c10
-rw-r--r--src/examples/evas/evas-3d-colorpick.c8
-rw-r--r--src/examples/evas/evas-3d-cube-rotate.c8
-rw-r--r--src/examples/evas/evas-3d-cube.c8
-rw-r--r--src/examples/evas/evas-3d-cube2.c8
-rw-r--r--src/examples/evas/evas-3d-eet.c10
-rw-r--r--src/examples/evas/evas-3d-fog.c12
-rw-r--r--src/examples/evas/evas-3d-frustum.c10
-rw-r--r--src/examples/evas/evas-3d-hull.c12
-rw-r--r--src/examples/evas/evas-3d-md2.c8
-rw-r--r--src/examples/evas/evas-3d-mmap-set.c8
-rw-r--r--src/examples/evas/evas-3d-obj.c8
-rw-r--r--src/examples/evas/evas-3d-parallax-occlusion.c8
-rw-r--r--src/examples/evas/evas-3d-pick.c6
-rw-r--r--src/examples/evas/evas-3d-ply.c8
-rw-r--r--src/examples/evas/evas-3d-proxy.c8
-rw-r--r--src/examples/evas/evas-3d-shadows.c24
-rw-r--r--src/examples/evas/evas-3d-static-lod.c12
-rw-r--r--src/examples/evas/shooter/evas-3d-shooter-header.c6
-rw-r--r--src/examples/evas/shooter/evas-3d-shooter.c4
-rw-r--r--src/lib/edje/edje_load.c8
-rw-r--r--src/lib/evas/canvas/evas_canvas3d_node.c43
-rw-r--r--src/lib/evas/canvas/evas_canvas3d_node.eo24
29 files changed, 166 insertions, 155 deletions
diff --git a/src/examples/elementary/evas3d_map_example.c b/src/examples/elementary/evas3d_map_example.c
index d71017858a..5426d30966 100644
--- a/src/examples/elementary/evas3d_map_example.c
+++ b/src/examples/elementary/evas3d_map_example.c
@@ -881,7 +881,7 @@ skybox_setup(void)
881 evas_canvas3d_material_color_set(skybox_material, EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, 0.1, 0.1, 0.1, 1.0); 881 evas_canvas3d_material_color_set(skybox_material, EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, 0.1, 0.1, 0.1, 1.0);
882 evas_canvas3d_material_shininess_set(skybox_material, 50.0); 882 evas_canvas3d_material_shininess_set(skybox_material, 50.0);
883 883
884 skybox_mesh_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 884 skybox_mesh_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
885 evas_canvas3d_node_member_add(root_node, skybox_mesh_node); 885 evas_canvas3d_node_member_add(root_node, skybox_mesh_node);
886 evas_canvas3d_node_mesh_add(skybox_mesh_node, skybox_mesh); 886 evas_canvas3d_node_mesh_add(skybox_mesh_node, skybox_mesh);
887 evas_canvas3d_mesh_shader_mode_set(skybox_mesh, EVAS_CANVAS3D_SHADER_MODE_DIFFUSE); 887 evas_canvas3d_mesh_shader_mode_set(skybox_mesh, EVAS_CANVAS3D_SHADER_MODE_DIFFUSE);
@@ -940,7 +940,7 @@ camera_setup(void)
940 camera_right_vec.y = 0.0; 940 camera_right_vec.y = 0.0;
941 camera_right_vec.z = 0.0; 941 camera_right_vec.z = 0.0;
942 942
943 camera_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 943 camera_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
944 evas_canvas3d_node_camera_set(camera_node, camera); 944 evas_canvas3d_node_camera_set(camera_node, camera);
945 evas_canvas3d_node_position_set(camera_node, camera_pos.x, camera_pos.y, camera_pos.z); 945 evas_canvas3d_node_position_set(camera_node, camera_pos.x, camera_pos.y, camera_pos.z);
946 evas_canvas3d_node_look_at_set(camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, camera_up_vec.x, camera_up_vec.y, camera_up_vec.z); 946 evas_canvas3d_node_look_at_set(camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, camera_up_vec.x, camera_up_vec.y, camera_up_vec.z);
@@ -955,7 +955,7 @@ light_setup(void)
955 evas_canvas3d_light_diffuse_set(light, 1.0, 1.0, 1.0, 1.0); 955 evas_canvas3d_light_diffuse_set(light, 1.0, 1.0, 1.0, 1.0);
956 evas_canvas3d_light_specular_set(light, 0.2, 0.2, 0.2, 1.0); 956 evas_canvas3d_light_specular_set(light, 0.2, 0.2, 0.2, 1.0);
957 957
958 light_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 958 light_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
959 evas_canvas3d_node_light_set(light_node, light); 959 evas_canvas3d_node_light_set(light_node, light);
960 evas_canvas3d_node_position_set(light_node, 0.0, 0.0, MAX_CAMERA_DISTANCE); 960 evas_canvas3d_node_position_set(light_node, 0.0, 0.0, MAX_CAMERA_DISTANCE);
961 evas_canvas3d_node_look_at_set(light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 961 evas_canvas3d_node_look_at_set(light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -1001,7 +1001,7 @@ mesh_setup(void)
1001 evas_canvas3d_material_color_set(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, 0.1, 0.1, 0.1, 1.0); 1001 evas_canvas3d_material_color_set(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, 0.1, 0.1, 0.1, 1.0);
1002 evas_canvas3d_material_shininess_set(material, 50.0); 1002 evas_canvas3d_material_shininess_set(material, 50.0);
1003 1003
1004 mesh_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 1004 mesh_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
1005 evas_canvas3d_node_member_add(root_node, mesh_node); 1005 evas_canvas3d_node_member_add(root_node, mesh_node);
1006 evas_canvas3d_node_mesh_add(mesh_node, mesh); 1006 evas_canvas3d_node_mesh_add(mesh_node, mesh);
1007 evas_canvas3d_mesh_shader_mode_set(mesh, EVAS_CANVAS3D_SHADER_MODE_NORMAL_MAP); 1007 evas_canvas3d_mesh_shader_mode_set(mesh, EVAS_CANVAS3D_SHADER_MODE_NORMAL_MAP);
@@ -1169,7 +1169,7 @@ elm_main(int argc EINA_UNUSED, char **argv EINA_UNUSED)
1169 scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas); 1169 scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas);
1170 1170
1171 /* Add a root node for the scene. */ 1171 /* Add a root node for the scene. */
1172 root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 1172 root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
1173 1173
1174 skybox_setup(); 1174 skybox_setup();
1175 texture_source_setup(); 1175 texture_source_setup();
diff --git a/src/examples/elementary/evas3d_object_on_button_example.c b/src/examples/elementary/evas3d_object_on_button_example.c
index c3866b78fe..7be8f601cd 100644
--- a/src/examples/elementary/evas3d_object_on_button_example.c
+++ b/src/examples/elementary/evas3d_object_on_button_example.c
@@ -164,7 +164,7 @@ _camera_setup(Scene_Data *data)
164 evas_canvas3d_camera_projection_perspective_set(data->camera, 20.0, 1.0, 2.0, 50.0); 164 evas_canvas3d_camera_projection_perspective_set(data->camera, 20.0, 1.0, 2.0, 50.0);
165 165
166 data->camera_node = 166 data->camera_node =
167 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 167 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
168 evas_canvas3d_node_camera_set(data->camera_node, data->camera); 168 evas_canvas3d_node_camera_set(data->camera_node, data->camera);
169 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 15.0); 169 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 15.0);
170 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, -1.0, 0.0); 170 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, -1.0, 0.0);
@@ -180,7 +180,7 @@ _light_setup(Scene_Data *data)
180 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0); 180 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0);
181 181
182 data->light_node = 182 data->light_node =
183 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 183 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
184 evas_canvas3d_node_light_set(data->light_node, data->light); 184 evas_canvas3d_node_light_set(data->light_node, data->light);
185 evas_canvas3d_node_position_set(data->light_node, 0.0, 0.0, 10.0); 185 evas_canvas3d_node_position_set(data->light_node, 0.0, 0.0, 10.0);
186 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 186 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -220,7 +220,7 @@ _mesh_setup(Scene_Data *data)
220 evas_canvas3d_mesh_color_pick_enable_set(data->mesh, EINA_TRUE); 220 evas_canvas3d_mesh_color_pick_enable_set(data->mesh, EINA_TRUE);
221 221
222 data->mesh_node = 222 data->mesh_node =
223 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 223 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
224 evas_canvas3d_node_member_add(data->root_node, data->mesh_node); 224 evas_canvas3d_node_member_add(data->root_node, data->mesh_node);
225 evas_canvas3d_node_mesh_add(data->mesh_node, data->mesh); 225 evas_canvas3d_node_mesh_add(data->mesh_node, data->mesh);
226} 226}
@@ -233,7 +233,7 @@ _scene_setup(Scene_Data *data)
233 evas_canvas3d_scene_background_color_set(data->scene, 0.0, 0.0, 0.0, 0.0); 233 evas_canvas3d_scene_background_color_set(data->scene, 0.0, 0.0, 0.0, 0.0);
234 234
235 data->root_node = 235 data->root_node =
236 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 236 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
237 237
238 _camera_setup(data); 238 _camera_setup(data);
239 _light_setup(data); 239 _light_setup(data);
diff --git a/src/examples/elementary/evas3d_scene_on_button_example.c b/src/examples/elementary/evas3d_scene_on_button_example.c
index f2c64a86df..ffcc4b2db0 100644
--- a/src/examples/elementary/evas3d_scene_on_button_example.c
+++ b/src/examples/elementary/evas3d_scene_on_button_example.c
@@ -125,7 +125,7 @@ _camera_setup(Scene_Data *data)
125 evas_canvas3d_camera_projection_perspective_set(data->camera, 60.0, 1.0, 2.0, 50.0); 125 evas_canvas3d_camera_projection_perspective_set(data->camera, 60.0, 1.0, 2.0, 50.0);
126 126
127 data->camera_node = 127 data->camera_node =
128 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 128 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
129 evas_canvas3d_node_camera_set(data->camera_node, data->camera); 129 evas_canvas3d_node_camera_set(data->camera_node, data->camera);
130 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 10.0); 130 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 10.0);
131 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 131 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -141,7 +141,7 @@ _light_setup(Scene_Data *data)
141 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0); 141 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0);
142 142
143 data->light_node = 143 data->light_node =
144 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 144 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
145 evas_canvas3d_node_light_set(data->light_node, data->light); 145 evas_canvas3d_node_light_set(data->light_node, data->light);
146 evas_canvas3d_node_position_set(data->light_node, 0.0, 0.0, 10.0); 146 evas_canvas3d_node_position_set(data->light_node, 0.0, 0.0, 10.0);
147 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 147 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -175,7 +175,7 @@ _mesh_setup(Scene_Data *data)
175 evas_canvas3d_mesh_frame_material_set(data->mesh, 0, data->material); 175 evas_canvas3d_mesh_frame_material_set(data->mesh, 0, data->material);
176 176
177 data->mesh_node = 177 data->mesh_node =
178 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 178 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
179 evas_canvas3d_node_member_add(data->root_node, data->mesh_node); 179 evas_canvas3d_node_member_add(data->root_node, data->mesh_node);
180 evas_canvas3d_node_mesh_add(data->mesh_node, data->mesh); 180 evas_canvas3d_node_mesh_add(data->mesh_node, data->mesh);
181} 181}
@@ -188,7 +188,7 @@ _scene_setup(Scene_Data *data)
188 evas_canvas3d_scene_background_color_set(data->scene, 0.0, 0.0, 0.0, 0.0); 188 evas_canvas3d_scene_background_color_set(data->scene, 0.0, 0.0, 0.0, 0.0);
189 189
190 data->root_node = 190 data->root_node =
191 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 191 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
192 192
193 _camera_setup(data); 193 _camera_setup(data);
194 _light_setup(data); 194 _light_setup(data);
diff --git a/src/examples/elementary/performance/graphical.c b/src/examples/elementary/performance/graphical.c
index de4acb9473..06959ea2e7 100644
--- a/src/examples/elementary/performance/graphical.c
+++ b/src/examples/elementary/performance/graphical.c
@@ -272,7 +272,7 @@ void _init_bounding()
272 evas_canvas3d_mesh_frame_material_set(globalGraphical.mesh_box, 0, globalGraphical.material_box); 272 evas_canvas3d_mesh_frame_material_set(globalGraphical.mesh_box, 0, globalGraphical.material_box);
273 273
274 globalGraphical.mesh_nodebox = 274 globalGraphical.mesh_nodebox =
275 efl_add(EVAS_CANVAS3D_NODE_CLASS, globalGraphical.evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH), evas_canvas3d_node_position_set(efl_added, 0, -30.0, 0.0)); 275 efl_add(EVAS_CANVAS3D_NODE_CLASS, globalGraphical.evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH), evas_canvas3d_node_position_set(efl_added, 0, -30.0, 0.0));
276 evas_canvas3d_node_member_add(globalGraphical.root_node, globalGraphical.mesh_nodebox); 276 evas_canvas3d_node_member_add(globalGraphical.root_node, globalGraphical.mesh_nodebox);
277 evas_canvas3d_node_mesh_add(globalGraphical.mesh_nodebox, globalGraphical.mesh_box); 277 evas_canvas3d_node_mesh_add(globalGraphical.mesh_nodebox, globalGraphical.mesh_box);
278} 278}
@@ -359,7 +359,7 @@ _change_scene_setup()
359 for (i = 0; i < quantity; i++) 359 for (i = 0; i < quantity; i++)
360 { 360 {
361 globalGraphical.mesh_node = 361 globalGraphical.mesh_node =
362 efl_add(EVAS_CANVAS3D_NODE_CLASS, globalGraphical.evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH), evas_canvas3d_node_position_set(efl_added, globalGraphical.places[i].position.x * 20, globalGraphical.places[i].position.y * 20, globalGraphical.places[i].position.z * 20)); 362 efl_add(EVAS_CANVAS3D_NODE_CLASS, globalGraphical.evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH), evas_canvas3d_node_position_set(efl_added, globalGraphical.places[i].position.x * 20, globalGraphical.places[i].position.y * 20, globalGraphical.places[i].position.z * 20));
363 if (globalGraphical.model_path) 363 if (globalGraphical.model_path)
364 evas_canvas3d_node_scale_set(globalGraphical.mesh_node, 0.2, 0.2, 0.2); 364 evas_canvas3d_node_scale_set(globalGraphical.mesh_node, 0.2, 0.2, 0.2);
365 evas_canvas3d_node_member_add(globalGraphical.root_node, globalGraphical.mesh_node); 365 evas_canvas3d_node_member_add(globalGraphical.root_node, globalGraphical.mesh_node);
@@ -397,14 +397,14 @@ _init_scene(Evas_Object *img)
397 globalGraphical.scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, globalGraphical.evas); 397 globalGraphical.scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, globalGraphical.evas);
398 398
399 /* Add the root node for the scene. */ 399 /* Add the root node for the scene. */
400 globalGraphical.root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, globalGraphical.evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 400 globalGraphical.root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, globalGraphical.evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
401 401
402 /* Add the camera. */ 402 /* Add the camera. */
403 globalGraphical.camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, globalGraphical.evas); 403 globalGraphical.camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, globalGraphical.evas);
404 evas_canvas3d_camera_projection_perspective_set(globalGraphical.camera, globalGraphical.angle, 1.0, 2.0, 1000.0); 404 evas_canvas3d_camera_projection_perspective_set(globalGraphical.camera, globalGraphical.angle, 1.0, 2.0, 1000.0);
405 405
406 globalGraphical.camera_node = 406 globalGraphical.camera_node =
407 efl_add(EVAS_CANVAS3D_NODE_CLASS, globalGraphical.evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 407 efl_add(EVAS_CANVAS3D_NODE_CLASS, globalGraphical.evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
408 evas_canvas3d_node_camera_set(globalGraphical.camera_node, globalGraphical.camera); 408 evas_canvas3d_node_camera_set(globalGraphical.camera_node, globalGraphical.camera);
409 evas_canvas3d_node_position_set(globalGraphical.camera_node, 0.0, 0.0, 25.0); 409 evas_canvas3d_node_position_set(globalGraphical.camera_node, 0.0, 0.0, 25.0);
410 evas_canvas3d_node_look_at_set(globalGraphical.camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 410 evas_canvas3d_node_look_at_set(globalGraphical.camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -418,7 +418,7 @@ _init_scene(Evas_Object *img)
418 evas_canvas3d_light_spot_cutoff_set(globalGraphical.light, globalGraphical.angle / 15); 418 evas_canvas3d_light_spot_cutoff_set(globalGraphical.light, globalGraphical.angle / 15);
419 419
420 globalGraphical.light_node = 420 globalGraphical.light_node =
421 efl_add(EVAS_CANVAS3D_NODE_CLASS, globalGraphical.evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 421 efl_add(EVAS_CANVAS3D_NODE_CLASS, globalGraphical.evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
422 evas_canvas3d_node_light_set(globalGraphical.light_node, globalGraphical.light); 422 evas_canvas3d_node_light_set(globalGraphical.light_node, globalGraphical.light);
423 evas_canvas3d_node_position_set(globalGraphical.light_node, 0.0, 100.0, 1.0); 423 evas_canvas3d_node_position_set(globalGraphical.light_node, 0.0, 100.0, 1.0);
424 evas_canvas3d_node_look_at_set(globalGraphical.light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 424 evas_canvas3d_node_look_at_set(globalGraphical.light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -474,7 +474,7 @@ _init_scene(Evas_Object *img)
474 for (i = 0; i < quantity; i++) 474 for (i = 0; i < quantity; i++)
475 { 475 {
476 globalGraphical.mesh_node = 476 globalGraphical.mesh_node =
477 efl_add(EVAS_CANVAS3D_NODE_CLASS, globalGraphical.evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH), evas_canvas3d_node_position_set(efl_added, globalGraphical.places[i].position.x * 20, globalGraphical.places[i].position.y * 20, globalGraphical.places[i].position.z * 20)); 477 efl_add(EVAS_CANVAS3D_NODE_CLASS, globalGraphical.evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH), evas_canvas3d_node_position_set(efl_added, globalGraphical.places[i].position.x * 20, globalGraphical.places[i].position.y * 20, globalGraphical.places[i].position.z * 20));
478 if (globalGraphical.model_path) 478 if (globalGraphical.model_path)
479 evas_canvas3d_node_scale_set(globalGraphical.mesh_node, 0.2, 0.2, 0.2); 479 evas_canvas3d_node_scale_set(globalGraphical.mesh_node, 0.2, 0.2, 0.2);
480 evas_canvas3d_node_member_add(globalGraphical.root_node, globalGraphical.mesh_node); 480 evas_canvas3d_node_member_add(globalGraphical.root_node, globalGraphical.mesh_node);
diff --git a/src/examples/elementary/sphere_hunter/evas_3d_sphere_hunter.c b/src/examples/elementary/sphere_hunter/evas_3d_sphere_hunter.c
index 7127919eba..59e0ebedac 100644
--- a/src/examples/elementary/sphere_hunter/evas_3d_sphere_hunter.c
+++ b/src/examples/elementary/sphere_hunter/evas_3d_sphere_hunter.c
@@ -437,7 +437,7 @@ _camera_setup(Scene_Data *data)
437 data->camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); 437 data->camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas);
438 evas_canvas3d_camera_projection_perspective_set(data->camera, 50.0, 1.0, 1.0, 1000.0); 438 evas_canvas3d_camera_projection_perspective_set(data->camera, 50.0, 1.0, 1.0, 1000.0);
439 439
440 data->camera_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 440 data->camera_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
441 evas_canvas3d_node_camera_set(data->camera_node, data->camera); 441 evas_canvas3d_node_camera_set(data->camera_node, data->camera);
442 evas_canvas3d_node_position_set(data->camera_node, 0.0, 40, 70); 442 evas_canvas3d_node_position_set(data->camera_node, 0.0, 40, 70);
443 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 443 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -465,7 +465,7 @@ _light_setup(Scene_Data *data)
465 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0); 465 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0);
466 evas_canvas3d_light_projection_perspective_set(data->light, 100.0, 1.0, 1.0, 1000.0); 466 evas_canvas3d_light_projection_perspective_set(data->light, 100.0, 1.0, 1.0, 1000.0);
467 467
468 data->light_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 468 data->light_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
469 evas_canvas3d_node_light_set(data->light_node, data->light); 469 evas_canvas3d_node_light_set(data->light_node, data->light);
470 evas_canvas3d_node_position_set(data->light_node, 0.1, 25.0, 0.1); 470 evas_canvas3d_node_position_set(data->light_node, 0.1, 25.0, 0.1);
471 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 471 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -507,7 +507,7 @@ _create_bondar(Scene_Data *data, Evas_Real scale_x, Evas_Real scale_y, Evas_Real
507 507
508 mesh = efl_add(EVAS_CANVAS3D_MESH_CLASS, evas); 508 mesh = efl_add(EVAS_CANVAS3D_MESH_CLASS, evas);
509 material = efl_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); 509 material = efl_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas);
510 node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 510 node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
511 511
512 evas_canvas3d_material_enable_set(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_AMBIENT, EINA_TRUE); 512 evas_canvas3d_material_enable_set(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_AMBIENT, EINA_TRUE);
513 evas_canvas3d_material_enable_set(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, EINA_TRUE); 513 evas_canvas3d_material_enable_set(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, EINA_TRUE);
@@ -555,7 +555,7 @@ _create_cubes(Scene_Data *data, Evas_Real r, int count)
555 Eo *node = NULL; 555 Eo *node = NULL;
556 556
557 alpha = d_alpha * i * M_PI / 180; 557 alpha = d_alpha * i * M_PI / 180;
558 node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 558 node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
559 559
560 evas_canvas3d_node_mesh_add(node, data->mesh_cube); 560 evas_canvas3d_node_mesh_add(node, data->mesh_cube);
561 evas_canvas3d_node_position_set(node, r * sin(alpha), 2.0 + (r / 4 * sin(alpha)), r * cos(alpha)); 561 evas_canvas3d_node_position_set(node, r * sin(alpha), 2.0 + (r / 4 * sin(alpha)), r * cos(alpha));
@@ -574,7 +574,7 @@ _mesh_ball_setup(Scene_Data *data)
574 574
575 data->mesh_ball = efl_add(EVAS_CANVAS3D_MESH_CLASS, evas); 575 data->mesh_ball = efl_add(EVAS_CANVAS3D_MESH_CLASS, evas);
576 data->material_ball = efl_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); 576 data->material_ball = efl_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas);
577 data->mesh_node_ball = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 577 data->mesh_node_ball = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
578 578
579 /* Setup material for ball. */ 579 /* Setup material for ball. */
580 evas_canvas3d_material_enable_set(data->material_ball, EVAS_CANVAS3D_MATERIAL_ATTRIB_AMBIENT, EINA_TRUE); 580 evas_canvas3d_material_enable_set(data->material_ball, EVAS_CANVAS3D_MATERIAL_ATTRIB_AMBIENT, EINA_TRUE);
@@ -611,7 +611,7 @@ _scene_setup(Scene_Data *data, Evas_Real r, int count)
611 data->scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas); 611 data->scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas);
612 612
613 /* Add the root node for the scene. */ 613 /* Add the root node for the scene. */
614 data->root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 614 data->root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
615 615
616 evas_canvas3d_scene_size_set(data->scene, WIDTH, HEIGHT); 616 evas_canvas3d_scene_size_set(data->scene, WIDTH, HEIGHT);
617 evas_canvas3d_scene_shadows_enable_set(data->scene, EINA_TRUE); 617 evas_canvas3d_scene_shadows_enable_set(data->scene, EINA_TRUE);
diff --git a/src/examples/evas/evas-3d-aabb.c b/src/examples/evas/evas-3d-aabb.c
index 8531665a82..5278999f27 100644
--- a/src/examples/evas/evas-3d-aabb.c
+++ b/src/examples/evas/evas-3d-aabb.c
@@ -143,13 +143,13 @@ main(void)
143 143
144 scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas); 144 scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas);
145 145
146 root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 146 root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
147 147
148 camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); 148 camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas);
149 evas_canvas3d_camera_projection_perspective_set(camera, 60.0, 1.0, 1.0, 500.0); 149 evas_canvas3d_camera_projection_perspective_set(camera, 60.0, 1.0, 1.0, 500.0);
150 150
151 camera_node = 151 camera_node =
152 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 152 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
153 evas_canvas3d_node_camera_set(camera_node, camera); 153 evas_canvas3d_node_camera_set(camera_node, camera);
154 evas_canvas3d_node_member_add(root_node, camera_node); 154 evas_canvas3d_node_member_add(root_node, camera_node);
155 evas_canvas3d_node_position_set(camera_node, 100.0, 50.0, 20.0); 155 evas_canvas3d_node_position_set(camera_node, 100.0, 50.0, 20.0);
@@ -161,7 +161,7 @@ main(void)
161 evas_canvas3d_light_directional_set(light, EINA_TRUE); 161 evas_canvas3d_light_directional_set(light, EINA_TRUE);
162 162
163 light_node = 163 light_node =
164 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 164 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
165 evas_canvas3d_node_light_set(light_node, light); 165 evas_canvas3d_node_light_set(light_node, light);
166 evas_canvas3d_node_position_set(light_node, 1000.0, 0.0, 1000.0); 166 evas_canvas3d_node_position_set(light_node, 1000.0, 0.0, 1000.0);
167 evas_canvas3d_node_look_at_set(light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 167 evas_canvas3d_node_look_at_set(light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -188,8 +188,8 @@ main(void)
188 evas_canvas3d_material_color_set(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, 1.0, 1.0, 1.0, 1.0); 188 evas_canvas3d_material_color_set(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, 1.0, 1.0, 1.0, 1.0);
189 evas_canvas3d_material_shininess_set(material, 50.0); 189 evas_canvas3d_material_shininess_set(material, 50.0);
190 190
191 mesh_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 191 mesh_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
192 mesh_box_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 192 mesh_box_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
193 193
194 material_box = efl_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); 194 material_box = efl_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas);
195 evas_canvas3d_material_enable_set(material_box, EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, EINA_TRUE); 195 evas_canvas3d_material_enable_set(material_box, EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, EINA_TRUE);
diff --git a/src/examples/evas/evas-3d-blending.c b/src/examples/evas/evas-3d-blending.c
index 84f042ace1..531c8fa2a6 100644
--- a/src/examples/evas/evas-3d-blending.c
+++ b/src/examples/evas/evas-3d-blending.c
@@ -153,7 +153,7 @@ _camera_setup(Scene_Data *data)
153 evas_canvas3d_camera_projection_perspective_set(data->camera, 60.0, 1.0, 2.0, 50.0); 153 evas_canvas3d_camera_projection_perspective_set(data->camera, 60.0, 1.0, 2.0, 50.0);
154 154
155 data->camera_node = 155 data->camera_node =
156 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 156 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
157 157
158 evas_canvas3d_node_camera_set(data->camera_node, data->camera); 158 evas_canvas3d_node_camera_set(data->camera_node, data->camera);
159 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 10.0); 159 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 10.0);
@@ -171,7 +171,7 @@ _light_setup(Scene_Data *data)
171 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0); 171 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0);
172 172
173 data->light_node = 173 data->light_node =
174 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 174 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
175 evas_canvas3d_node_light_set(data->light_node, data->light); 175 evas_canvas3d_node_light_set(data->light_node, data->light);
176 evas_canvas3d_node_position_set(data->light_node, 0.0, 0.0, 10.0); 176 evas_canvas3d_node_position_set(data->light_node, 0.0, 0.0, 10.0);
177 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 177 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -220,13 +220,13 @@ _mesh_setup(Scene_Data *data)
220 _set_ball(data->mesh1, data->sphere, data->material1); 220 _set_ball(data->mesh1, data->sphere, data->material1);
221 221
222 data->mesh_node = 222 data->mesh_node =
223 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 223 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
224 224
225 evas_canvas3d_node_member_add(data->root_node, data->mesh_node); 225 evas_canvas3d_node_member_add(data->root_node, data->mesh_node);
226 evas_canvas3d_node_mesh_add(data->mesh_node, data->mesh); 226 evas_canvas3d_node_mesh_add(data->mesh_node, data->mesh);
227 227
228 data->mesh_node1 = 228 data->mesh_node1 =
229 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 229 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
230 230
231 evas_canvas3d_node_member_add(data->root_node, data->mesh_node1); 231 evas_canvas3d_node_member_add(data->root_node, data->mesh_node1);
232 evas_canvas3d_node_mesh_add(data->mesh_node1, data->mesh1); 232 evas_canvas3d_node_mesh_add(data->mesh_node1, data->mesh1);
@@ -248,7 +248,7 @@ _scene_setup(Scene_Data *data)
248 evas_canvas3d_scene_background_color_set(data->scene, 0.5, 0.5, 0.5, 1); 248 evas_canvas3d_scene_background_color_set(data->scene, 0.5, 0.5, 0.5, 1);
249 249
250 data->root_node = 250 data->root_node =
251 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 251 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
252 252
253 _camera_setup(data); 253 _camera_setup(data);
254 _light_setup(data); 254 _light_setup(data);
diff --git a/src/examples/evas/evas-3d-colorpick.c b/src/examples/evas/evas-3d-colorpick.c
index 80c392a5f9..381ac834de 100644
--- a/src/examples/evas/evas-3d-colorpick.c
+++ b/src/examples/evas/evas-3d-colorpick.c
@@ -281,13 +281,13 @@ _init_scene(const char *texture)
281 281
282 globalscene.scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas); 282 globalscene.scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas);
283 283
284 globalscene.root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 284 globalscene.root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
285 285
286 globalscene.camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); 286 globalscene.camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas);
287 evas_canvas3d_camera_projection_perspective_set(globalscene.camera, 30.0, 1.0, 1.0, 1000.0); 287 evas_canvas3d_camera_projection_perspective_set(globalscene.camera, 30.0, 1.0, 1.0, 1000.0);
288 288
289 globalscene.camera_node = 289 globalscene.camera_node =
290 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 290 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
291 evas_canvas3d_node_camera_set(globalscene.camera_node, globalscene.camera); 291 evas_canvas3d_node_camera_set(globalscene.camera_node, globalscene.camera);
292 evas_canvas3d_node_member_add(globalscene.root_node, globalscene.camera_node); 292 evas_canvas3d_node_member_add(globalscene.root_node, globalscene.camera_node);
293 evas_canvas3d_node_position_set(globalscene.camera_node, 0.0, 30.0, 800.0); 293 evas_canvas3d_node_position_set(globalscene.camera_node, 0.0, 30.0, 800.0);
@@ -299,7 +299,7 @@ _init_scene(const char *texture)
299 evas_canvas3d_light_directional_set(globalscene.light, EINA_TRUE); 299 evas_canvas3d_light_directional_set(globalscene.light, EINA_TRUE);
300 300
301 globalscene.light_node = 301 globalscene.light_node =
302 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 302 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
303 evas_canvas3d_node_light_set(globalscene.light_node, globalscene.light); 303 evas_canvas3d_node_light_set(globalscene.light_node, globalscene.light);
304 evas_canvas3d_node_position_set(globalscene.light_node, 100.0, 50.0, 300.0); 304 evas_canvas3d_node_position_set(globalscene.light_node, 100.0, 50.0, 300.0);
305 evas_canvas3d_node_look_at_set(globalscene.light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 1.0, 1.0, 1.0); 305 evas_canvas3d_node_look_at_set(globalscene.light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 1.0, 1.0, 1.0);
@@ -321,7 +321,7 @@ _init_scene(const char *texture)
321 m->material = spheretmp->material; 321 m->material = spheretmp->material;
322 m->texture = spheretmp->texture; 322 m->texture = spheretmp->texture;
323 } 323 }
324 m->node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 324 m->node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
325 m->speed = tmp; 325 m->speed = tmp;
326 m->sphere_animate = _animate_sphere; 326 m->sphere_animate = _animate_sphere;
327 m->animate = ecore_timer_add(m->speed, m->sphere_animate, m); 327 m->animate = ecore_timer_add(m->speed, m->sphere_animate, m);
diff --git a/src/examples/evas/evas-3d-cube-rotate.c b/src/examples/evas/evas-3d-cube-rotate.c
index 16efb7c548..10b6a1305e 100644
--- a/src/examples/evas/evas-3d-cube-rotate.c
+++ b/src/examples/evas/evas-3d-cube-rotate.c
@@ -157,7 +157,7 @@ _camera_setup(Scene_Data *data)
157 data->camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); 157 data->camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas);
158 evas_canvas3d_camera_projection_perspective_set(data->camera, 20.0, 1.0, 2.0, 50.0); 158 evas_canvas3d_camera_projection_perspective_set(data->camera, 20.0, 1.0, 2.0, 50.0);
159 159
160 data->camera_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 160 data->camera_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
161 evas_canvas3d_node_camera_set(data->camera_node, data->camera); 161 evas_canvas3d_node_camera_set(data->camera_node, data->camera);
162 evas_canvas3d_node_position_set(data->camera_node, 3.0, 3.0, 10.0); 162 evas_canvas3d_node_position_set(data->camera_node, 3.0, 3.0, 10.0);
163 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 163 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -174,7 +174,7 @@ _light_setup(Scene_Data *data)
174 evas_canvas3d_light_diffuse_set(data->light, 1.0, 1.0, 1.0, 1.0); 174 evas_canvas3d_light_diffuse_set(data->light, 1.0, 1.0, 1.0, 1.0);
175 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0); 175 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0);
176 176
177 data->light_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 177 data->light_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
178 178
179 evas_canvas3d_node_light_set(data->light_node, data->light); 179 evas_canvas3d_node_light_set(data->light_node, data->light);
180 evas_canvas3d_node_position_set(data->light_node, 5.0, 5.0, 10.0); 180 evas_canvas3d_node_position_set(data->light_node, 5.0, 5.0, 10.0);
@@ -207,7 +207,7 @@ _mesh_setup(Scene_Data *data)
207 evas_canvas3d_mesh_shader_mode_set(data->mesh, EVAS_CANVAS3D_SHADER_MODE_PHONG); 207 evas_canvas3d_mesh_shader_mode_set(data->mesh, EVAS_CANVAS3D_SHADER_MODE_PHONG);
208 evas_canvas3d_mesh_frame_material_set(data->mesh, 0, data->material); 208 evas_canvas3d_mesh_frame_material_set(data->mesh, 0, data->material);
209 209
210 data->mesh_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 210 data->mesh_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
211 evas_canvas3d_node_member_add(data->root_node, data->mesh_node); 211 evas_canvas3d_node_member_add(data->root_node, data->mesh_node);
212 evas_canvas3d_node_mesh_add(data->mesh_node, data->mesh); 212 evas_canvas3d_node_mesh_add(data->mesh_node, data->mesh);
213} 213}
@@ -216,7 +216,7 @@ static void
216_scene_setup(Scene_Data *data) 216_scene_setup(Scene_Data *data)
217{ 217{
218 scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas); 218 scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas);
219 data->root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 219 data->root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
220 220
221 evas_canvas3d_scene_size_set(scene, WIDTH, HEIGHT); 221 evas_canvas3d_scene_size_set(scene, WIDTH, HEIGHT);
222 evas_canvas3d_scene_background_color_set(scene, 0.0, 0.0, 0.0, 0.0); 222 evas_canvas3d_scene_background_color_set(scene, 0.0, 0.0, 0.0, 0.0);
diff --git a/src/examples/evas/evas-3d-cube.c b/src/examples/evas/evas-3d-cube.c
index 7a2cdcfd18..5fff887b14 100644
--- a/src/examples/evas/evas-3d-cube.c
+++ b/src/examples/evas/evas-3d-cube.c
@@ -142,7 +142,7 @@ _camera_setup(Scene_Data *data)
142 evas_canvas3d_camera_projection_perspective_set(data->camera, 60.0, 1.0, 2.0, 50.0); 142 evas_canvas3d_camera_projection_perspective_set(data->camera, 60.0, 1.0, 2.0, 50.0);
143 143
144 data->camera_node = 144 data->camera_node =
145 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 145 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
146 evas_canvas3d_node_camera_set(data->camera_node, data->camera); 146 evas_canvas3d_node_camera_set(data->camera_node, data->camera);
147 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 10.0); 147 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 10.0);
148 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 148 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -158,7 +158,7 @@ _light_setup(Scene_Data *data)
158 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0); 158 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0);
159 159
160 data->light_node = 160 data->light_node =
161 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 161 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
162 evas_canvas3d_node_light_set(data->light_node, data->light); 162 evas_canvas3d_node_light_set(data->light_node, data->light);
163 evas_canvas3d_node_position_set(data->light_node, 0.0, 0.0, 10.0); 163 evas_canvas3d_node_position_set(data->light_node, 0.0, 0.0, 10.0);
164 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 164 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -192,7 +192,7 @@ _mesh_setup(Scene_Data *data)
192 evas_canvas3d_mesh_frame_material_set(data->mesh, 0, data->material); 192 evas_canvas3d_mesh_frame_material_set(data->mesh, 0, data->material);
193 193
194 data->mesh_node = 194 data->mesh_node =
195 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 195 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
196 evas_canvas3d_node_member_add(data->root_node, data->mesh_node); 196 evas_canvas3d_node_member_add(data->root_node, data->mesh_node);
197 evas_canvas3d_node_mesh_add(data->mesh_node, data->mesh); 197 evas_canvas3d_node_mesh_add(data->mesh_node, data->mesh);
198} 198}
@@ -205,7 +205,7 @@ _scene_setup(Scene_Data *data)
205 evas_canvas3d_scene_background_color_set(data->scene, 0.0, 0.0, 0.0, 0.0); 205 evas_canvas3d_scene_background_color_set(data->scene, 0.0, 0.0, 0.0, 0.0);
206 206
207 data->root_node = 207 data->root_node =
208 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 208 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
209 209
210 _camera_setup(data); 210 _camera_setup(data);
211 _light_setup(data); 211 _light_setup(data);
diff --git a/src/examples/evas/evas-3d-cube2.c b/src/examples/evas/evas-3d-cube2.c
index c07e530485..0b1d31c8eb 100644
--- a/src/examples/evas/evas-3d-cube2.c
+++ b/src/examples/evas/evas-3d-cube2.c
@@ -114,7 +114,7 @@ _camera_setup(Scene_Data *data)
114 evas_canvas3d_camera_projection_perspective_set(data->camera, 60.0, 1.0, 2.0, 50.0); 114 evas_canvas3d_camera_projection_perspective_set(data->camera, 60.0, 1.0, 2.0, 50.0);
115 115
116 data->camera_node = 116 data->camera_node =
117 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 117 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
118 evas_canvas3d_node_camera_set(data->camera_node, data->camera); 118 evas_canvas3d_node_camera_set(data->camera_node, data->camera);
119 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 3.0); 119 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 3.0);
120 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 120 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -130,7 +130,7 @@ _light_setup(Scene_Data *data)
130 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0); 130 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0);
131 131
132 data->light_node = 132 data->light_node =
133 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 133 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
134 evas_canvas3d_node_light_set(data->light_node, data->light); 134 evas_canvas3d_node_light_set(data->light_node, data->light);
135 evas_canvas3d_node_position_set(data->light_node, 0.0, 0.0, 10.0); 135 evas_canvas3d_node_position_set(data->light_node, 0.0, 0.0, 10.0);
136 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 136 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -187,7 +187,7 @@ _mesh_setup(Scene_Data *data)
187 evas_canvas3d_mesh_shader_mode_set(data->mesh, EVAS_CANVAS3D_SHADER_MODE_NORMAL_MAP); 187 evas_canvas3d_mesh_shader_mode_set(data->mesh, EVAS_CANVAS3D_SHADER_MODE_NORMAL_MAP);
188 188
189 data->mesh_node = 189 data->mesh_node =
190 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 190 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
191 evas_canvas3d_node_member_add(data->root_node, data->mesh_node); 191 evas_canvas3d_node_member_add(data->root_node, data->mesh_node);
192 evas_canvas3d_node_mesh_add(data->mesh_node, data->mesh); 192 evas_canvas3d_node_mesh_add(data->mesh_node, data->mesh);
193} 193}
@@ -200,7 +200,7 @@ _scene_setup(Scene_Data *data)
200 evas_canvas3d_scene_background_color_set(data->scene, 0.0, 0.0, 0.0, 0.0); 200 evas_canvas3d_scene_background_color_set(data->scene, 0.0, 0.0, 0.0, 0.0);
201 201
202 data->root_node = 202 data->root_node =
203 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 203 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
204 204
205 _camera_setup(data); 205 _camera_setup(data);
206 _light_setup(data); 206 _light_setup(data);
diff --git a/src/examples/evas/evas-3d-eet.c b/src/examples/evas/evas-3d-eet.c
index 01c9c768f5..b9b7f6dbc8 100644
--- a/src/examples/evas/evas-3d-eet.c
+++ b/src/examples/evas/evas-3d-eet.c
@@ -117,13 +117,13 @@ main(void)
117 scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas); 117 scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas);
118 118
119 /* Add the root node for the scene. */ 119 /* Add the root node for the scene. */
120 root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 120 root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
121 121
122 /* Add the camera. */ 122 /* Add the camera. */
123 camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); 123 camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas);
124 evas_canvas3d_camera_projection_perspective_set(camera, 60.0, 1.0, 1.0, 500.0); 124 evas_canvas3d_camera_projection_perspective_set(camera, 60.0, 1.0, 1.0, 500.0);
125 125
126 camera_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 126 camera_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
127 evas_canvas3d_node_camera_set(camera_node, camera); 127 evas_canvas3d_node_camera_set(camera_node, camera);
128 evas_canvas3d_node_member_add(root_node, camera_node); 128 evas_canvas3d_node_member_add(root_node, camera_node);
129 evas_canvas3d_node_position_set(camera_node, 200.0, 0.0, 40.0); 129 evas_canvas3d_node_position_set(camera_node, 200.0, 0.0, 40.0);
@@ -135,7 +135,7 @@ main(void)
135 evas_canvas3d_light_specular_set(light, 1.0, 1.0, 1.0, 1.0); 135 evas_canvas3d_light_specular_set(light, 1.0, 1.0, 1.0, 1.0);
136 evas_canvas3d_light_directional_set(light, EINA_TRUE); 136 evas_canvas3d_light_directional_set(light, EINA_TRUE);
137 137
138 light_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 138 light_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
139 evas_canvas3d_node_light_set(light_node, light); 139 evas_canvas3d_node_light_set(light_node, light);
140 evas_canvas3d_node_position_set(light_node, 1000.0, 0.0, 1000.0); 140 evas_canvas3d_node_position_set(light_node, 1000.0, 0.0, 1000.0);
141 evas_canvas3d_node_look_at_set(light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 141 evas_canvas3d_node_look_at_set(light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -168,13 +168,13 @@ main(void)
168 efl_file_set(mesh2, output_model_path, NULL); 168 efl_file_set(mesh2, output_model_path, NULL);
169 evas_canvas3d_mesh_shader_mode_set(mesh2, EVAS_CANVAS3D_SHADER_MODE_PHONG); 169 evas_canvas3d_mesh_shader_mode_set(mesh2, EVAS_CANVAS3D_SHADER_MODE_PHONG);
170 170
171 mesh_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 171 mesh_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
172 172
173 evas_canvas3d_node_member_add(root_node, mesh_node); 173 evas_canvas3d_node_member_add(root_node, mesh_node);
174 evas_canvas3d_node_mesh_add(mesh_node, mesh); 174 evas_canvas3d_node_mesh_add(mesh_node, mesh);
175 evas_canvas3d_node_position_set(mesh_node, 0.0, -40.0, 0.0); 175 evas_canvas3d_node_position_set(mesh_node, 0.0, -40.0, 0.0);
176 176
177 mesh_node2 = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 177 mesh_node2 = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
178 evas_canvas3d_node_member_add(root_node, mesh_node2); 178 evas_canvas3d_node_member_add(root_node, mesh_node2);
179 evas_canvas3d_node_mesh_add(mesh_node2, mesh2); 179 evas_canvas3d_node_mesh_add(mesh_node2, mesh2);
180 evas_canvas3d_node_position_set(mesh_node2, 0.0, 40.0, 0.0); 180 evas_canvas3d_node_position_set(mesh_node2, 0.0, 40.0, 0.0);
diff --git a/src/examples/evas/evas-3d-fog.c b/src/examples/evas/evas-3d-fog.c
index 38a3d632da..e9e01449c7 100644
--- a/src/examples/evas/evas-3d-fog.c
+++ b/src/examples/evas/evas-3d-fog.c
@@ -88,7 +88,7 @@ _camera_setup(Scene_Data *data)
88 evas_canvas3d_camera_projection_perspective_set(data->camera, 60.0, 1.0, 2.0, 50.0); 88 evas_canvas3d_camera_projection_perspective_set(data->camera, 60.0, 1.0, 2.0, 50.0);
89 89
90 data->camera_node = 90 data->camera_node =
91 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 91 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
92 92
93 evas_canvas3d_node_camera_set(data->camera_node, data->camera); 93 evas_canvas3d_node_camera_set(data->camera_node, data->camera);
94 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 7.0); 94 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 7.0);
@@ -106,7 +106,7 @@ _light_setup(Scene_Data *data)
106 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0); 106 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0);
107 107
108 data->light_node = 108 data->light_node =
109 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 109 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
110 evas_canvas3d_node_light_set(data->light_node, data->light); 110 evas_canvas3d_node_light_set(data->light_node, data->light);
111 evas_canvas3d_node_position_set(data->light_node, 0.0, 0.0, 10.0); 111 evas_canvas3d_node_position_set(data->light_node, 0.0, 0.0, 10.0);
112 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 112 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -145,10 +145,10 @@ _mesh_setup(Scene_Data *data)
145 _set_ball(data->mesh1, data->sphere, data->material); 145 _set_ball(data->mesh1, data->sphere, data->material);
146 146
147 data->animation_node = 147 data->animation_node =
148 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 148 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
149 149
150 data->mesh_node = 150 data->mesh_node =
151 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 151 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
152 152
153 evas_canvas3d_node_member_add(data->animation_node, data->mesh_node); 153 evas_canvas3d_node_member_add(data->animation_node, data->mesh_node);
154 evas_canvas3d_node_member_add(data->root_node, data->animation_node); 154 evas_canvas3d_node_member_add(data->root_node, data->animation_node);
@@ -156,7 +156,7 @@ _mesh_setup(Scene_Data *data)
156 evas_canvas3d_node_position_set(data->mesh_node, 0.0, 0.0, 3.0); 156 evas_canvas3d_node_position_set(data->mesh_node, 0.0, 0.0, 3.0);
157 157
158 data->mesh_node1 = 158 data->mesh_node1 =
159 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 159 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
160 160
161 evas_canvas3d_node_member_add(data->root_node, data->mesh_node1); 161 evas_canvas3d_node_member_add(data->root_node, data->mesh_node1);
162 evas_canvas3d_node_mesh_add(data->mesh_node1, data->mesh1); 162 evas_canvas3d_node_mesh_add(data->mesh_node1, data->mesh1);
@@ -177,7 +177,7 @@ _scene_setup(Scene_Data *data)
177 evas_canvas3d_scene_background_color_set(data->scene, FOG_COLOR, 1); 177 evas_canvas3d_scene_background_color_set(data->scene, FOG_COLOR, 1);
178 178
179 data->root_node = 179 data->root_node =
180 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 180 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
181 181
182 _camera_setup(data); 182 _camera_setup(data);
183 _light_setup(data); 183 _light_setup(data);
diff --git a/src/examples/evas/evas-3d-frustum.c b/src/examples/evas/evas-3d-frustum.c
index 776e61c364..02f5bba05e 100644
--- a/src/examples/evas/evas-3d-frustum.c
+++ b/src/examples/evas/evas-3d-frustum.c
@@ -281,7 +281,7 @@ static void
281_camera_setup(Scene_Data *data) 281_camera_setup(Scene_Data *data)
282{ 282{
283 data->camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); 283 data->camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas);
284 data->camera_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 284 data->camera_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
285 evas_canvas3d_node_camera_set(data->camera_node, data->camera); 285 evas_canvas3d_node_camera_set(data->camera_node, data->camera);
286 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 300.0); 286 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 300.0);
287 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 287 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -299,7 +299,7 @@ _light_setup(Scene_Data *data)
299 evas_canvas3d_light_diffuse_set(data->light, 1.0, 1.0, 1.0, 1.0); 299 evas_canvas3d_light_diffuse_set(data->light, 1.0, 1.0, 1.0, 1.0);
300 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0); 300 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0);
301 301
302 data->light_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 302 data->light_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
303 evas_canvas3d_node_light_set(data->light_node, data->light); 303 evas_canvas3d_node_light_set(data->light_node, data->light);
304 evas_canvas3d_node_position_set(data->light_node, 0.0, 0.0, 200.0); 304 evas_canvas3d_node_position_set(data->light_node, 0.0, 0.0, 200.0);
305 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 1.0); 305 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 1.0);
@@ -340,7 +340,7 @@ _mesh_setup(Scene_Data *data)
340 evas_canvas3d_mesh_frame_material_set(data->mesh_sphere, 0, data->material); 340 evas_canvas3d_mesh_frame_material_set(data->mesh_sphere, 0, data->material);
341 341
342 data->mesh_node = 342 data->mesh_node =
343 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 343 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
344 evas_canvas3d_node_member_add(data->root_node, data->mesh_node); 344 evas_canvas3d_node_member_add(data->root_node, data->mesh_node);
345 evas_canvas3d_node_mesh_add(data->mesh_node, data->mesh_aabb); 345 evas_canvas3d_node_mesh_add(data->mesh_node, data->mesh_aabb);
346} 346}
@@ -377,13 +377,13 @@ _scene_setup(Scene_Data *data)
377{ 377{
378 data->scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas); 378 data->scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas);
379 379
380 data->root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 380 data->root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
381 381
382 _light_setup(data); 382 _light_setup(data);
383 _mesh_setup_model(data); 383 _mesh_setup_model(data);
384 _camera_setup(data); 384 _camera_setup(data);
385 385
386 data->mesh_node_model = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 386 data->mesh_node_model = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
387 evas_canvas3d_node_position_set(data->mesh_node_model, obj_x, obj_y, obj_z); 387 evas_canvas3d_node_position_set(data->mesh_node_model, obj_x, obj_y, obj_z);
388 evas_canvas3d_node_orientation_angle_axis_set(data->mesh_node_model, -90, 1.0, 0.0, 0.0); 388 evas_canvas3d_node_orientation_angle_axis_set(data->mesh_node_model, -90, 1.0, 0.0, 0.0);
389 evas_canvas3d_node_scale_set(data->mesh_node_model, obj_sc_x, obj_sc_y, obj_sc_z); 389 evas_canvas3d_node_scale_set(data->mesh_node_model, obj_sc_x, obj_sc_y, obj_sc_z);
diff --git a/src/examples/evas/evas-3d-hull.c b/src/examples/evas/evas-3d-hull.c
index 52c121fe9f..7e5705680f 100644
--- a/src/examples/evas/evas-3d-hull.c
+++ b/src/examples/evas/evas-3d-hull.c
@@ -262,7 +262,7 @@ _camera_setup(Scene_Data *data)
262 evas_canvas3d_camera_projection_perspective_set(data->camera, 60.0, 1.0, 2.0, 50.0); 262 evas_canvas3d_camera_projection_perspective_set(data->camera, 60.0, 1.0, 2.0, 50.0);
263 263
264 data->camera_node = 264 data->camera_node =
265 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 265 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
266 evas_canvas3d_node_camera_set(data->camera_node, data->camera); 266 evas_canvas3d_node_camera_set(data->camera_node, data->camera);
267 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 10.0); 267 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 10.0);
268 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 268 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -278,7 +278,7 @@ _light_setup(Scene_Data *data)
278 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0); 278 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0);
279 279
280 data->light_node = 280 data->light_node =
281 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 281 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
282 evas_canvas3d_node_light_set(data->light_node, data->light); 282 evas_canvas3d_node_light_set(data->light_node, data->light);
283 evas_canvas3d_node_position_set(data->light_node, 0.0, 0.0, 10.0); 283 evas_canvas3d_node_position_set(data->light_node, 0.0, 0.0, 10.0);
284 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 284 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -356,7 +356,7 @@ _mesh_setup(Scene_Data *data)
356 MODEL_MESH_INIT(blender_test_sonic, sonic_test, DIFFUSE) 356 MODEL_MESH_INIT(blender_test_sonic, sonic_test, DIFFUSE)
357 357
358 data->mesh_node = 358 data->mesh_node =
359 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 359 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
360 evas_canvas3d_node_member_add(data->root_node, data->mesh_node); 360 evas_canvas3d_node_member_add(data->root_node, data->mesh_node);
361 evas_canvas3d_node_mesh_add(data->mesh_node, data->mesh_sphere); 361 evas_canvas3d_node_mesh_add(data->mesh_node, data->mesh_sphere);
362 evas_canvas3d_node_scale_set(data->mesh_node, SCALE_SPHERE, SCALE_SPHERE, SCALE_SPHERE); 362 evas_canvas3d_node_scale_set(data->mesh_node, SCALE_SPHERE, SCALE_SPHERE, SCALE_SPHERE);
@@ -374,14 +374,14 @@ _mesh_setup(Scene_Data *data)
374 _print_result(data->mesh_sphere_ch, data->mesh_blender_test_sphere); 374 _print_result(data->mesh_sphere_ch, data->mesh_blender_test_sphere);
375 375
376 data->mesh_node_convex_hull = 376 data->mesh_node_convex_hull =
377 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 377 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
378 evas_canvas3d_node_member_add(data->root_node, data->mesh_node_convex_hull); 378 evas_canvas3d_node_member_add(data->root_node, data->mesh_node_convex_hull);
379 evas_canvas3d_node_position_set(data->mesh_node_convex_hull, 0.0, 0.0, 0.0); 379 evas_canvas3d_node_position_set(data->mesh_node_convex_hull, 0.0, 0.0, 0.0);
380 evas_canvas3d_node_scale_set(data->mesh_node_convex_hull, SCALE_SPHERE, SCALE_SPHERE, SCALE_SPHERE); 380 evas_canvas3d_node_scale_set(data->mesh_node_convex_hull, SCALE_SPHERE, SCALE_SPHERE, SCALE_SPHERE);
381 evas_canvas3d_node_mesh_add(data->mesh_node_convex_hull, data->mesh_sphere_ch); 381 evas_canvas3d_node_mesh_add(data->mesh_node_convex_hull, data->mesh_sphere_ch);
382 382
383 data->mesh_node_blender = 383 data->mesh_node_blender =
384 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 384 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
385 evas_canvas3d_node_member_add(data->root_node, data->mesh_node_blender); 385 evas_canvas3d_node_member_add(data->root_node, data->mesh_node_blender);
386 evas_canvas3d_node_position_set(data->mesh_node_blender, -3.0, 0.0, 0.0); 386 evas_canvas3d_node_position_set(data->mesh_node_blender, -3.0, 0.0, 0.0);
387 evas_canvas3d_node_scale_set(data->mesh_node_blender, SCALE_SPHERE, SCALE_SPHERE, SCALE_SPHERE); 387 evas_canvas3d_node_scale_set(data->mesh_node_blender, SCALE_SPHERE, SCALE_SPHERE, SCALE_SPHERE);
@@ -396,7 +396,7 @@ _scene_setup(Scene_Data *data)
396 evas_canvas3d_scene_background_color_set(data->scene, 0.0, 0.0, 0.0, 0.0); 396 evas_canvas3d_scene_background_color_set(data->scene, 0.0, 0.0, 0.0, 0.0);
397 397
398 data->root_node = 398 data->root_node =
399 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 399 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
400 400
401 _camera_setup(data); 401 _camera_setup(data);
402 _light_setup(data); 402 _light_setup(data);
diff --git a/src/examples/evas/evas-3d-md2.c b/src/examples/evas/evas-3d-md2.c
index aed2781b07..527d856802 100644
--- a/src/examples/evas/evas-3d-md2.c
+++ b/src/examples/evas/evas-3d-md2.c
@@ -94,14 +94,14 @@ main(void)
94 scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas); 94 scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas);
95 95
96 /* Add the root node for the scene. */ 96 /* Add the root node for the scene. */
97 root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 97 root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
98 98
99 /* Add the camera. */ 99 /* Add the camera. */
100 camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); 100 camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas);
101 evas_canvas3d_camera_projection_perspective_set(camera, 60.0, 1.0, 1.0, 500.0); 101 evas_canvas3d_camera_projection_perspective_set(camera, 60.0, 1.0, 1.0, 500.0);
102 102
103 camera_node = 103 camera_node =
104 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 104 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
105 evas_canvas3d_node_camera_set(camera_node, camera); 105 evas_canvas3d_node_camera_set(camera_node, camera);
106 evas_canvas3d_node_member_add(root_node, camera_node); 106 evas_canvas3d_node_member_add(root_node, camera_node);
107 evas_canvas3d_node_position_set(camera_node, 100.0, 0.0, 20.0); 107 evas_canvas3d_node_position_set(camera_node, 100.0, 0.0, 20.0);
@@ -114,7 +114,7 @@ main(void)
114 evas_canvas3d_light_directional_set(light, EINA_TRUE); 114 evas_canvas3d_light_directional_set(light, EINA_TRUE);
115 115
116 light_node = 116 light_node =
117 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 117 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
118 evas_canvas3d_node_light_set(light_node, light); 118 evas_canvas3d_node_light_set(light_node, light);
119 evas_canvas3d_node_position_set(light_node, 1000.0, 0.0, 1000.0); 119 evas_canvas3d_node_position_set(light_node, 1000.0, 0.0, 1000.0);
120 evas_canvas3d_node_look_at_set(light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 120 evas_canvas3d_node_look_at_set(light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -142,7 +142,7 @@ main(void)
142 evas_canvas3d_material_color_set(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, 1.0, 1.0, 1.0, 1.0); 142 evas_canvas3d_material_color_set(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, 1.0, 1.0, 1.0, 1.0);
143 evas_canvas3d_material_shininess_set(material, 50.0); 143 evas_canvas3d_material_shininess_set(material, 50.0);
144 144
145 mesh_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 145 mesh_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
146 evas_canvas3d_node_member_add(root_node, mesh_node); 146 evas_canvas3d_node_member_add(root_node, mesh_node);
147 evas_canvas3d_node_mesh_add(mesh_node, mesh); 147 evas_canvas3d_node_mesh_add(mesh_node, mesh);
148 148
diff --git a/src/examples/evas/evas-3d-mmap-set.c b/src/examples/evas/evas-3d-mmap-set.c
index fed41fa7d8..570e7d3c79 100644
--- a/src/examples/evas/evas-3d-mmap-set.c
+++ b/src/examples/evas/evas-3d-mmap-set.c
@@ -36,7 +36,7 @@
36 efl_file_mmap_set(mesh_##extention, extention##_file, NULL); \ 36 efl_file_mmap_set(mesh_##extention, extention##_file, NULL); \
37 evas_canvas3d_mesh_frame_material_set(mesh_##extention, 0, material); \ 37 evas_canvas3d_mesh_frame_material_set(mesh_##extention, 0, material); \
38 evas_canvas3d_mesh_shader_mode_set(mesh_##extention, EVAS_CANVAS3D_SHADER_MODE_PHONG); \ 38 evas_canvas3d_mesh_shader_mode_set(mesh_##extention, EVAS_CANVAS3D_SHADER_MODE_PHONG); \
39 node_##extention = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); \ 39 node_##extention = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); \
40 evas_canvas3d_node_member_add(root_node, node_##extention); \ 40 evas_canvas3d_node_member_add(root_node, node_##extention); \
41 evas_canvas3d_node_mesh_add(node_##extention, mesh_##extention); \ 41 evas_canvas3d_node_mesh_add(node_##extention, mesh_##extention); \
42 evas_canvas3d_node_position_set(node_##extention, initial_node_data[number * 10], \ 42 evas_canvas3d_node_position_set(node_##extention, initial_node_data[number * 10], \
@@ -184,14 +184,14 @@ main(void)
184 scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas); 184 scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas);
185 185
186 /* Add the root node for the scene. */ 186 /* Add the root node for the scene. */
187 root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 187 root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
188 188
189 /* Add the camera. */ 189 /* Add the camera. */
190 camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); 190 camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas);
191 evas_canvas3d_camera_projection_perspective_set(camera, 10.0, 1.0, 1.0, 500.0); 191 evas_canvas3d_camera_projection_perspective_set(camera, 10.0, 1.0, 1.0, 500.0);
192 192
193 camera_node = 193 camera_node =
194 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 194 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
195 evas_canvas3d_node_camera_set(camera_node, camera); 195 evas_canvas3d_node_camera_set(camera_node, camera);
196 evas_canvas3d_node_member_add(root_node, camera_node); 196 evas_canvas3d_node_member_add(root_node, camera_node);
197 evas_canvas3d_node_position_set(camera_node, 0.0, 0.0, 100.0); 197 evas_canvas3d_node_position_set(camera_node, 0.0, 0.0, 100.0);
@@ -204,7 +204,7 @@ main(void)
204 evas_canvas3d_light_directional_set(light, EINA_TRUE); 204 evas_canvas3d_light_directional_set(light, EINA_TRUE);
205 205
206 light_node = 206 light_node =
207 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 207 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
208 evas_canvas3d_node_light_set(light_node, light); 208 evas_canvas3d_node_light_set(light_node, light);
209 evas_canvas3d_node_position_set(light_node, 1.0, 0.0, 100.0); 209 evas_canvas3d_node_position_set(light_node, 1.0, 0.0, 100.0);
210 evas_canvas3d_node_look_at_set(light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 210 evas_canvas3d_node_look_at_set(light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
diff --git a/src/examples/evas/evas-3d-obj.c b/src/examples/evas/evas-3d-obj.c
index 5f3454c3ba..b00d6e5d40 100644
--- a/src/examples/evas/evas-3d-obj.c
+++ b/src/examples/evas/evas-3d-obj.c
@@ -50,7 +50,7 @@
50 efl_file_set(mesh[num], full_file_path, NULL); \ 50 efl_file_set(mesh[num], full_file_path, NULL); \
51 evas_canvas3d_mesh_frame_material_set(mesh[num], 0, name_of_material); \ 51 evas_canvas3d_mesh_frame_material_set(mesh[num], 0, name_of_material); \
52 evas_canvas3d_mesh_shader_mode_set(mesh[num], shade_mode); \ 52 evas_canvas3d_mesh_shader_mode_set(mesh[num], shade_mode); \
53 mesh_node[num] = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); \ 53 mesh_node[num] = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); \
54 evas_canvas3d_node_member_add(root_node, mesh_node[num]); \ 54 evas_canvas3d_node_member_add(root_node, mesh_node[num]); \
55 evas_canvas3d_node_mesh_add(mesh_node[num], mesh[num]); \ 55 evas_canvas3d_node_mesh_add(mesh_node[num], mesh[num]); \
56 evas_canvas3d_node_position_set(mesh_node[num], 0, Y, Z); \ 56 evas_canvas3d_node_position_set(mesh_node[num], 0, Y, Z); \
@@ -162,14 +162,14 @@ main(void)
162 scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas); 162 scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas);
163 163
164 /* Add the root node for the scene. */ 164 /* Add the root node for the scene. */
165 root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 165 root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
166 166
167 /* Add the camera. */ 167 /* Add the camera. */
168 camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); 168 camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas);
169 evas_canvas3d_camera_projection_perspective_set(camera, 20.0, 1.0, 1.0, 500.0); 169 evas_canvas3d_camera_projection_perspective_set(camera, 20.0, 1.0, 1.0, 500.0);
170 170
171 camera_node = 171 camera_node =
172 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 172 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
173 evas_canvas3d_node_camera_set(camera_node, camera); 173 evas_canvas3d_node_camera_set(camera_node, camera);
174 evas_canvas3d_node_member_add(root_node, camera_node); 174 evas_canvas3d_node_member_add(root_node, camera_node);
175 evas_canvas3d_node_position_set(camera_node, 100.0, 0.0, 0.0); 175 evas_canvas3d_node_position_set(camera_node, 100.0, 0.0, 0.0);
@@ -182,7 +182,7 @@ main(void)
182 evas_canvas3d_light_directional_set(light, EINA_TRUE); 182 evas_canvas3d_light_directional_set(light, EINA_TRUE);
183 183
184 light_node = 184 light_node =
185 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 185 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
186 evas_canvas3d_node_light_set(light_node, light); 186 evas_canvas3d_node_light_set(light_node, light);
187 evas_canvas3d_node_position_set(light_node, 10.0, 0.0, 0.0); 187 evas_canvas3d_node_position_set(light_node, 10.0, 0.0, 0.0);
188 evas_canvas3d_node_look_at_set(light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 188 evas_canvas3d_node_look_at_set(light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
diff --git a/src/examples/evas/evas-3d-parallax-occlusion.c b/src/examples/evas/evas-3d-parallax-occlusion.c
index ec98f94d39..c888653a8e 100644
--- a/src/examples/evas/evas-3d-parallax-occlusion.c
+++ b/src/examples/evas/evas-3d-parallax-occlusion.c
@@ -108,7 +108,7 @@ _camera_setup(Scene_Data *data)
108 108
109 evas_canvas3d_camera_projection_perspective_set(data->camera, 30.0, 1.0, 2.0, 50.0); 109 evas_canvas3d_camera_projection_perspective_set(data->camera, 30.0, 1.0, 2.0, 50.0);
110 110
111 data->camera_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 111 data->camera_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
112 evas_canvas3d_node_camera_set(data->camera_node, data->camera); 112 evas_canvas3d_node_camera_set(data->camera_node, data->camera);
113 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 10.0); 113 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 10.0);
114 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 114 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -123,7 +123,7 @@ _light_setup(Scene_Data *data)
123 evas_canvas3d_light_diffuse_set(data->light, 1.0, 1.0, 1.0, 1.0); 123 evas_canvas3d_light_diffuse_set(data->light, 1.0, 1.0, 1.0, 1.0);
124 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0); 124 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0);
125 125
126 data->light_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 126 data->light_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
127 evas_canvas3d_node_light_set(data->light_node, data->light); 127 evas_canvas3d_node_light_set(data->light_node, data->light);
128 evas_canvas3d_node_position_set(data->light_node, -20.0, 20.0, 50.0); 128 evas_canvas3d_node_position_set(data->light_node, -20.0, 20.0, 50.0);
129 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 129 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -191,7 +191,7 @@ _mesh_setup(Scene_Data *data)
191 191
192 evas_canvas3d_mesh_frame_material_set(data->mesh, 100, data->material_wood); 192 evas_canvas3d_mesh_frame_material_set(data->mesh, 100, data->material_wood);
193 193
194 data->mesh_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 194 data->mesh_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
195 evas_canvas3d_node_member_add(data->root_node, data->mesh_node); 195 evas_canvas3d_node_member_add(data->root_node, data->mesh_node);
196 evas_canvas3d_node_mesh_add(data->mesh_node, data->mesh); 196 evas_canvas3d_node_mesh_add(data->mesh_node, data->mesh);
197 evas_canvas3d_node_scale_set(data->mesh_node, 3, 3, 3); 197 evas_canvas3d_node_scale_set(data->mesh_node, 3, 3, 3);
@@ -204,7 +204,7 @@ _scene_setup(Scene_Data *data)
204 evas_canvas3d_scene_size_set(data->scene, WIDTH, HEIGHT); 204 evas_canvas3d_scene_size_set(data->scene, WIDTH, HEIGHT);
205 evas_canvas3d_scene_background_color_set(data->scene, 0.0, 0.0, 0.0, 0.0); 205 evas_canvas3d_scene_background_color_set(data->scene, 0.0, 0.0, 0.0, 0.0);
206 206
207 data->root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 207 data->root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
208 208
209 _camera_setup(data); 209 _camera_setup(data);
210 _light_setup(data); 210 _light_setup(data);
diff --git a/src/examples/evas/evas-3d-pick.c b/src/examples/evas/evas-3d-pick.c
index 2129722add..177cfb4607 100644
--- a/src/examples/evas/evas-3d-pick.c
+++ b/src/examples/evas/evas-3d-pick.c
@@ -120,14 +120,14 @@ main(void)
120 scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas); 120 scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas);
121 121
122 /* Add the root node for the scene. */ 122 /* Add the root node for the scene. */
123 root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 123 root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
124 124
125 /* Add the camera. */ 125 /* Add the camera. */
126 camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); 126 camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas);
127 evas_canvas3d_camera_projection_perspective_set(camera, 30.0, 1.0, 1.0, 100.0); 127 evas_canvas3d_camera_projection_perspective_set(camera, 30.0, 1.0, 1.0, 100.0);
128 128
129 camera_node = 129 camera_node =
130 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 130 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
131 evas_canvas3d_node_camera_set(camera_node, camera); 131 evas_canvas3d_node_camera_set(camera_node, camera);
132 evas_canvas3d_node_position_set(camera_node, 0.0, 0.0, 2.5); 132 evas_canvas3d_node_position_set(camera_node, 0.0, 0.0, 2.5);
133 evas_canvas3d_node_look_at_set(camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 133 evas_canvas3d_node_look_at_set(camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -154,7 +154,7 @@ main(void)
154 evas_canvas3d_material_color_set(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, 1.0, 1.0, 1.0, 1.0); 154 evas_canvas3d_material_color_set(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, 1.0, 1.0, 1.0, 1.0);
155 evas_canvas3d_material_shininess_set(material, 50.0); 155 evas_canvas3d_material_shininess_set(material, 50.0);
156 156
157 mesh_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 157 mesh_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
158 158
159 evas_canvas3d_node_member_add(root_node, mesh_node); 159 evas_canvas3d_node_member_add(root_node, mesh_node);
160 evas_canvas3d_node_mesh_add(mesh_node, mesh); 160 evas_canvas3d_node_mesh_add(mesh_node, mesh);
diff --git a/src/examples/evas/evas-3d-ply.c b/src/examples/evas/evas-3d-ply.c
index d0e396c536..6de10dc91d 100644
--- a/src/examples/evas/evas-3d-ply.c
+++ b/src/examples/evas/evas-3d-ply.c
@@ -133,13 +133,13 @@ main(void)
133 scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas); 133 scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, evas);
134 134
135 /* Add the root node for the scene. */ 135 /* Add the root node for the scene. */
136 root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 136 root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
137 137
138 /* Add the camera. */ 138 /* Add the camera. */
139 camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); 139 camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas);
140 evas_canvas3d_camera_projection_perspective_set(camera, 60.0, 1.0, 1.0, 500.0); 140 evas_canvas3d_camera_projection_perspective_set(camera, 60.0, 1.0, 1.0, 500.0);
141 141
142 camera_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 142 camera_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
143 evas_canvas3d_node_camera_set(camera_node, camera); 143 evas_canvas3d_node_camera_set(camera_node, camera);
144 evas_canvas3d_node_member_add(root_node, camera_node); 144 evas_canvas3d_node_member_add(root_node, camera_node);
145 evas_canvas3d_node_position_set(camera_node, 15.0, 0.0, 0.0); 145 evas_canvas3d_node_position_set(camera_node, 15.0, 0.0, 0.0);
@@ -151,7 +151,7 @@ main(void)
151 evas_canvas3d_light_specular_set(light, 1.0, 1.0, 1.0, 1.0); 151 evas_canvas3d_light_specular_set(light, 1.0, 1.0, 1.0, 1.0);
152 evas_canvas3d_light_directional_set(light, EINA_TRUE); 152 evas_canvas3d_light_directional_set(light, EINA_TRUE);
153 153
154 light_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 154 light_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
155 evas_canvas3d_node_light_set(light_node, light); 155 evas_canvas3d_node_light_set(light_node, light);
156 evas_canvas3d_node_position_set(light_node, 1000.0, 0.0, 1000.0); 156 evas_canvas3d_node_position_set(light_node, 1000.0, 0.0, 1000.0);
157 evas_canvas3d_node_look_at_set(light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 157 evas_canvas3d_node_look_at_set(light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -196,7 +196,7 @@ main(void)
196 evas_canvas3d_mesh_shader_mode_set(mesh[i], draw_mode[(i % 8)]); 196 evas_canvas3d_mesh_shader_mode_set(mesh[i], draw_mode[(i % 8)]);
197 } 197 }
198 198
199 mesh_node[i] = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 199 mesh_node[i] = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
200 evas_canvas3d_node_member_add(root_node, mesh_node[i]); 200 evas_canvas3d_node_member_add(root_node, mesh_node[i]);
201 evas_canvas3d_node_mesh_add(mesh_node[i], mesh[i]); 201 evas_canvas3d_node_mesh_add(mesh_node[i], mesh[i]);
202 evas_canvas3d_node_position_set(mesh_node[i], 0, ((i % 4) * 4) + ((i / 16) * 1) - 6.5, (((i % 16) / 4) * 4) - 6); 202 evas_canvas3d_node_position_set(mesh_node[i], 0, ((i % 4) * 4) + ((i / 16) * 1) - 6.5, (((i % 16) / 4) * 4) - 6);
diff --git a/src/examples/evas/evas-3d-proxy.c b/src/examples/evas/evas-3d-proxy.c
index 4ee8091a96..1c6cad6875 100644
--- a/src/examples/evas/evas-3d-proxy.c
+++ b/src/examples/evas/evas-3d-proxy.c
@@ -121,7 +121,7 @@ _camera_setup(Scene_Data *data)
121 evas_canvas3d_camera_projection_perspective_set(data->camera, 30.0, 1.0, 2.0, 50.0); 121 evas_canvas3d_camera_projection_perspective_set(data->camera, 30.0, 1.0, 2.0, 50.0);
122 122
123 data->camera_node = 123 data->camera_node =
124 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 124 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
125 evas_canvas3d_node_camera_set(data->camera_node, data->camera); 125 evas_canvas3d_node_camera_set(data->camera_node, data->camera);
126 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 5.0); 126 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 5.0);
127 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 127 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -137,7 +137,7 @@ _light_setup(Scene_Data *data)
137 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0); 137 evas_canvas3d_light_specular_set(data->light, 1.0, 1.0, 1.0, 1.0);
138 138
139 data->light_node = 139 data->light_node =
140 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 140 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
141 evas_canvas3d_node_light_set(data->light_node, data->light); 141 evas_canvas3d_node_light_set(data->light_node, data->light);
142 evas_canvas3d_node_position_set(data->light_node, 0.0, 0.0, 10.0); 142 evas_canvas3d_node_position_set(data->light_node, 0.0, 0.0, 10.0);
143 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0); 143 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0);
@@ -174,7 +174,7 @@ _mesh_setup(Scene_Data *data)
174 evas_canvas3d_mesh_frame_material_set(data->mesh, 0, data->material); 174 evas_canvas3d_mesh_frame_material_set(data->mesh, 0, data->material);
175 175
176 data->mesh_node = 176 data->mesh_node =
177 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 177 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
178 178
179 evas_canvas3d_node_member_add(data->root_node, data->mesh_node); 179 evas_canvas3d_node_member_add(data->root_node, data->mesh_node);
180 evas_canvas3d_node_mesh_add(data->mesh_node, data->mesh); 180 evas_canvas3d_node_mesh_add(data->mesh_node, data->mesh);
@@ -188,7 +188,7 @@ _scene_setup(Scene_Data *data)
188 evas_canvas3d_scene_background_color_set(data->scene, 0.0, 0.0, 0.0, 0.0); 188 evas_canvas3d_scene_background_color_set(data->scene, 0.0, 0.0, 0.0, 0.0);
189 189
190 data->root_node = 190 data->root_node =
191 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 191 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
192 192
193 _camera_setup(data); 193 _camera_setup(data);
194 _light_setup(data); 194 _light_setup(data);
diff --git a/src/examples/evas/evas-3d-shadows.c b/src/examples/evas/evas-3d-shadows.c
index 5571384456..9fd1e5441e 100644
--- a/src/examples/evas/evas-3d-shadows.c
+++ b/src/examples/evas/evas-3d-shadows.c
@@ -214,7 +214,7 @@ _sphere_setup(Body_3D *sphere)
214 214
215 _body_material_set(sphere, 1, 0.0, 0.0); 215 _body_material_set(sphere, 1, 0.0, 0.0);
216 216
217 sphere->node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH), evas_canvas3d_node_position_set(efl_added, 3.0, 3.0, 0.0)); 217 sphere->node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH), evas_canvas3d_node_position_set(efl_added, 3.0, 3.0, 0.0));
218 evas_canvas3d_node_mesh_add(sphere->node, sphere->mesh); 218 evas_canvas3d_node_mesh_add(sphere->node, sphere->mesh);
219} 219}
220 220
@@ -231,7 +231,7 @@ _cone_setup(Body_3D *cone)
231 _body_material_set(cone, 0.8, 0.5, 0.5); 231 _body_material_set(cone, 0.8, 0.5, 0.5);
232 232
233 cone->node = 233 cone->node =
234 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 234 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
235 evas_canvas3d_node_mesh_add(cone->node, cone->mesh); 235 evas_canvas3d_node_mesh_add(cone->node, cone->mesh);
236 evas_canvas3d_node_orientation_angle_axis_set(cone->node, -90.0, 1.0, 0.0, 0.0); 236 evas_canvas3d_node_orientation_angle_axis_set(cone->node, -90.0, 1.0, 0.0, 0.0);
237 evas_canvas3d_node_position_set(cone->node, -4.0, 0.0, -3.0); 237 evas_canvas3d_node_position_set(cone->node, -4.0, 0.0, -3.0);
@@ -250,7 +250,7 @@ _cylinder_setup(Body_3D *cylinder)
250 _body_material_set(cylinder, 0.0, 0.0, 1.0); 250 _body_material_set(cylinder, 0.0, 0.0, 1.0);
251 251
252 cylinder->node = 252 cylinder->node =
253 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 253 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
254 evas_canvas3d_node_mesh_add(cylinder->node, cylinder->mesh); 254 evas_canvas3d_node_mesh_add(cylinder->node, cylinder->mesh);
255 evas_canvas3d_node_orientation_angle_axis_set(cylinder->node, -90.0, 1.0, 0.0, 0.0); 255 evas_canvas3d_node_orientation_angle_axis_set(cylinder->node, -90.0, 1.0, 0.0, 0.0);
256 evas_canvas3d_node_position_set(cylinder->node, -2.0, 3.0, 1.0); 256 evas_canvas3d_node_position_set(cylinder->node, -2.0, 3.0, 1.0);
@@ -298,7 +298,7 @@ _fence_setup(Body_3D *fence)
298 evas_canvas3d_mesh_alpha_test_enable_set(fence->mesh, EINA_TRUE); 298 evas_canvas3d_mesh_alpha_test_enable_set(fence->mesh, EINA_TRUE);
299 evas_canvas3d_mesh_shader_mode_set(fence->mesh, EVAS_CANVAS3D_SHADER_MODE_NORMAL_MAP); 299 evas_canvas3d_mesh_shader_mode_set(fence->mesh, EVAS_CANVAS3D_SHADER_MODE_NORMAL_MAP);
300 fence->node = 300 fence->node =
301 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 301 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
302 evas_canvas3d_node_mesh_add(fence->node, fence->mesh); 302 evas_canvas3d_node_mesh_add(fence->node, fence->mesh);
303 evas_canvas3d_node_orientation_angle_axis_set(fence->node, -90.0, 1.0, 0.0, 0.0); 303 evas_canvas3d_node_orientation_angle_axis_set(fence->node, -90.0, 1.0, 0.0, 0.0);
304 evas_canvas3d_node_scale_set(fence->node, 10.0, 10.0, 5.0); 304 evas_canvas3d_node_scale_set(fence->node, 10.0, 10.0, 5.0);
@@ -317,7 +317,7 @@ _square_setup(Body_3D *square)
317 _body_material_set(square, 0.4, 0.4, 0.4); 317 _body_material_set(square, 0.4, 0.4, 0.4);
318 318
319 square->node = 319 square->node =
320 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 320 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
321 evas_canvas3d_node_mesh_add(square->node, square->mesh); 321 evas_canvas3d_node_mesh_add(square->node, square->mesh);
322 evas_canvas3d_node_position_set(square->node, 0.0, -1.0, 0.0); 322 evas_canvas3d_node_position_set(square->node, 0.0, -1.0, 0.0);
323 evas_canvas3d_node_scale_set(square->node, 30.0, 30.0, 30.0); 323 evas_canvas3d_node_scale_set(square->node, 30.0, 30.0, 30.0);
@@ -335,7 +335,7 @@ _box_setup(Body_3D *box)
335 335
336 _body_material_set(box, 0, 1, 0); 336 _body_material_set(box, 0, 1, 0);
337 337
338 box->node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 338 box->node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
339 evas_canvas3d_node_mesh_add(box->node, box->mesh); 339 evas_canvas3d_node_mesh_add(box->node, box->mesh);
340 evas_canvas3d_node_position_set(box->node, 3.0, 0.0, -3.0); 340 evas_canvas3d_node_position_set(box->node, 3.0, 0.0, -3.0);
341} 341}
@@ -363,7 +363,7 @@ _model_setup(Body_3D *model)
363 evas_canvas3d_mesh_shader_mode_set(model->mesh, EVAS_CANVAS3D_SHADER_MODE_PHONG); 363 evas_canvas3d_mesh_shader_mode_set(model->mesh, EVAS_CANVAS3D_SHADER_MODE_PHONG);
364 364
365 model->node = 365 model->node =
366 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 366 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
367 evas_canvas3d_node_mesh_add(model->node, model->mesh); 367 evas_canvas3d_node_mesh_add(model->node, model->mesh);
368 evas_canvas3d_node_scale_set(model->node, 0.1, 0.1, 0.1); 368 evas_canvas3d_node_scale_set(model->node, 0.1, 0.1, 0.1);
369 evas_canvas3d_node_orientation_angle_axis_set(model->node, 120.0, -0.577, -0.577, -0.577); 369 evas_canvas3d_node_orientation_angle_axis_set(model->node, 120.0, -0.577, -0.577, -0.577);
@@ -394,7 +394,7 @@ _billboard_setup(Scene_Data *data)
394 evas_canvas3d_mesh_blending_enable_set(data->billboard.mesh, EINA_TRUE); 394 evas_canvas3d_mesh_blending_enable_set(data->billboard.mesh, EINA_TRUE);
395 evas_canvas3d_mesh_blending_func_set(data->billboard.mesh, EVAS_CANVAS3D_BLEND_FUNC_SRC_ALPHA, EVAS_CANVAS3D_BLEND_FUNC_ONE_MINUS_SRC_ALPHA); 395 evas_canvas3d_mesh_blending_func_set(data->billboard.mesh, EVAS_CANVAS3D_BLEND_FUNC_SRC_ALPHA, EVAS_CANVAS3D_BLEND_FUNC_ONE_MINUS_SRC_ALPHA);
396 396
397 data->billboard.node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 397 data->billboard.node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
398 evas_canvas3d_node_mesh_add(data->billboard.node, data->billboard.mesh); 398 evas_canvas3d_node_mesh_add(data->billboard.node, data->billboard.mesh);
399 evas_canvas3d_node_position_set(data->billboard.node, 0.0, 2.0, 0.0); 399 evas_canvas3d_node_position_set(data->billboard.node, 0.0, 2.0, 0.0);
400 evas_canvas3d_node_scale_set(data->billboard.node, 2.2, 4.6, 4.0); 400 evas_canvas3d_node_scale_set(data->billboard.node, 2.2, 4.6, 4.0);
@@ -406,12 +406,12 @@ static void
406_camera_setup(Scene_Data *data) 406_camera_setup(Scene_Data *data)
407{ 407{
408 data->camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); 408 data->camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas);
409 data->mediator = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 409 data->mediator = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
410 410
411 evas_canvas3d_camera_projection_perspective_set(data->camera, 50.0, 1.0, 2.0, 100.0); 411 evas_canvas3d_camera_projection_perspective_set(data->camera, 50.0, 1.0, 2.0, 100.0);
412 412
413 data->camera_node = 413 data->camera_node =
414 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 414 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
415 415
416 evas_canvas3d_node_camera_set(data->camera_node, data->camera); 416 evas_canvas3d_node_camera_set(data->camera_node, data->camera);
417 417
@@ -434,7 +434,7 @@ _light_setup(Scene_Data *data)
434 evas_canvas3d_light_projection_perspective_set(data->light, 40.0, 1.0, 2.0, 1000.0); 434 evas_canvas3d_light_projection_perspective_set(data->light, 40.0, 1.0, 2.0, 1000.0);
435 435
436 data->light_node = 436 data->light_node =
437 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 437 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
438 evas_canvas3d_node_light_set(data->light_node, data->light); 438 evas_canvas3d_node_light_set(data->light_node, data->light);
439 evas_canvas3d_node_position_set(data->light_node, 50.0, 50.0, 70.0); 439 evas_canvas3d_node_position_set(data->light_node, 50.0, 50.0, 70.0);
440 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 15.0, 0.0, -5.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 1.0); 440 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 15.0, 0.0, -5.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 1.0);
@@ -452,7 +452,7 @@ _scene_setup(Scene_Data *data)
452 evas_canvas3d_scene_background_color_set(data->scene, BG_COLOR, 1); 452 evas_canvas3d_scene_background_color_set(data->scene, BG_COLOR, 1);
453 453
454 data->root_node = 454 data->root_node =
455 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 455 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
456 456
457 457
458 _camera_setup(data); 458 _camera_setup(data);
diff --git a/src/examples/evas/evas-3d-static-lod.c b/src/examples/evas/evas-3d-static-lod.c
index 4e3c3994e0..4db601c8d0 100644
--- a/src/examples/evas/evas-3d-static-lod.c
+++ b/src/examples/evas/evas-3d-static-lod.c
@@ -117,7 +117,7 @@ _camera_setup(Scene_Data *data)
117 117
118 data->camera_node = 118 data->camera_node =
119 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, 119 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas,
120 evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 120 evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
121 evas_canvas3d_node_camera_set(data->camera_node, data->camera); 121 evas_canvas3d_node_camera_set(data->camera_node, data->camera);
122 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 300.0); 122 evas_canvas3d_node_position_set(data->camera_node, 0.0, 0.0, 300.0);
123 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, 123 evas_canvas3d_node_look_at_set(data->camera_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0,
@@ -135,7 +135,7 @@ _light_setup(Scene_Data *data)
135 135
136 data->light_node = 136 data->light_node =
137 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, 137 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas,
138 evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 138 evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
139 evas_canvas3d_node_light_set(data->light_node, data->light); 139 evas_canvas3d_node_light_set(data->light_node, data->light);
140 evas_canvas3d_node_position_set(data->light_node, 0.0, 0.0, 300.0); 140 evas_canvas3d_node_position_set(data->light_node, 0.0, 0.0, 300.0);
141 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, 141 evas_canvas3d_node_look_at_set(data->light_node, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0,
@@ -161,16 +161,16 @@ _mesh_setup(Scene_Data *data)
161 161
162 data->lod_mesh_node1 = 162 data->lod_mesh_node1 =
163 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, 163 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas,
164 evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 164 evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
165 evas_canvas3d_node_position_set(data->lod_mesh_node1, 2.0, 0.0, 0.0); 165 evas_canvas3d_node_position_set(data->lod_mesh_node1, 2.0, 0.0, 0.0);
166 166
167 data->lod_mesh_node2 = 167 data->lod_mesh_node2 =
168 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, 168 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas,
169 evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 169 evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
170 170
171 data->complex_node = 171 data->complex_node =
172 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, 172 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas,
173 evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 173 evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
174 evas_canvas3d_node_scale_set(data->complex_node, 30.0, 30.0, 30.0); 174 evas_canvas3d_node_scale_set(data->complex_node, 30.0, 30.0, 30.0);
175 175
176 /* Setup mesh. One model, two meshes object with different lod distances.*/ 176 /* Setup mesh. One model, two meshes object with different lod distances.*/
@@ -210,7 +210,7 @@ _scene_setup(Scene_Data *data)
210 210
211 data->root_node = 211 data->root_node =
212 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, 212 efl_add(EVAS_CANVAS3D_NODE_CLASS, evas,
213 evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 213 evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
214 214
215 _camera_setup(data); 215 _camera_setup(data);
216 _light_setup(data); 216 _light_setup(data);
diff --git a/src/examples/evas/shooter/evas-3d-shooter-header.c b/src/examples/evas/shooter/evas-3d-shooter-header.c
index 5c3dfaf8de..8053f53cbb 100644
--- a/src/examples/evas/shooter/evas-3d-shooter-header.c
+++ b/src/examples/evas/shooter/evas-3d-shooter-header.c
@@ -29,8 +29,8 @@ _camera_setup(Scene_Data *data)
29 data->camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); 29 data->camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, evas);
30 evas_canvas3d_camera_projection_perspective_set(data->camera, 65.0, 1.0, 1.0, 300.0); 30 evas_canvas3d_camera_projection_perspective_set(data->camera, 65.0, 1.0, 1.0, 300.0);
31 31
32 data->mediator_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 32 data->mediator_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
33 data->camera_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 33 data->camera_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
34 34
35 evas_canvas3d_node_member_add(data->root_node, data->mediator_node); 35 evas_canvas3d_node_member_add(data->root_node, data->mediator_node);
36 evas_canvas3d_node_member_add(data->mediator_node, data->camera_node); 36 evas_canvas3d_node_member_add(data->mediator_node, data->camera_node);
@@ -50,7 +50,7 @@ _light_setup(Scene_Data *data)
50 evas_canvas3d_light_specular_set(data->light, 0.2, 0.2, 0.2, 1.0); 50 evas_canvas3d_light_specular_set(data->light, 0.2, 0.2, 0.2, 1.0);
51 evas_canvas3d_light_projection_perspective_set(data->light, 100.0, 1.0, 1.0, 200.0); 51 evas_canvas3d_light_projection_perspective_set(data->light, 100.0, 1.0, 1.0, 200.0);
52 52
53 data->light_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 53 data->light_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
54 54
55 evas_canvas3d_node_light_set(data->light_node, data->light); 55 evas_canvas3d_node_light_set(data->light_node, data->light);
56 evas_canvas3d_node_position_set(data->light_node, -30.0, 70.0, 0.0); 56 evas_canvas3d_node_position_set(data->light_node, -30.0, 70.0, 0.0);
diff --git a/src/examples/evas/shooter/evas-3d-shooter.c b/src/examples/evas/shooter/evas-3d-shooter.c
index 74f6584be9..ae6bedee7f 100644
--- a/src/examples/evas/shooter/evas-3d-shooter.c
+++ b/src/examples/evas/shooter/evas-3d-shooter.c
@@ -1004,7 +1004,7 @@ _scene_setup(Scene_Data *data)
1004 evas_canvas3d_scene_size_set(global_scene, WIDTH, HEIGHT); 1004 evas_canvas3d_scene_size_set(global_scene, WIDTH, HEIGHT);
1005 evas_canvas3d_scene_background_color_set(global_scene, 0.5, 0.5, 0.9, 0.0); 1005 evas_canvas3d_scene_background_color_set(global_scene, 0.5, 0.5, 0.9, 0.0);
1006 1006
1007 data->root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 1007 data->root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
1008 1008
1009 _camera_setup(data); 1009 _camera_setup(data);
1010 _light_setup(data); 1010 _light_setup(data);
@@ -1069,7 +1069,7 @@ _scene_setup(Scene_Data *data)
1069 } 1069 }
1070 } 1070 }
1071 1071
1072 data->carp_mediator_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 1072 data->carp_mediator_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
1073 1073
1074 evas_canvas3d_node_member_add(data->carp_mediator_node, data->mesh_node_carpet); 1074 evas_canvas3d_node_member_add(data->carp_mediator_node, data->mesh_node_carpet);
1075 1075
diff --git a/src/lib/edje/edje_load.c b/src/lib/edje/edje_load.c
index 34492c847b..a458b77970 100644
--- a/src/lib/edje/edje_load.c
+++ b/src/lib/edje/edje_load.c
@@ -1086,7 +1086,7 @@ _edje_object_file_set_internal(Evas_Object *obj, const Eina_File *file, const ch
1086 Evas_Canvas3D_Material *material = NULL; 1086 Evas_Canvas3D_Material *material = NULL;
1087 Edje_Part_Description_Mesh_Node *pd_mesh_node; 1087 Edje_Part_Description_Mesh_Node *pd_mesh_node;
1088 1088
1089 rp->node = efl_add(EVAS_CANVAS3D_NODE_CLASS, ed->base.evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH)); 1089 rp->node = efl_add(EVAS_CANVAS3D_NODE_CLASS, ed->base.evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_MESH));
1090 1090
1091 mesh = efl_add(EVAS_CANVAS3D_MESH_CLASS, ed->base.evas); 1091 mesh = efl_add(EVAS_CANVAS3D_MESH_CLASS, ed->base.evas);
1092 evas_canvas3d_node_mesh_add(rp->node, mesh); 1092 evas_canvas3d_node_mesh_add(rp->node, mesh);
@@ -1119,7 +1119,7 @@ _edje_object_file_set_internal(Evas_Object *obj, const Eina_File *file, const ch
1119 { 1119 {
1120 Evas_Canvas3D_Light *light = NULL; 1120 Evas_Canvas3D_Light *light = NULL;
1121 1121
1122 rp->node = efl_add(EVAS_CANVAS3D_NODE_CLASS, ed->base.evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 1122 rp->node = efl_add(EVAS_CANVAS3D_NODE_CLASS, ed->base.evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
1123 light = efl_add(EVAS_CANVAS3D_LIGHT_CLASS, ed->base.evas); 1123 light = efl_add(EVAS_CANVAS3D_LIGHT_CLASS, ed->base.evas);
1124 evas_canvas3d_node_light_set(rp->node, light); 1124 evas_canvas3d_node_light_set(rp->node, light);
1125 1125
@@ -1131,7 +1131,7 @@ _edje_object_file_set_internal(Evas_Object *obj, const Eina_File *file, const ch
1131 { 1131 {
1132 Evas_Canvas3D_Camera *camera = NULL; 1132 Evas_Canvas3D_Camera *camera = NULL;
1133 1133
1134 rp->node = efl_add(EVAS_CANVAS3D_NODE_CLASS, ed->base.evas, evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 1134 rp->node = efl_add(EVAS_CANVAS3D_NODE_CLASS, ed->base.evas, evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
1135 camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, ed->base.evas); 1135 camera = efl_add(EVAS_CANVAS3D_CAMERA_CLASS, ed->base.evas);
1136 evas_canvas3d_node_camera_set(rp->node, camera); 1136 evas_canvas3d_node_camera_set(rp->node, camera);
1137 1137
@@ -2670,7 +2670,7 @@ edje_3d_object_add(Evas_Object *obj, Eo **root_node, Eo *scene)
2670 2670
2671 if (*root_node == NULL) 2671 if (*root_node == NULL)
2672 *root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, ed->base.evas, 2672 *root_node = efl_add(EVAS_CANVAS3D_NODE_CLASS, ed->base.evas,
2673 evas_canvas3d_node_constructor(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE)); 2673 evas_canvas3d_node_type_set(efl_added, EVAS_CANVAS3D_NODE_TYPE_NODE));
2674 2674
2675 if (scene == NULL) 2675 if (scene == NULL)
2676 scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, ed->base.evas); 2676 scene = efl_add(EVAS_CANVAS3D_SCENE_CLASS, ed->base.evas);
diff --git a/src/lib/evas/canvas/evas_canvas3d_node.c b/src/lib/evas/canvas/evas_canvas3d_node.c
index 0760b231be..9e194397a2 100644
--- a/src/lib/evas/canvas/evas_canvas3d_node.c
+++ b/src/lib/evas/canvas/evas_canvas3d_node.c
@@ -1025,11 +1025,27 @@ evas_canvas3d_node_add(Evas *e, Evas_Canvas3D_Node_Type type)
1025 MAGIC_CHECK(e, Evas, MAGIC_EVAS); 1025 MAGIC_CHECK(e, Evas, MAGIC_EVAS);
1026 return NULL; 1026 return NULL;
1027 MAGIC_CHECK_END(); 1027 MAGIC_CHECK_END();
1028 return efl_add(MY_CLASS, e, evas_canvas3d_node_constructor(efl_added, type)); 1028 return efl_add(MY_CLASS, e, evas_canvas3d_node_type_set(efl_added, type));
1029} 1029}
1030 1030
1031EOLIAN static void 1031EOLIAN static Efl_Object *
1032_evas_canvas3d_node_constructor(Eo *obj, Evas_Canvas3D_Node_Data *pd, Evas_Canvas3D_Node_Type type) 1032_evas_canvas3d_node_efl_object_finalize(Eo *obj, Evas_Canvas3D_Node_Data *pd)
1033{
1034 if (pd->type == EVAS_CANVAS3D_NODE_TYPE_MESH)
1035 {
1036 pd->data.mesh.node_meshes = eina_hash_pointer_new(_node_mesh_free_func);
1037 if (pd->data.mesh.node_meshes == NULL)
1038 {
1039 ERR("Failed to create node mesh table.");
1040 _node_free(obj);
1041 return NULL;
1042 }
1043 }
1044 return obj;
1045}
1046
1047EOLIAN static Efl_Object *
1048_evas_canvas3d_node_efl_object_constructor(Eo *obj, Evas_Canvas3D_Node_Data *pd)
1033{ 1049{
1034 evas_canvas3d_object_type_set(obj, EVAS_CANVAS3D_OBJECT_TYPE_NODE); 1050 evas_canvas3d_object_type_set(obj, EVAS_CANVAS3D_OBJECT_TYPE_NODE);
1035 1051
@@ -1049,18 +1065,7 @@ _evas_canvas3d_node_constructor(Eo *obj, Evas_Canvas3D_Node_Data *pd, Evas_Canva
1049 pd->lod = EINA_FALSE; 1065 pd->lod = EINA_FALSE;
1050 1066
1051 evas_box3_set(&pd->aabb, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0); 1067 evas_box3_set(&pd->aabb, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
1052 1068 return obj;
1053 pd->type = type;
1054
1055 if (type == EVAS_CANVAS3D_NODE_TYPE_MESH)
1056 {
1057 pd->data.mesh.node_meshes = eina_hash_pointer_new(_node_mesh_free_func);
1058 if (pd->data.mesh.node_meshes == NULL)
1059 {
1060 ERR("Failed to create node mesh table.");
1061 _node_free(obj);
1062 }
1063 }
1064} 1069}
1065 1070
1066EOLIAN static void 1071EOLIAN static void
@@ -1072,12 +1077,18 @@ _evas_canvas3d_node_efl_object_destructor(Eo *obj, Evas_Canvas3D_Node_Data *pd E
1072} 1077}
1073 1078
1074EOLIAN static Evas_Canvas3D_Node_Type 1079EOLIAN static Evas_Canvas3D_Node_Type
1075_evas_canvas3d_node_type_get(const Eo *obj EINA_UNUSED, Evas_Canvas3D_Node_Data *pd) 1080_evas_canvas3d_node_node_type_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Node_Data *pd)
1076{ 1081{
1077 return pd->type; 1082 return pd->type;
1078} 1083}
1079 1084
1080EOLIAN static void 1085EOLIAN static void
1086_evas_canvas3d_node_node_type_set(Eo *obj EINA_UNUSED, Evas_Canvas3D_Node_Data *pd, Evas_Canvas3D_Node_Type type)
1087{
1088 pd->type = type;
1089}
1090
1091EOLIAN static void
1081_evas_canvas3d_node_member_add(Eo *obj, Evas_Canvas3D_Node_Data *pd, Evas_Canvas3D_Node *member) 1092_evas_canvas3d_node_member_add(Eo *obj, Evas_Canvas3D_Node_Data *pd, Evas_Canvas3D_Node *member)
1082{ 1093{
1083 if (obj == member) 1094 if (obj == member)
diff --git a/src/lib/evas/canvas/evas_canvas3d_node.eo b/src/lib/evas/canvas/evas_canvas3d_node.eo
index ca4e155824..98f27483f4 100644
--- a/src/lib/evas/canvas/evas_canvas3d_node.eo
+++ b/src/lib/evas/canvas/evas_canvas3d_node.eo
@@ -5,18 +5,19 @@ class Evas.Canvas3D.Node (Evas.Canvas3D.Object)
5 [[Evas 3D canvas node class]] 5 [[Evas 3D canvas node class]]
6 data: Evas_Canvas3D_Node_Data; 6 data: Evas_Canvas3D_Node_Data;
7 methods { 7 methods {
8 constructor { 8 @property node_type {
9 [[Constructor.]]
10 legacy: null;
11 params {
12 @in type: Evas.Canvas3D.Node_Type; [[Node type]]
13 }
14 }
15 type_get @const {
16 [[Get the type of the given node. 9 [[Get the type of the given node.
17 10
18 See also @Evas.Canvas3D.Node.member_add.]] 11 See also @Evas.Canvas3D.Node.member_add.]]
19 return: Evas.Canvas3D.Node_Type ; [[The type of the given node.]] 12 set {
13 [[Type can only be set before finalize.]]
14 }
15 get {
16 [[If the object is not node object, returns $unknown.]]
17 }
18 values {
19 type: Evas.Canvas3D.Node_Type(Evas.Canvas3D.Node_Type.unknown); [[Node type]]
20 }
20 } 21 }
21 member_add { 22 member_add {
22 [[Add a member node to the given node. 23 [[Add a member node to the given node.
@@ -383,13 +384,12 @@ class Evas.Canvas3D.Node (Evas.Canvas3D.Object)
383 } 384 }
384 } 385 }
385 implements { 386 implements {
387 Efl.Object.constructor;
386 Efl.Object.destructor; 388 Efl.Object.destructor;
389 Efl.Object.finalize;
387 Evas.Canvas3D.Object.update_notify; 390 Evas.Canvas3D.Object.update_notify;
388 Evas.Canvas3D.Object.change_notify; 391 Evas.Canvas3D.Object.change_notify;
389 Evas.Canvas3D.Object.callback_register; 392 Evas.Canvas3D.Object.callback_register;
390 Evas.Canvas3D.Object.callback_unregister; 393 Evas.Canvas3D.Object.callback_unregister;
391 } 394 }
392 constructors {
393 .constructor;
394 }
395} 395}