diff options
author | Oleksandr Shcherbina <o.shcherbina@samsung.com> | 2015-06-17 16:31:14 +0200 |
---|---|---|
committer | Cedric BAIL <cedric@osg.samsung.com> | 2015-06-17 17:52:17 +0200 |
commit | d409df1caa38ae7eac87f85ff4113484bc5b2099 (patch) | |
tree | 2adcbeadf2f4b2e7f4e7ba327a574c6620c23663 /src | |
parent | 9bf6f14a8a59195fe9be004aaff446c51474fc5d (diff) | |
download | efl-d409df1caa38ae7eac87f85ff4113484bc5b2099.tar.gz |
evas: change interface evas_3d to evas_canvas3d
Summary:
Regard to https://phab.enlightenment.org/T2479 it is need for right generation
Eolian files
Reviewers: cedric
Subscribers: cedric, tasn
Differential Revision: https://phab.enlightenment.org/D2711
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Diffstat (limited to 'src')
79 files changed, 4299 insertions, 4299 deletions
diff --git a/src/Makefile_Evas.am b/src/Makefile_Evas.am index b8e5da5322..941e1d21c0 100644 --- a/src/Makefile_Evas.am +++ b/src/Makefile_Evas.am @@ -24,15 +24,15 @@ evas_eolian_files = \ lib/evas/canvas/evas_selectable_interface.eo \ lib/evas/canvas/evas_zoomable_interface.eo \ lib/evas/canvas/evas_box.eo\ - lib/evas/canvas/evas_3d_camera.eo\ - lib/evas/canvas/evas_3d_texture.eo\ - lib/evas/canvas/evas_3d_material.eo\ - lib/evas/canvas/evas_3d_light.eo\ - lib/evas/canvas/evas_3d_mesh.eo\ - lib/evas/canvas/evas_3d_primitive.eo\ - lib/evas/canvas/evas_3d_node.eo\ - lib/evas/canvas/evas_3d_scene.eo\ - lib/evas/canvas/evas_3d_object.eo \ + lib/evas/canvas/evas_canvas3d_camera.eo\ + lib/evas/canvas/evas_canvas3d_texture.eo\ + lib/evas/canvas/evas_canvas3d_material.eo\ + lib/evas/canvas/evas_canvas3d_light.eo\ + lib/evas/canvas/evas_canvas3d_mesh.eo\ + lib/evas/canvas/evas_canvas3d_primitive.eo\ + lib/evas/canvas/evas_canvas3d_node.eo\ + lib/evas/canvas/evas_canvas3d_scene.eo\ + lib/evas/canvas/evas_canvas3d_object.eo \ lib/evas/canvas/evas_vg.eo \ lib/evas/canvas/efl_vg_base.eo \ lib/evas/canvas/efl_vg_container.eo \ @@ -204,16 +204,16 @@ noinst_HEADERS += \ lib/evas/include/evas_3d_utils.h lib_evas_libevas_la_SOURCES += \ -lib/evas/canvas/evas_3d_object.c \ -lib/evas/canvas/evas_3d_scene.c \ -lib/evas/canvas/evas_3d_node.c \ -lib/evas/canvas/evas_3d_camera.c \ -lib/evas/canvas/evas_3d_light.c \ -lib/evas/canvas/evas_3d_mesh.c \ -lib/evas/canvas/evas_3d_texture.c \ -lib/evas/canvas/evas_3d_material.c \ -lib/evas/canvas/evas_3d_primitive.c \ -lib/evas/canvas/evas_3d_node_callback.h +lib/evas/canvas/evas_canvas3d_object.c \ +lib/evas/canvas/evas_canvas3d_scene.c \ +lib/evas/canvas/evas_canvas3d_node.c \ +lib/evas/canvas/evas_canvas3d_camera.c \ +lib/evas/canvas/evas_canvas3d_light.c \ +lib/evas/canvas/evas_canvas3d_mesh.c \ +lib/evas/canvas/evas_canvas3d_texture.c \ +lib/evas/canvas/evas_canvas3d_material.c \ +lib/evas/canvas/evas_canvas3d_primitive.c \ +lib/evas/canvas/evas_canvas3d_node_callback.h # Model savers/loaders (will be replaced to modules in next commits) lib_evas_libevas_la_SOURCES += \ @@ -224,7 +224,7 @@ modules/evas/model_loaders/ply/evas_model_load_ply.c \ modules/evas/model_savers/eet/evas_model_save_eet.c \ modules/evas/model_savers/obj/evas_model_save_obj.c \ modules/evas/model_savers/ply/evas_model_save_ply.c \ -lib/evas/canvas/evas_3d_eet.c +lib/evas/canvas/evas_canvas3d_eet.c # 3d primitives lib_evas_libevas_la_SOURCES += \ diff --git a/src/bin/edje/edje_cc_handlers.c b/src/bin/edje/edje_cc_handlers.c index 48bdaafa8c..7b3efd4402 100644 --- a/src/bin/edje/edje_cc_handlers.c +++ b/src/bin/edje/edje_cc_handlers.c @@ -554,24 +554,24 @@ static void st_collections_group_nobroadcast(void); Edje_Part_Description_##Type *ed; \ ed = (Edje_Part_Description_##Type*) current_desc; \ \ - if (ed->type_node.orientation.type <= EVAS_3D_NODE_ORIENTATION_TYPE_LOOK_AT) \ + if (ed->type_node.orientation.type <= EVAS_CANVAS3D_NODE_ORIENTATION_TYPE_LOOK_AT) \ { \ ed->type_node.orientation.data[0] = FROM_DOUBLE(parse_float(0)); \ ed->type_node.orientation.data[1] = FROM_DOUBLE(parse_float(1)); \ ed->type_node.orientation.data[2] = FROM_DOUBLE(parse_float(2)); \ - ed->type_node.orientation.type = EVAS_3D_NODE_ORIENTATION_TYPE_LOOK_AT; \ + ed->type_node.orientation.type = EVAS_CANVAS3D_NODE_ORIENTATION_TYPE_LOOK_AT; \ } #define SET_LOOK2(Type, type_node) \ Edje_Part_Description_##Type *ed; \ ed = (Edje_Part_Description_##Type*) current_desc; \ \ - if (ed->type_node.orientation.type <= EVAS_3D_NODE_ORIENTATION_TYPE_LOOK_AT) \ + if (ed->type_node.orientation.type <= EVAS_CANVAS3D_NODE_ORIENTATION_TYPE_LOOK_AT) \ { \ ed->type_node.orientation.data[3] = FROM_DOUBLE(parse_float(0)); \ ed->type_node.orientation.data[4] = FROM_DOUBLE(parse_float(1)); \ ed->type_node.orientation.data[5] = FROM_DOUBLE(parse_float(2)); \ - ed->type_node.orientation.type = EVAS_3D_NODE_ORIENTATION_TYPE_LOOK_AT; \ + ed->type_node.orientation.type = EVAS_CANVAS3D_NODE_ORIENTATION_TYPE_LOOK_AT; \ } #define SET_LOOK_TO(list, Type, type_node) \ @@ -580,38 +580,38 @@ static void st_collections_group_nobroadcast(void); \ ed = (Edje_Part_Description_##Type*) current_desc; \ \ - if (ed->type_node.orientation.type <= EVAS_3D_NODE_ORIENTATION_TYPE_LOOK_TO) \ + if (ed->type_node.orientation.type <= EVAS_CANVAS3D_NODE_ORIENTATION_TYPE_LOOK_TO) \ { \ name = parse_str(0); \ data_queue_part_lookup(list, name, &(ed->type_node.orientation.look_to)); \ free(name); \ - ed->type_node.orientation.type = EVAS_3D_NODE_ORIENTATION_TYPE_LOOK_TO; \ + ed->type_node.orientation.type = EVAS_CANVAS3D_NODE_ORIENTATION_TYPE_LOOK_TO; \ } #define SET_ANGLE_AXIS(Type, type_node) \ Edje_Part_Description_##Type *ed; \ ed = (Edje_Part_Description_##Type*) current_desc; \ \ - if (ed->type_node.orientation.type <= EVAS_3D_NODE_ORIENTATION_TYPE_ANGLE_AXIS) \ + if (ed->type_node.orientation.type <= EVAS_CANVAS3D_NODE_ORIENTATION_TYPE_ANGLE_AXIS) \ { \ ed->type_node.orientation.data[0] = FROM_DOUBLE(parse_float(0)); \ ed->type_node.orientation.data[1] = FROM_DOUBLE(parse_float(1)); \ ed->type_node.orientation.data[2] = FROM_DOUBLE(parse_float(2)); \ ed->type_node.orientation.data[3] = FROM_DOUBLE(parse_float(3)); \ - ed->type_node.orientation.type = EVAS_3D_NODE_ORIENTATION_TYPE_ANGLE_AXIS; \ + ed->type_node.orientation.type = EVAS_CANVAS3D_NODE_ORIENTATION_TYPE_ANGLE_AXIS; \ } #define SET_QUATERNION(Type, type_node) \ Edje_Part_Description_##Type *ed; \ ed = (Edje_Part_Description_##Type*) current_desc; \ \ - if (ed->type_node.orientation.type <= EVAS_3D_NODE_ORIENTATION_TYPE_QUATERNION) \ + if (ed->type_node.orientation.type <= EVAS_CANVAS3D_NODE_ORIENTATION_TYPE_QUATERNION) \ { \ ed->type_node.orientation.data[1] = FROM_DOUBLE(parse_float(0)); \ ed->type_node.orientation.data[2] = FROM_DOUBLE(parse_float(1)); \ ed->type_node.orientation.data[3] = FROM_DOUBLE(parse_float(2)); \ ed->type_node.orientation.data[0] = FROM_DOUBLE(parse_float(3)); \ - ed->type_node.orientation.type = EVAS_3D_NODE_ORIENTATION_TYPE_QUATERNION; \ + ed->type_node.orientation.type = EVAS_CANVAS3D_NODE_ORIENTATION_TYPE_QUATERNION; \ } New_Statement_Handler statement_handlers[] = @@ -9484,9 +9484,9 @@ st_collections_group_parts_part_description_position_space(void) check_arg_count(1); space = parse_enum(0, - "LOCAL", EVAS_3D_SPACE_LOCAL, - "PARENT", EVAS_3D_SPACE_PARENT, - "WORLD", EVAS_3D_SPACE_WORLD, + "LOCAL", EVAS_CANVAS3D_SPACE_LOCAL, + "PARENT", EVAS_CANVAS3D_SPACE_PARENT, + "WORLD", EVAS_CANVAS3D_SPACE_WORLD, NULL); switch (current_part->type) @@ -9778,11 +9778,11 @@ st_collections_group_parts_part_description_properties_material(void) check_arg_count(1); material_attrib = parse_enum(0, - "AMBIENT", EVAS_3D_MATERIAL_AMBIENT, - "DIFFUSE", EVAS_3D_MATERIAL_DIFFUSE, - "SPECULAR", EVAS_3D_MATERIAL_SPECULAR, - "EMISSION", EVAS_3D_MATERIAL_EMISSION, - "NORMAL", EVAS_3D_MATERIAL_NORMAL, + "AMBIENT", EVAS_CANVAS3D_MATERIAL_AMBIENT, + "DIFFUSE", EVAS_CANVAS3D_MATERIAL_DIFFUSE, + "SPECULAR", EVAS_CANVAS3D_MATERIAL_SPECULAR, + "EMISSION", EVAS_CANVAS3D_MATERIAL_EMISSION, + "NORMAL", EVAS_CANVAS3D_MATERIAL_NORMAL, NULL); if (current_part->type == EDJE_PART_TYPE_MESH_NODE) @@ -9888,12 +9888,12 @@ st_collections_group_parts_part_description_properties_shade(void) check_arg_count(1); shade = parse_enum(0, - "VERTEX_COLOR", EVAS_3D_SHADE_MODE_VERTEX_COLOR, - "PARENT", EVAS_3D_SHADE_MODE_DIFFUSE, - "WORLD", EVAS_3D_SHADE_MODE_FLAT, - "PHONG", EVAS_3D_SHADE_MODE_PHONG, - "NORMAL_MAP", EVAS_3D_SHADE_MODE_NORMAL_MAP, - "RENDER", EVAS_3D_SHADE_MODE_SHADOW_MAP_RENDER, + "VERTEX_COLOR", EVAS_CANVAS3D_SHADE_MODE_VERTEX_COLOR, + "PARENT", EVAS_CANVAS3D_SHADE_MODE_DIFFUSE, + "WORLD", EVAS_CANVAS3D_SHADE_MODE_FLAT, + "PHONG", EVAS_CANVAS3D_SHADE_MODE_PHONG, + "NORMAL_MAP", EVAS_CANVAS3D_SHADE_MODE_NORMAL_MAP, + "RENDER", EVAS_CANVAS3D_SHADE_MODE_SHADOW_MAP_RENDER, NULL); if (current_part->type == EDJE_PART_TYPE_MESH_NODE) @@ -10256,9 +10256,9 @@ st_collections_group_parts_part_description_texture_wrap1(void) check_arg_count(1); wrap1 = parse_enum(0, - "CLAMP", EVAS_3D_WRAP_MODE_CLAMP, - "REPEAT", EVAS_3D_WRAP_MODE_REPEAT, - "REFLECT", EVAS_3D_WRAP_MODE_REFLECT, + "CLAMP", EVAS_CANVAS3D_WRAP_MODE_CLAMP, + "REPEAT", EVAS_CANVAS3D_WRAP_MODE_REPEAT, + "REFLECT", EVAS_CANVAS3D_WRAP_MODE_REFLECT, NULL); if (current_part->type == EDJE_PART_TYPE_MESH_NODE) @@ -10298,9 +10298,9 @@ st_collections_group_parts_part_description_texture_wrap2(void) check_arg_count(1); wrap2 = parse_enum(0, - "CLAMP", EVAS_3D_WRAP_MODE_CLAMP, - "REPEAT", EVAS_3D_WRAP_MODE_REPEAT, - "REFLECT", EVAS_3D_WRAP_MODE_REFLECT, + "CLAMP", EVAS_CANVAS3D_WRAP_MODE_CLAMP, + "REPEAT", EVAS_CANVAS3D_WRAP_MODE_REPEAT, + "REFLECT", EVAS_CANVAS3D_WRAP_MODE_REFLECT, NULL); if (current_part->type == EDJE_PART_TYPE_MESH_NODE) @@ -10342,12 +10342,12 @@ st_collections_group_parts_part_description_texture_filter1(void) check_arg_count(1); filter1 = parse_enum(0, - "NEAREST", EVAS_3D_TEXTURE_FILTER_NEAREST, - "LINEAR", EVAS_3D_TEXTURE_FILTER_LINEAR, - "NEAREST_NEAREST", EVAS_3D_TEXTURE_FILTER_NEAREST_MIPMAP_NEAREST, - "LINEAR_NEAREST", EVAS_3D_TEXTURE_FILTER_LINEAR_MIPMAP_NEAREST, - "NEAREST_LINEAR", EVAS_3D_TEXTURE_FILTER_NEAREST_MIPMAP_LINEAR, - "LINEAR_LINEAR", EVAS_3D_TEXTURE_FILTER_LINEAR_MIPMAP_LINEAR, + "NEAREST", EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST, + "LINEAR", EVAS_CANVAS3D_TEXTURE_FILTER_LINEAR, + "NEAREST_NEAREST", EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST_MIPMAP_NEAREST, + "LINEAR_NEAREST", EVAS_CANVAS3D_TEXTURE_FILTER_LINEAR_MIPMAP_NEAREST, + "NEAREST_LINEAR", EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST_MIPMAP_LINEAR, + "LINEAR_LINEAR", EVAS_CANVAS3D_TEXTURE_FILTER_LINEAR_MIPMAP_LINEAR, NULL); if (current_part->type == EDJE_PART_TYPE_MESH_NODE) @@ -10389,12 +10389,12 @@ st_collections_group_parts_part_description_texture_filter2(void) check_arg_count(1); filter2 = parse_enum(0, - "NEAREST", EVAS_3D_TEXTURE_FILTER_NEAREST, - "LINEAR", EVAS_3D_TEXTURE_FILTER_LINEAR, - "NEAREST_NEAREST", EVAS_3D_TEXTURE_FILTER_NEAREST_MIPMAP_NEAREST, - "LINEAR_NEAREST", EVAS_3D_TEXTURE_FILTER_LINEAR_MIPMAP_NEAREST, - "NEAREST_LINEAR", EVAS_3D_TEXTURE_FILTER_NEAREST_MIPMAP_LINEAR, - "LINEAR_LINEAR", EVAS_3D_TEXTURE_FILTER_LINEAR_MIPMAP_LINEAR, + "NEAREST", EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST, + "LINEAR", EVAS_CANVAS3D_TEXTURE_FILTER_LINEAR, + "NEAREST_NEAREST", EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST_MIPMAP_NEAREST, + "LINEAR_NEAREST", EVAS_CANVAS3D_TEXTURE_FILTER_LINEAR_MIPMAP_NEAREST, + "NEAREST_LINEAR", EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST_MIPMAP_LINEAR, + "LINEAR_LINEAR", EVAS_CANVAS3D_TEXTURE_FILTER_LINEAR_MIPMAP_LINEAR, NULL); if (current_part->type == EDJE_PART_TYPE_MESH_NODE) @@ -10438,13 +10438,13 @@ st_collections_group_parts_part_description_mesh_assembly(void) check_arg_count(1); assembly = parse_enum(0, - "POINTS", EVAS_3D_VERTEX_ASSEMBLY_POINTS, - "LINES", EVAS_3D_VERTEX_ASSEMBLY_LINES, - "LINE_STRIP", EVAS_3D_VERTEX_ASSEMBLY_LINE_STRIP, - "LINE_LOOP", EVAS_3D_VERTEX_ASSEMBLY_LINE_LOOP, - "TRIANGLES", EVAS_3D_VERTEX_ASSEMBLY_TRIANGLES, - "TRIANGLE_STRIP", EVAS_3D_VERTEX_ASSEMBLY_TRIANGLE_STRIP, - "TRIANGLE_FAN", EVAS_3D_VERTEX_ASSEMBLY_TRIANGLE_FAN, + "POINTS", EVAS_CANVAS3D_VERTEX_ASSEMBLY_POINTS, + "LINES", EVAS_CANVAS3D_VERTEX_ASSEMBLY_LINES, + "LINE_STRIP", EVAS_CANVAS3D_VERTEX_ASSEMBLY_LINE_STRIP, + "LINE_LOOP", EVAS_CANVAS3D_VERTEX_ASSEMBLY_LINE_LOOP, + "TRIANGLES", EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLES, + "TRIANGLE_STRIP", EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLE_STRIP, + "TRIANGLE_FAN", EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLE_FAN, NULL); if (current_part->type == EDJE_PART_TYPE_MESH_NODE) diff --git a/src/examples/evas/Makefile.am b/src/examples/evas/Makefile.am index 522345c8dd..ed9b8cb744 100644 --- a/src/examples/evas/Makefile.am +++ b/src/examples/evas/Makefile.am @@ -199,90 +199,90 @@ evas_multi_touch_SOURCES = evas-multi-touch.c evas_multi_touch_LDADD = $(ECORE_EVAS_COMMON_LDADD) evas_multi_touch_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) -EXTRA_PROGRAMS += evas_3d_cube -evas_3d_cube_SOURCES = evas-3d-cube.c -evas_3d_cube_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ -evas_3d_cube_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) - -EXTRA_PROGRAMS += evas_3d_cube2 -evas_3d_cube2_SOURCES = evas-3d-cube2.c -evas_3d_cube2_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ -evas_3d_cube2_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) - -EXTRA_PROGRAMS += evas_3d_proxy -evas_3d_proxy_SOURCES = evas-3d-proxy.c -evas_3d_proxy_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ -evas_3d_proxy_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) - -EXTRA_PROGRAMS += evas_3d_pick -evas_3d_pick_SOURCES = evas-3d-pick.c -evas_3d_pick_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ -evas_3d_pick_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) - -EXTRA_PROGRAMS += evas_3d_md2 -evas_3d_md2_SOURCES = evas-3d-md2.c -evas_3d_md2_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ -evas_3d_md2_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) - -EXTRA_PROGRAMS += evas_3d_eet -evas_3d_eet_SOURCES = evas-3d-eet.c -evas_3d_eet_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ -evas_3d_eet_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) - -EXTRA_PROGRAMS += evas_3d_ply -evas_3d_ply_SOURCES = evas-3d-ply.c -evas_3d_ply_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ -evas_3d_ply_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) - -EXTRA_PROGRAMS += evas_3d_frustum -evas_3d_frustum_SOURCES = evas-3d-frustum.c -evas_3d_frustum_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ -evas_3d_frustum_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) - -EXTRA_PROGRAMS += evas_3d_aabb -evas_3d_aabb_SOURCES = evas-3d-aabb.c -evas_3d_aabb_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ -evas_3d_aabb_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) - -EXTRA_PROGRAMS += evas_3d_cube_rotate -evas_3d_cube_rotate_SOURCES = evas-3d-cube-rotate.c -evas_3d_cube_rotate_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ -evas_3d_cube_rotate_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) - -EXTRA_PROGRAMS += evas_3d_shadows -evas_3d_shadows_SOURCES = evas-3d-shadows.c -evas_3d_shadows_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ -evas_3d_shadows_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) - -EXTRA_PROGRAMS += evas_3d_shooter -evas_3d_shooter_SOURCES = shooter/evas-3d-shooter.c shooter/evas-3d-shooter-header.c -evas_3d_shooter_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ -evas_3d_shooter_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) - -EXTRA_PROGRAMS += evas_3d_obj -evas_3d_obj_SOURCES = evas-3d-obj.c -evas_3d_obj_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ -evas_3d_obj_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) - -EXTRA_PROGRAMS += evas_3d_blending -evas_3d_blending_SOURCES = evas-3d-blending.c -evas_3d_blending_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ -evas_3d_blending_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) - -EXTRA_PROGRAMS += evas_3d_mmap -evas_3d_mmap_SOURCES = evas-3d-mmap-set.c -evas_3d_mmap_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ -evas_3d_mmap_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) - -EXTRA_PROGRAMS += evas_3d_colorpick -evas_3d_colorpick_SOURCES = evas-3d-colorpick.c -evas_3d_colorpick_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ -evas_3d_colorpick_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) - -EXTRA_PROGRAMS += evas_3d_parallax_occlusion -evas_3d_parallax_occlusion_SOURCES = evas-3d-parallax-occlusion.c -evas_3d_parallax_occlusion_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ -evas_3d_parallax_occlusion_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) +EXTRA_PROGRAMS += evas_canvas3d_cube +evas_canvas3d_cube_SOURCES = evas-3d-cube.c +evas_canvas3d_cube_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ +evas_canvas3d_cube_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) + +EXTRA_PROGRAMS += evas_canvas3d_cube2 +evas_canvas3d_cube2_SOURCES = evas-3d-cube2.c +evas_canvas3d_cube2_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ +evas_canvas3d_cube2_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) + +EXTRA_PROGRAMS += evas_canvas3d_proxy +evas_canvas3d_proxy_SOURCES = evas-3d-proxy.c +evas_canvas3d_proxy_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ +evas_canvas3d_proxy_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) + +EXTRA_PROGRAMS += evas_canvas3d_pick +evas_canvas3d_pick_SOURCES = evas-3d-pick.c +evas_canvas3d_pick_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ +evas_canvas3d_pick_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) + +EXTRA_PROGRAMS += evas_canvas3d_md2 +evas_canvas3d_md2_SOURCES = evas-3d-md2.c +evas_canvas3d_md2_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ +evas_canvas3d_md2_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) + +EXTRA_PROGRAMS += evas_canvas3d_eet +evas_canvas3d_eet_SOURCES = evas-3d-eet.c +evas_canvas3d_eet_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ +evas_canvas3d_eet_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) + +EXTRA_PROGRAMS += evas_canvas3d_ply +evas_canvas3d_ply_SOURCES = evas-3d-ply.c +evas_canvas3d_ply_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ +evas_canvas3d_ply_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) + +EXTRA_PROGRAMS += evas_canvas3d_frustum +evas_canvas3d_frustum_SOURCES = evas-3d-frustum.c +evas_canvas3d_frustum_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ +evas_canvas3d_frustum_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) + +EXTRA_PROGRAMS += evas_canvas3d_aabb +evas_canvas3d_aabb_SOURCES = evas-3d-aabb.c +evas_canvas3d_aabb_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ +evas_canvas3d_aabb_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) + +EXTRA_PROGRAMS += evas_canvas3d_cube_rotate +evas_canvas3d_cube_rotate_SOURCES = evas-3d-cube-rotate.c +evas_canvas3d_cube_rotate_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ +evas_canvas3d_cube_rotate_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) + +EXTRA_PROGRAMS += evas_canvas3d_shadows +evas_canvas3d_shadows_SOURCES = evas-3d-shadows.c +evas_canvas3d_shadows_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ +evas_canvas3d_shadows_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) + +EXTRA_PROGRAMS += evas_canvas3d_shooter +evas_canvas3d_shooter_SOURCES = shooter/evas-3d-shooter.c shooter/evas-3d-shooter-header.c +evas_canvas3d_shooter_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ +evas_canvas3d_shooter_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) + +EXTRA_PROGRAMS += evas_canvas3d_obj +evas_canvas3d_obj_SOURCES = evas-3d-obj.c +evas_canvas3d_obj_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ +evas_canvas3d_obj_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) + +EXTRA_PROGRAMS += evas_canvas3d_blending +evas_canvas3d_blending_SOURCES = evas-3d-blending.c +evas_canvas3d_blending_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ +evas_canvas3d_blending_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) + +EXTRA_PROGRAMS += evas_canvas3d_mmap +evas_canvas3d_mmap_SOURCES = evas-3d-mmap-set.c +evas_canvas3d_mmap_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ +evas_canvas3d_mmap_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) + +EXTRA_PROGRAMS += evas_canvas3d_colorpick +evas_canvas3d_colorpick_SOURCES = evas-3d-colorpick.c +evas_canvas3d_colorpick_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ +evas_canvas3d_colorpick_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) + +EXTRA_PROGRAMS += evas_canvas3d_parallax_occlusion +evas_canvas3d_parallax_occlusion_SOURCES = evas-3d-parallax-occlusion.c +evas_canvas3d_parallax_occlusion_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ +evas_canvas3d_parallax_occlusion_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) EXTRA_PROGRAMS += evas_gl evas_gl_SOURCES = evas-gl.c diff --git a/src/examples/evas/evas-3d-aabb.c b/src/examples/evas/evas-3d-aabb.c index 6a9d9051b5..7b910893b0 100644 --- a/src/examples/evas/evas-3d-aabb.c +++ b/src/examples/evas/evas-3d-aabb.c @@ -57,7 +57,7 @@ _animate_scene(void *data) { static int frame = 0; - eo_do((Evas_3D_Node *)data, evas_3d_node_mesh_frame_set(mesh, frame)); + eo_do((Evas_Canvas3D_Node *)data, evas_canvas3d_node_mesh_frame_set(mesh, frame)); _redraw_aabb(); @@ -78,28 +78,28 @@ static void _on_key_down(void *data, Evas *e EINA_UNUSED, Evas_Object *eo EINA_UNUSED, void *event_info) { Evas_Event_Key_Down *ev = event_info; - Evas_3D_Node *node = (Evas_3D_Node *)data; + Evas_Canvas3D_Node *node = (Evas_Canvas3D_Node *)data; switch(atoi(ev->key)) { case 1: { - eo_do(node, evas_3d_node_orientation_angle_axis_set(90, 1.0, 0.0, 0.0)); + eo_do(node, evas_canvas3d_node_orientation_angle_axis_set(90, 1.0, 0.0, 0.0)); break; } case 2: { - eo_do(node, evas_3d_node_orientation_angle_axis_set(90, 0.0, 1.0, 0.0)); + eo_do(node, evas_canvas3d_node_orientation_angle_axis_set(90, 0.0, 1.0, 0.0)); break; } case 3: { - eo_do(node, evas_3d_node_orientation_angle_axis_set(90, 0.0, 0.0, 1.0)); + eo_do(node, evas_canvas3d_node_orientation_angle_axis_set(90, 0.0, 0.0, 1.0)); break; } case 4: { - eo_do(node, evas_3d_node_orientation_angle_axis_set(90, 1.0, 1.0, 0.0)); + eo_do(node, evas_canvas3d_node_orientation_angle_axis_set(90, 1.0, 1.0, 0.0)); break; } } @@ -120,9 +120,9 @@ _redraw_aabb() { Evas_Real x0, y0, z0, x1, y1, z1; - eo_do(mesh_node, evas_3d_node_bounding_box_get(&x0, &y0, &z0, &x1, &y1, &z1)); - eo_do(mesh_box_node, evas_3d_node_position_set((x0 + x1)/2, (y0 + y1)/2, (z0 + z1)/2), - evas_3d_node_scale_set(x1 - x0, y1 - y0, z1 - z0)); + eo_do(mesh_node, evas_canvas3d_node_bounding_box_get(&x0, &y0, &z0, &x1, &y1, &z1)); + eo_do(mesh_box_node, evas_canvas3d_node_position_set((x0 + x1)/2, (y0 + y1)/2, (z0 + z1)/2), + evas_canvas3d_node_scale_set(x1 - x0, y1 - y0, z1 - z0)); return EINA_TRUE; } @@ -142,107 +142,107 @@ main(void) evas = ecore_evas_get(ecore_evas); - scene = eo_add(EVAS_3D_SCENE_CLASS, evas); + scene = eo_add(EVAS_CANVAS3D_SCENE_CLASS, evas); - root_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_NODE)); + root_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); - camera = eo_add(EVAS_3D_CAMERA_CLASS, evas); + camera = eo_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); eo_do(camera, - evas_3d_camera_projection_perspective_set(60.0, 1.0, 1.0, 500.0)); + evas_canvas3d_camera_projection_perspective_set(60.0, 1.0, 1.0, 500.0)); camera_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_CAMERA)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_CAMERA)); eo_do(camera_node, - evas_3d_node_camera_set(camera)); + evas_canvas3d_node_camera_set(camera)); eo_do(root_node, - evas_3d_node_member_add(camera_node)); + evas_canvas3d_node_member_add(camera_node)); eo_do(camera_node, - evas_3d_node_position_set(100.0, 50.0, 20.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 20.0, - EVAS_3D_SPACE_PARENT, 0.0, 0.0, 1.0)); - light = eo_add(EVAS_3D_LIGHT_CLASS, evas); + evas_canvas3d_node_position_set(100.0, 50.0, 20.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 20.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 1.0)); + light = eo_add(EVAS_CANVAS3D_LIGHT_CLASS, evas); eo_do(light, - evas_3d_light_ambient_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_specular_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_directional_set(EINA_TRUE)); + evas_canvas3d_light_ambient_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_specular_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_directional_set(EINA_TRUE)); light_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_LIGHT)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_LIGHT)); eo_do(light_node, - evas_3d_node_light_set(light), - evas_3d_node_position_set(1000.0, 0.0, 1000.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + evas_canvas3d_node_light_set(light), + evas_canvas3d_node_position_set(1000.0, 0.0, 1000.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); eo_do(root_node, - evas_3d_node_member_add(light_node)); + evas_canvas3d_node_member_add(light_node)); - mesh = eo_add(EVAS_3D_MESH_CLASS, evas); - material = eo_add(EVAS_3D_MATERIAL_CLASS, evas); + mesh = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); + material = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); eo_do(mesh, efl_file_set(model_path, NULL), - evas_3d_mesh_frame_material_set(0, material), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG)); + evas_canvas3d_mesh_frame_material_set(0, material), + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG)); - texture = eo_add(EVAS_3D_TEXTURE_CLASS, evas); + texture = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); eo_do(texture, - evas_3d_texture_file_set(image_path, NULL), - evas_3d_texture_filter_set(EVAS_3D_TEXTURE_FILTER_NEAREST, - EVAS_3D_TEXTURE_FILTER_NEAREST), - evas_3d_texture_wrap_set(EVAS_3D_WRAP_MODE_REPEAT, - EVAS_3D_WRAP_MODE_REPEAT)); + evas_canvas3d_texture_file_set(image_path, NULL), + evas_canvas3d_texture_filter_set(EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST, + EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST), + evas_canvas3d_texture_wrap_set(EVAS_CANVAS3D_WRAP_MODE_REPEAT, + EVAS_CANVAS3D_WRAP_MODE_REPEAT)); eo_do(material, - evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, texture), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_NORMAL, EINA_TRUE), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, texture), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_NORMAL, EINA_TRUE), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0.01, 0.01, 0.01, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_shininess_set(50.0)); + evas_canvas3d_material_shininess_set(50.0)); - mesh_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); - mesh_box_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); + mesh_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); + mesh_box_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); - material_box = eo_add(EVAS_3D_MATERIAL_CLASS, evas); - eo_do(material_box, evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE)); + material_box = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); + eo_do(material_box, evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE)); - cube = eo_add(EVAS_3D_PRIMITIVE_CLASS, evas); + cube = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, evas); eo_do(cube, - evas_3d_primitive_form_set(EVAS_3D_MESH_PRIMITIVE_CUBE)); + evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_CUBE)); - mesh_box = eo_add(EVAS_3D_MESH_CLASS, evas); + mesh_box = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); eo_do(mesh_box, - evas_3d_mesh_from_primitive_set(0, cube), - evas_3d_mesh_vertex_assembly_set(EVAS_3D_VERTEX_ASSEMBLY_LINES), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_VERTEX_COLOR), - evas_3d_mesh_frame_material_set(0, material_box)); + evas_canvas3d_mesh_from_primitive_set(0, cube), + evas_canvas3d_mesh_vertex_assembly_set(EVAS_CANVAS3D_VERTEX_ASSEMBLY_LINES), + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_VERTEX_COLOR), + evas_canvas3d_mesh_frame_material_set(0, material_box)); _redraw_aabb(); eo_do(root_node, - evas_3d_node_member_add(mesh_box_node)); + evas_canvas3d_node_member_add(mesh_box_node)); eo_do(mesh_box_node, - evas_3d_node_mesh_add(mesh_box)); + evas_canvas3d_node_mesh_add(mesh_box)); eo_do(root_node, - evas_3d_node_member_add(mesh_node)); + evas_canvas3d_node_member_add(mesh_node)); eo_do(mesh_node, - evas_3d_node_mesh_add(mesh)); + evas_canvas3d_node_mesh_add(mesh)); eo_do(scene, - evas_3d_scene_root_node_set(root_node), - evas_3d_scene_camera_node_set(camera_node), - evas_3d_scene_size_set(WIDTH, HEIGHT)); + evas_canvas3d_scene_root_node_set(root_node), + evas_canvas3d_scene_camera_node_set(camera_node), + evas_canvas3d_scene_size_set(WIDTH, HEIGHT)); background = eo_add(EVAS_RECTANGLE_CLASS, evas); eo_do(background, diff --git a/src/examples/evas/evas-3d-blending.c b/src/examples/evas/evas-3d-blending.c index 790ba44d24..b2ea64812c 100644 --- a/src/examples/evas/evas-3d-blending.c +++ b/src/examples/evas/evas-3d-blending.c @@ -22,35 +22,35 @@ static const char *blend_func_names[] = { /**< The scale factors for color components is (0, 0, 0, 0)*/ - "EVAS_3D_BLEND_ZERO", + "EVAS_CANVAS3D_BLEND_ZERO", /**< The scale factors for color components is (1, 1, 1, 1)*/ - "EVAS_3D_BLEND_ONE", + "EVAS_CANVAS3D_BLEND_ONE", /**< The scale factors for color components is (Rs/kR, Gs/kG, Bs/kB, As/kA)*/ - "EVAS_3D_BLEND_SRC_COLOR", + "EVAS_CANVAS3D_BLEND_SRC_COLOR", /**< The scale factors for color components is (1, 1, 1, 1) - (Rs/kR, Gs/kG, Bs/kB, As/kA)*/ - "EVAS_3D_BLEND_ONE_MINUS_SRC_COLOR", + "EVAS_CANVAS3D_BLEND_ONE_MINUS_SRC_COLOR", /**< The scale factors for color components is (Rd/kR, Gd/kG, Bd/kB, Ad/kA)*/ - "EVAS_3D_BLEND_DST_COLOR", + "EVAS_CANVAS3D_BLEND_DST_COLOR", /**< The scale factors for color components is (1, 1, 1, 1) - (Rd/kR, Gd/kG, Bd/kB, Ad/kA)*/ - "EVAS_3D_BLEND_ONE_MINUS_DST_COLOR", + "EVAS_CANVAS3D_BLEND_ONE_MINUS_DST_COLOR", /**< The scale factors for color components is (As/kA, As/kA, As/kA, As/kA)*/ - "EVAS_3D_BLEND_SRC_ALPHA", + "EVAS_CANVAS3D_BLEND_SRC_ALPHA", /**< The scale factors for color components is (1, 1, 1, 1) - (As/kA, As/kA, As/kA, As/kA)*/ - "EVAS_3D_BLEND_ONE_MINUS_SRC_ALPHA", + "EVAS_CANVAS3D_BLEND_ONE_MINUS_SRC_ALPHA", /**< The scale factors for color components is (Ad/kA, Ad/kA, Ad/kA, Ad/kA)*/ - "EVAS_3D_BLEND_DST_ALPHA", + "EVAS_CANVAS3D_BLEND_DST_ALPHA", /**< The scale factors for color components is (1, 1, 1, 1) - (Ad/kA, Ad/kA, Ad/kA, Ad/kA)*/ - "EVAS_3D_BLEND_ONE_MINUS_DST_ALPHA", + "EVAS_CANVAS3D_BLEND_ONE_MINUS_DST_ALPHA", /**< The scale factors for color components is (Rc, Gc, Bc, Ac)*/ - "EVAS_3D_BLEND_CONSTANT_COLOR", + "EVAS_CANVAS3D_BLEND_CONSTANT_COLOR", /**< The scale factors for color components is (1, 1, 1, 1) - (Rc, Gc, Bc, Ac)*/ - "EVAS_3D_BLEND_ONE_MINUS_CONSTANT_COLOR", + "EVAS_CANVAS3D_BLEND_ONE_MINUS_CONSTANT_COLOR", /**< The scale factors for color components is (Ac, Ac, Ac, Ac)*/ - "EVAS_3D_BLEND_CONSTANT_ALPHA", + "EVAS_CANVAS3D_BLEND_CONSTANT_ALPHA", /**< The scale factors for color components is (1, 1, 1, 1) - (Ac, Ac, Ac, Ac)*/ - "EVAS_3D_BLEND_ONE_MINUS_CONSTANT_ALPHA", + "EVAS_CANVAS3D_BLEND_ONE_MINUS_CONSTANT_ALPHA", /**< The scale factors for color components is (i, i, i, 1) where i = min(As, kA, Ad)/kA*/ - "EVAS_3D_BLEND_SRC_ALPHA_SATURATE", + "EVAS_CANVAS3D_BLEND_SRC_ALPHA_SATURATE", }; typedef struct _Scene_Data @@ -75,8 +75,8 @@ Evas *evas = NULL; Eo *background = NULL; Eo *image = NULL; -int func1 = EVAS_3D_BLEND_SRC_ALPHA; -int func2 = EVAS_3D_BLEND_ONE_MINUS_SRC_ALPHA; +int func1 = EVAS_CANVAS3D_BLEND_SRC_ALPHA; +int func2 = EVAS_CANVAS3D_BLEND_ONE_MINUS_SRC_ALPHA; static void _on_key_down(void *data, Evas *e EINA_UNUSED, Evas_Object *eo EINA_UNUSED, void *event_info) @@ -93,16 +93,16 @@ _on_key_down(void *data, Evas *e EINA_UNUSED, Evas_Object *eo EINA_UNUSED, void if (!strcmp("Right", ev->key)) func2--; - if(func1 < EVAS_3D_BLEND_ZERO) - func1 = EVAS_3D_BLEND_SRC_ALPHA_SATURATE; - if(func1 > EVAS_3D_BLEND_SRC_ALPHA_SATURATE) - func1 = EVAS_3D_BLEND_ZERO; + if(func1 < EVAS_CANVAS3D_BLEND_ZERO) + func1 = EVAS_CANVAS3D_BLEND_SRC_ALPHA_SATURATE; + if(func1 > EVAS_CANVAS3D_BLEND_SRC_ALPHA_SATURATE) + func1 = EVAS_CANVAS3D_BLEND_ZERO; - if(func2 < EVAS_3D_BLEND_ZERO) - func2 = EVAS_3D_BLEND_SRC_ALPHA_SATURATE; - if(func2 > EVAS_3D_BLEND_SRC_ALPHA_SATURATE) - func2 = EVAS_3D_BLEND_ZERO; - eo_do(scene->mesh1, evas_3d_mesh_blending_func_set(func1, func2)); + if(func2 < EVAS_CANVAS3D_BLEND_ZERO) + func2 = EVAS_CANVAS3D_BLEND_SRC_ALPHA_SATURATE; + if(func2 > EVAS_CANVAS3D_BLEND_SRC_ALPHA_SATURATE) + func2 = EVAS_CANVAS3D_BLEND_ZERO; + eo_do(scene->mesh1, evas_canvas3d_mesh_blending_func_set(func1, func2)); printf("sfactor = %s, dfactor = %s\n", blend_func_names[func1], blend_func_names[func2]); } @@ -134,7 +134,7 @@ _animate_scene(void *data) angle += 0.02; eo_do(scene->mesh_node, - evas_3d_node_position_set(3 * sin(angle), 0.0, 3 * cos(angle))); + evas_canvas3d_node_position_set(3 * sin(angle), 0.0, 3 * cos(angle))); if (angle > 2 * M_PI) angle = 0; @@ -144,135 +144,135 @@ _animate_scene(void *data) static void _camera_setup(Scene_Data *data) { - data->camera = eo_add(EVAS_3D_CAMERA_CLASS, evas); + data->camera = eo_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); eo_do(data->camera, - evas_3d_camera_projection_perspective_set(60.0, 1.0, 2.0, 50.0)); + evas_canvas3d_camera_projection_perspective_set(60.0, 1.0, 2.0, 50.0)); data->camera_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_CAMERA)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_CAMERA)); eo_do(data->camera_node, - evas_3d_node_camera_set(data->camera), - evas_3d_node_position_set(0.0, 0.0, 10.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + evas_canvas3d_node_camera_set(data->camera), + evas_canvas3d_node_position_set(0.0, 0.0, 10.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); - eo_do(data->root_node, evas_3d_node_member_add(data->camera_node)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->camera_node)); } static void _light_setup(Scene_Data *data) { - data->light = eo_add(EVAS_3D_LIGHT_CLASS, evas); + data->light = eo_add(EVAS_CANVAS3D_LIGHT_CLASS, evas); eo_do(data->light, - evas_3d_light_ambient_set(0.2, 0.2, 0.2, 1.0), - evas_3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_specular_set(1.0, 1.0, 1.0, 1.0)); + evas_canvas3d_light_ambient_set(0.2, 0.2, 0.2, 1.0), + evas_canvas3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_specular_set(1.0, 1.0, 1.0, 1.0)); data->light_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_LIGHT)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_LIGHT)); eo_do(data->light_node, - evas_3d_node_light_set(data->light), - evas_3d_node_position_set(0.0, 0.0, 10.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); - eo_do(data->root_node, evas_3d_node_member_add(data->light_node)); + evas_canvas3d_node_light_set(data->light), + evas_canvas3d_node_position_set(0.0, 0.0, 10.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->light_node)); } static void -_set_ball(Eo *mesh, Eo *sphere, Evas_3D_Material *material) +_set_ball(Eo *mesh, Eo *sphere, Evas_Canvas3D_Material *material) { eo_do(mesh, - evas_3d_mesh_from_primitive_set(0, sphere), - evas_3d_mesh_frame_material_set(0, material), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG)); + evas_canvas3d_mesh_from_primitive_set(0, sphere), + evas_canvas3d_mesh_frame_material_set(0, material), + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG)); } static void _mesh_setup(Scene_Data *data) { - data->material = eo_add(EVAS_3D_MATERIAL_CLASS, evas); + data->material = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); eo_do(data->material, - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 1.0, 0.2, 0.2, 0.2), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 1.0, 0.0, 0.0, 0.2), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 0.2), - evas_3d_material_shininess_set(100.0)); + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 1.0, 0.2, 0.2, 0.2), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 1.0, 0.0, 0.0, 0.2), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 0.2), + evas_canvas3d_material_shininess_set(100.0)); - data->material1 = eo_add(EVAS_3D_MATERIAL_CLASS, evas); + data->material1 = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); eo_do(data->material1, - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 0.0, 0.2, 0.2, 0.2), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 0.0, 0.0, 1.0, 0.2), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 0.2), - evas_3d_material_shininess_set(100.0)); + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0.0, 0.2, 0.2, 0.2), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 0.0, 0.0, 1.0, 0.2), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 0.2), + evas_canvas3d_material_shininess_set(100.0)); - data->sphere = eo_add(EVAS_3D_PRIMITIVE_CLASS, evas); + data->sphere = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, evas); eo_do(data->sphere, - evas_3d_primitive_form_set(EVAS_3D_MESH_PRIMITIVE_SPHERE), - evas_3d_primitive_precision_set(50)); + evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_SPHERE), + evas_canvas3d_primitive_precision_set(50)); - data->mesh = eo_add(EVAS_3D_MESH_CLASS, evas); - data->mesh1 = eo_add(EVAS_3D_MESH_CLASS, evas); + data->mesh = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); + data->mesh1 = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); _set_ball(data->mesh, data->sphere, data->material); _set_ball(data->mesh1, data->sphere, data->material1); data->mesh_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); - eo_do(data->root_node, evas_3d_node_member_add(data->mesh_node)); - eo_do(data->mesh_node, evas_3d_node_mesh_add(data->mesh)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->mesh_node)); + eo_do(data->mesh_node, evas_canvas3d_node_mesh_add(data->mesh)); data->mesh_node1 = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); - eo_do(data->root_node, evas_3d_node_member_add(data->mesh_node1)); - eo_do(data->mesh_node1, evas_3d_node_mesh_add(data->mesh1)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->mesh_node1)); + eo_do(data->mesh_node1, evas_canvas3d_node_mesh_add(data->mesh1)); - eo_do(data->mesh1, evas_3d_mesh_blending_enable_set(EINA_TRUE), - evas_3d_mesh_blending_func_set(func1, func2)); + eo_do(data->mesh1, evas_canvas3d_mesh_blending_enable_set(EINA_TRUE), + evas_canvas3d_mesh_blending_func_set(func1, func2)); eo_do(data->mesh_node, - evas_3d_node_scale_set(2.0, 2.0, 2.0)); + evas_canvas3d_node_scale_set(2.0, 2.0, 2.0)); eo_do(data->mesh_node1, - evas_3d_node_scale_set(5.0, 5.0, 5.0)); + evas_canvas3d_node_scale_set(5.0, 5.0, 5.0)); } static void _scene_setup(Scene_Data *data) { - data->scene = eo_add(EVAS_3D_SCENE_CLASS, evas); + data->scene = eo_add(EVAS_CANVAS3D_SCENE_CLASS, evas); eo_do(data->scene, - evas_3d_scene_size_set(WIDTH, HEIGHT); - evas_3d_scene_background_color_set(0.5, 0.5, 0.5, 1)); + evas_canvas3d_scene_size_set(WIDTH, HEIGHT); + evas_canvas3d_scene_background_color_set(0.5, 0.5, 0.5, 1)); data->root_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_NODE)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); _camera_setup(data); _light_setup(data); _mesh_setup(data); eo_do(data->scene, - evas_3d_scene_root_node_set(data->root_node), - evas_3d_scene_camera_node_set(data->camera_node)); + evas_canvas3d_scene_root_node_set(data->root_node), + evas_canvas3d_scene_camera_node_set(data->camera_node)); } int diff --git a/src/examples/evas/evas-3d-colorpick.c b/src/examples/evas/evas-3d-colorpick.c index 215c455683..0691fb2ea8 100644 --- a/src/examples/evas/evas-3d-colorpick.c +++ b/src/examples/evas/evas-3d-colorpick.c @@ -130,7 +130,7 @@ _animate_sphere(void *data) static int angle = 0.0; Eo *n = (Eo*)(((Test_object *)data)->node); Evas_Real s = ((Test_object *)data)->speed; - eo_do(n, evas_3d_node_orientation_angle_axis_set(angle, s, s - 1, s + 1)); + eo_do(n, evas_canvas3d_node_orientation_angle_axis_set(angle, s, s - 1, s + 1)); angle++; if (angle > 360) angle = 0.0; return EINA_TRUE; @@ -143,8 +143,8 @@ void _recalculate_position() Test_object *m; eo_do(((Test_object *)eina_list_nth(globalscene.spheres, 0))->node, - evas_3d_object_update(), - evas_3d_node_bounding_box_get(NULL, NULL, NULL, &x1, &y1, NULL)); + evas_canvas3d_object_update(), + evas_canvas3d_node_bounding_box_get(NULL, NULL, NULL, &x1, &y1, NULL)); for (i = 0; i < globalscene.row; ++i) { @@ -153,7 +153,7 @@ void _recalculate_position() { shifty = (j * 2 - globalscene.col) * y1; m = (Test_object *)eina_list_nth(globalscene.spheres, count); - eo_do(m->node, evas_3d_node_position_set(shifty, 0.0, shiftx)); + eo_do(m->node, evas_canvas3d_node_position_set(shifty, 0.0, shiftx)); count++; } } @@ -168,31 +168,31 @@ _on_key_down(void *data EINA_UNUSED, Evas *e EINA_UNUSED, Test_object * item; if (!strcmp(ev->key, "Down")) { - eo_do(globalscene.camera_node, evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x, &y, &z), - evas_3d_node_position_set(x, y, (z - 5))); + eo_do(globalscene.camera_node, evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x, &y, &z), + evas_canvas3d_node_position_set(x, y, (z - 5))); } else if (!strcmp(ev->key, "Up")) { - eo_do(globalscene.camera_node, evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x, &y, &z), - evas_3d_node_position_set(x, y, (z + 5))); + eo_do(globalscene.camera_node, evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x, &y, &z), + evas_canvas3d_node_position_set(x, y, (z + 5))); } else if (!strcmp(ev->key, "Left")) { eo_do(((Test_object *)eina_list_nth(globalscene.spheres, 0))->node, - evas_3d_node_scale_get(EVAS_3D_SPACE_PARENT, &x, &y, &z)); + evas_canvas3d_node_scale_get(EVAS_CANVAS3D_SPACE_PARENT, &x, &y, &z)); EINA_LIST_FOREACH(globalscene.spheres, l, item) { - eo_do(item->node, evas_3d_node_scale_set((x - SCALE_UNIT), (y - SCALE_UNIT), (z - SCALE_UNIT))); + eo_do(item->node, evas_canvas3d_node_scale_set((x - SCALE_UNIT), (y - SCALE_UNIT), (z - SCALE_UNIT))); } _recalculate_position(); } else if (!strcmp(ev->key, "Right")) { eo_do(((Test_object *)eina_list_nth(globalscene.spheres, 0))->node, - evas_3d_node_scale_get(EVAS_3D_SPACE_PARENT, &x, &y, &z)); + evas_canvas3d_node_scale_get(EVAS_CANVAS3D_SPACE_PARENT, &x, &y, &z)); EINA_LIST_FOREACH(globalscene.spheres, l, item) { - eo_do(item->node, evas_3d_node_scale_set((x + SCALE_UNIT), (y + SCALE_UNIT), (z + SCALE_UNIT))); + eo_do(item->node, evas_canvas3d_node_scale_set((x + SCALE_UNIT), (y + SCALE_UNIT), (z + SCALE_UNIT))); } _recalculate_position(); } @@ -203,8 +203,8 @@ static void _on_mouse_down(void *data EINA_UNUSED, Evas *e EINA_UNUSED, Evas_Object *eo EINA_UNUSED, void *event_info) { Evas_Event_Mouse_Down *ev = event_info; - Evas_3D_Node *n; - Evas_3D_Mesh *m; + Evas_Canvas3D_Node *n; + Evas_Canvas3D_Mesh *m; Evas_Real s, t; clock_t time; float diff_sec; @@ -213,27 +213,27 @@ _on_mouse_down(void *data EINA_UNUSED, Evas *e EINA_UNUSED, Evas_Object *eo EINA Eina_Bool flag; if (ev->button == 1) { - eo_do(globalscene.scene, evas_3d_scene_color_pick_enable_set(EINA_TRUE)); + eo_do(globalscene.scene, evas_canvas3d_scene_color_pick_enable_set(EINA_TRUE)); eo_do(globalscene.scene, - flag = evas_3d_scene_pick(ev->canvas.x, ev->canvas.y, &n, &m, NULL, NULL)); + flag = evas_canvas3d_scene_pick(ev->canvas.x, ev->canvas.y, &n, &m, NULL, NULL)); time = clock() - time; diff_sec = ((float)time) / CLOCKS_PER_SEC / 10; if (flag) { fprintf(stdout, "Boom! Time expended for color pick: %2.7f .\n", diff_sec); - eo_do(n, evas_3d_node_scale_set(VEC_3(SMALL_SCALE))); + eo_do(n, evas_canvas3d_node_scale_set(VEC_3(SMALL_SCALE))); } } else { - eo_do(globalscene.scene, evas_3d_scene_color_pick_enable_set(EINA_FALSE)); - eo_do(globalscene.scene, flag = evas_3d_scene_pick(ev->canvas.x, ev->canvas.y, &n, &m, &s, &t)); + eo_do(globalscene.scene, evas_canvas3d_scene_color_pick_enable_set(EINA_FALSE)); + eo_do(globalscene.scene, flag = evas_canvas3d_scene_pick(ev->canvas.x, ev->canvas.y, &n, &m, &s, &t)); time = clock() - time; diff_sec = ((float)time) / CLOCKS_PER_SEC / 10; if (flag) { fprintf(stdout, "Boom! Time expended for geometry pick: %2.7f .\n", diff_sec); - eo_do(n, evas_3d_node_scale_set(VEC_3(BIG_SCALE))); + eo_do(n, evas_canvas3d_node_scale_set(VEC_3(BIG_SCALE))); } } } @@ -242,39 +242,39 @@ Eina_Bool _init_sphere(void *this, const char *texture) { Test_object *sphere = (Test_object *)this; - sphere->primitive = eo_add(EVAS_3D_PRIMITIVE_CLASS, evas); - sphere->mesh = eo_add(EVAS_3D_MESH_CLASS, evas); - sphere->material = eo_add(EVAS_3D_MATERIAL_CLASS, evas); + sphere->primitive = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, evas); + sphere->mesh = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); + sphere->material = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); eo_do(sphere->primitive, - evas_3d_primitive_form_set(EVAS_3D_MESH_PRIMITIVE_SPHERE), - evas_3d_primitive_precision_set(50)); + evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_SPHERE), + evas_canvas3d_primitive_precision_set(50)); eo_do(sphere->mesh, - evas_3d_mesh_from_primitive_set(0, sphere->primitive), - evas_3d_mesh_frame_material_set(0, sphere->material), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG)); + evas_canvas3d_mesh_from_primitive_set(0, sphere->primitive), + evas_canvas3d_mesh_frame_material_set(0, sphere->material), + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG)); - eo_do(sphere->mesh, evas_3d_mesh_color_pick_enable_set(EINA_TRUE)); + eo_do(sphere->mesh, evas_canvas3d_mesh_color_pick_enable_set(EINA_TRUE)); - sphere->texture = eo_add(EVAS_3D_TEXTURE_CLASS, evas); + sphere->texture = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); eo_do(sphere->texture, - evas_3d_texture_file_set(texture, NULL), - evas_3d_texture_filter_set(EVAS_3D_TEXTURE_FILTER_NEAREST, - EVAS_3D_TEXTURE_FILTER_NEAREST), - evas_3d_texture_wrap_set(EVAS_3D_WRAP_MODE_REPEAT, - EVAS_3D_WRAP_MODE_REPEAT)); + evas_canvas3d_texture_file_set(texture, NULL), + evas_canvas3d_texture_filter_set(EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST, + EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST), + evas_canvas3d_texture_wrap_set(EVAS_CANVAS3D_WRAP_MODE_REPEAT, + EVAS_CANVAS3D_WRAP_MODE_REPEAT)); eo_do(sphere->material, - evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, sphere->texture), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_NORMAL, EINA_TRUE), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, sphere->texture), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_NORMAL, EINA_TRUE), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0.01, 0.01, 0.01, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_shininess_set(50.0)); + evas_canvas3d_material_shininess_set(50.0)); return EINA_TRUE; } @@ -286,43 +286,43 @@ _init_scene(const char *texture) Evas_Real tmp; Test_object *m; - globalscene.scene = eo_add(EVAS_3D_SCENE_CLASS, evas); + globalscene.scene = eo_add(EVAS_CANVAS3D_SCENE_CLASS, evas); - globalscene.root_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_NODE)); + globalscene.root_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); - globalscene.camera = eo_add(EVAS_3D_CAMERA_CLASS, evas); + globalscene.camera = eo_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); eo_do(globalscene.camera, - evas_3d_camera_projection_perspective_set(30.0, 1.0, 1.0, 1000.0)); + evas_canvas3d_camera_projection_perspective_set(30.0, 1.0, 1.0, 1000.0)); globalscene.camera_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_CAMERA)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_CAMERA)); eo_do(globalscene.camera_node, - evas_3d_node_camera_set(globalscene.camera)); + evas_canvas3d_node_camera_set(globalscene.camera)); eo_do(globalscene.root_node, - evas_3d_node_member_add(globalscene.camera_node)); + evas_canvas3d_node_member_add(globalscene.camera_node)); eo_do(globalscene.camera_node, - evas_3d_node_position_set(0.0, 30.0, 800.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, -1000.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); - globalscene.light = eo_add(EVAS_3D_LIGHT_CLASS, evas); + evas_canvas3d_node_position_set(0.0, 30.0, 800.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, -1000.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + globalscene.light = eo_add(EVAS_CANVAS3D_LIGHT_CLASS, evas); eo_do(globalscene.light, - evas_3d_light_ambient_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_specular_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_directional_set(EINA_TRUE)); + evas_canvas3d_light_ambient_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_specular_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_directional_set(EINA_TRUE)); globalscene.light_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_LIGHT)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_LIGHT)); eo_do(globalscene.light_node, - evas_3d_node_light_set(globalscene.light), - evas_3d_node_position_set(100.0, 50.0, 300.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 1.0, 1.0, 1.0)); + evas_canvas3d_node_light_set(globalscene.light), + evas_canvas3d_node_position_set(100.0, 50.0, 300.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 1.0, 1.0, 1.0)); eo_do(globalscene.root_node, - evas_3d_node_member_add(globalscene.light_node)); + evas_canvas3d_node_member_add(globalscene.light_node)); tmp = 0.01; for (i = 0; i < globalscene.col * globalscene.row; i++) @@ -339,14 +339,14 @@ _init_scene(const char *texture) m->material = spheretmp->material; m->texture = spheretmp->texture; } - m->node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); + m->node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); m->speed = tmp; m->sphere_animate = _animate_sphere; m->animate = ecore_timer_add(m->speed, m->sphere_animate, m); - eo_do(globalscene.root_node, evas_3d_node_member_add(m->node)); - eo_do(m->node, evas_3d_node_mesh_add(m->mesh), - evas_3d_node_scale_set(VEC_3(INIT_SCALE))); + eo_do(globalscene.root_node, evas_canvas3d_node_member_add(m->node)); + eo_do(m->node, evas_canvas3d_node_mesh_add(m->mesh), + evas_canvas3d_node_scale_set(VEC_3(INIT_SCALE))); globalscene.spheres = eina_list_append(globalscene.spheres, m); tmp += 0.01; } @@ -354,9 +354,9 @@ _init_scene(const char *texture) _recalculate_position(); eo_do(globalscene.scene, - evas_3d_scene_root_node_set(globalscene.root_node), - evas_3d_scene_camera_node_set(globalscene.camera_node), - evas_3d_scene_size_set(WIDTH, HEIGHT)); + evas_canvas3d_scene_root_node_set(globalscene.root_node), + evas_canvas3d_scene_camera_node_set(globalscene.camera_node), + evas_canvas3d_scene_size_set(WIDTH, HEIGHT)); return EINA_TRUE; } diff --git a/src/examples/evas/evas-3d-cube-rotate.c b/src/examples/evas/evas-3d-cube-rotate.c index 3b487d6ed8..b78ed03228 100644 --- a/src/examples/evas/evas-3d-cube-rotate.c +++ b/src/examples/evas/evas-3d-cube-rotate.c @@ -81,15 +81,15 @@ _continue_scene(void *data) static void -_rotate_x_reload(Evas_3D_Scene *eo_scene, Evas_Event_Mouse_Down *ev, Evas_3D_Node *node, Evas_3D_Mesh *mesh, +_rotate_x_reload(Evas_Canvas3D_Scene *eo_scene, Evas_Event_Mouse_Down *ev, Evas_Canvas3D_Node *node, Evas_Canvas3D_Mesh *mesh, float *angle_diff, Evas_Coord *mouse_coord) { - Evas_3D_Node *n = NULL; - Evas_3D_Mesh *m = NULL; + Evas_Canvas3D_Node *n = NULL; + Evas_Canvas3D_Mesh *m = NULL; Evas_Real s, t; int mouse_diff; - eo_do(eo_scene, evas_3d_scene_pick(ev->canvas.x, ev->canvas.y, &n, &m, &s, &t)); + eo_do(eo_scene, evas_canvas3d_scene_pick(ev->canvas.x, ev->canvas.y, &n, &m, &s, &t)); if ((n == node) && (m == mesh)) { @@ -140,7 +140,7 @@ _animate_scene(void *data) angle += sc->angle; - eo_do(sc->mesh_node, evas_3d_node_orientation_angle_axis_set(angle, 0, 1.0, 0.0)); + eo_do(sc->mesh_node, evas_canvas3d_node_orientation_angle_axis_set(angle, 0, 1.0, 0.0)); return EINA_TRUE; } @@ -148,93 +148,93 @@ _animate_scene(void *data) static void _camera_setup(Scene_Data *data) { - data->camera = eo_add(EVAS_3D_CAMERA_CLASS, evas); + data->camera = eo_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); eo_do(data->camera, - evas_3d_camera_projection_perspective_set(20.0, 1.0, 2.0, 50.0)); + evas_canvas3d_camera_projection_perspective_set(20.0, 1.0, 2.0, 50.0)); - data->camera_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_CAMERA)); + data->camera_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_CAMERA)); eo_do(data->camera_node, - evas_3d_node_camera_set(data->camera), - evas_3d_node_position_set(3.0, 3.0, 10.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + evas_canvas3d_node_camera_set(data->camera), + evas_canvas3d_node_position_set(3.0, 3.0, 10.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); - eo_do(data->root_node, evas_3d_node_member_add(data->camera_node)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->camera_node)); } static void _light_setup(Scene_Data *data) { - data->light = eo_add(EVAS_3D_LIGHT_CLASS,evas); + data->light = eo_add(EVAS_CANVAS3D_LIGHT_CLASS,evas); eo_do(data->light, - evas_3d_light_ambient_set(0.2, 0.2, 0.2, 1.0), - evas_3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_specular_set(1.0, 1.0, 1.0, 1.0)); + evas_canvas3d_light_ambient_set(0.2, 0.2, 0.2, 1.0), + evas_canvas3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_specular_set(1.0, 1.0, 1.0, 1.0)); - data->light_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_LIGHT)); + data->light_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_LIGHT)); eo_do(data->light_node, - evas_3d_node_light_set(data->light), - evas_3d_node_position_set(5.0, 5.0, 10.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + evas_canvas3d_node_light_set(data->light), + evas_canvas3d_node_position_set(5.0, 5.0, 10.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); - eo_do(data->root_node, evas_3d_node_member_add(data->light_node)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->light_node)); } static void _mesh_setup(Scene_Data *data) { /* Setup material. */ - data->material = eo_add(EVAS_3D_MATERIAL_CLASS, evas); + data->material = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); eo_do(data->material, - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 0.2, 0.2, 0.2, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 0.8, 0.8, 0.8, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_shininess_set(100.0)); + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0.2, 0.2, 0.2, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 0.8, 0.8, 0.8, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_shininess_set(100.0)); /* Setup primitive */ - data->cube = eo_add(EVAS_3D_PRIMITIVE_CLASS, evas); + data->cube = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, evas); eo_do(data->cube, - evas_3d_primitive_form_set(EVAS_3D_MESH_PRIMITIVE_CUBE)); + evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_CUBE)); /* Setup mesh. */ - data->mesh = eo_add(EVAS_3D_MESH_CLASS, evas); + data->mesh = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); eo_do(data->mesh, - evas_3d_mesh_from_primitive_set(0, data->cube), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG), - evas_3d_mesh_frame_material_set(0, data->material)); + evas_canvas3d_mesh_from_primitive_set(0, data->cube), + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG), + evas_canvas3d_mesh_frame_material_set(0, data->material)); - data->mesh_node = eo_add(EVAS_3D_NODE_CLASS, evas, evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); + data->mesh_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); eo_do(data->root_node, - evas_3d_node_member_add(data->mesh_node)); - eo_do(data->mesh_node, evas_3d_node_mesh_add(data->mesh)); + evas_canvas3d_node_member_add(data->mesh_node)); + eo_do(data->mesh_node, evas_canvas3d_node_mesh_add(data->mesh)); } static void _scene_setup(Scene_Data *data) { - scene = eo_add(EVAS_3D_SCENE_CLASS, evas); - data->root_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_NODE)); + scene = eo_add(EVAS_CANVAS3D_SCENE_CLASS, evas); + data->root_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); eo_do(scene, - evas_3d_scene_size_set(WIDTH, HEIGHT), - evas_3d_scene_background_color_set(0.0, 0.0, 0.0, 0.0)); + evas_canvas3d_scene_size_set(WIDTH, HEIGHT), + evas_canvas3d_scene_background_color_set(0.0, 0.0, 0.0, 0.0)); _camera_setup(data); _light_setup(data); _mesh_setup(data); eo_do(scene, - evas_3d_scene_root_node_set(data->root_node), - evas_3d_scene_camera_node_set(data->camera_node)); + evas_canvas3d_scene_root_node_set(data->root_node), + evas_canvas3d_scene_camera_node_set(data->camera_node)); data->mouse_old_x = 0; data->mouse_diff_x = 0; diff --git a/src/examples/evas/evas-3d-cube.c b/src/examples/evas/evas-3d-cube.c index 02067c2461..1ed4a07525 100644 --- a/src/examples/evas/evas-3d-cube.c +++ b/src/examples/evas/evas-3d-cube.c @@ -123,7 +123,7 @@ _animate_scene(void *data) angle += 0.5; eo_do(scene->mesh_node, - evas_3d_node_orientation_angle_axis_set(angle, 1.0, 1.0, 1.0)); + evas_canvas3d_node_orientation_angle_axis_set(angle, 1.0, 1.0, 1.0)); /* Rotate */ if (angle > 360.0) angle -= 360.0f; @@ -134,106 +134,106 @@ _animate_scene(void *data) static void _camera_setup(Scene_Data *data) { - data->camera = eo_add(EVAS_3D_CAMERA_CLASS, evas); + data->camera = eo_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); eo_do(data->camera, - evas_3d_camera_projection_perspective_set(60.0, 1.0, 2.0, 50.0)); + evas_canvas3d_camera_projection_perspective_set(60.0, 1.0, 2.0, 50.0)); data->camera_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_CAMERA)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_CAMERA)); eo_do(data->camera_node, - evas_3d_node_camera_set(data->camera), - evas_3d_node_position_set(0.0, 0.0, 10.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); - eo_do(data->root_node, evas_3d_node_member_add(data->camera_node)); + evas_canvas3d_node_camera_set(data->camera), + evas_canvas3d_node_position_set(0.0, 0.0, 10.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->camera_node)); } static void _light_setup(Scene_Data *data) { - data->light = eo_add(EVAS_3D_LIGHT_CLASS, evas); + data->light = eo_add(EVAS_CANVAS3D_LIGHT_CLASS, evas); eo_do(data->light, - evas_3d_light_ambient_set(0.2, 0.2, 0.2, 1.0), - evas_3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_specular_set(1.0, 1.0, 1.0, 1.0)); + evas_canvas3d_light_ambient_set(0.2, 0.2, 0.2, 1.0), + evas_canvas3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_specular_set(1.0, 1.0, 1.0, 1.0)); data->light_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_LIGHT)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_LIGHT)); eo_do(data->light_node, - evas_3d_node_light_set(data->light), - evas_3d_node_position_set(0.0, 0.0, 10.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); - eo_do(data->root_node, evas_3d_node_member_add(data->light_node)); + evas_canvas3d_node_light_set(data->light), + evas_canvas3d_node_position_set(0.0, 0.0, 10.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->light_node)); } static void _mesh_setup(Scene_Data *data) { /* Setup material. */ - data->material = eo_add(EVAS_3D_MATERIAL_CLASS, evas); + data->material = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); eo_do(data->material, - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 0.2, 0.2, 0.2, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 0.8, 0.8, 0.8, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_shininess_set(100.0)); + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0.2, 0.2, 0.2, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 0.8, 0.8, 0.8, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_shininess_set(100.0)); /* Setup mesh. */ - data->mesh = eo_add(EVAS_3D_MESH_CLASS, evas); + data->mesh = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); eo_do(data->mesh, - evas_3d_mesh_vertex_count_set(24), - evas_3d_mesh_frame_add(0), + evas_canvas3d_mesh_vertex_count_set(24), + evas_canvas3d_mesh_frame_add(0), - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_POSITION, + evas_canvas3d_mesh_frame_vertex_data_set(0, EVAS_CANVAS3D_VERTEX_POSITION, 12 * sizeof(float), &cube_vertices[ 0]), - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_NORMAL, + evas_canvas3d_mesh_frame_vertex_data_set(0, EVAS_CANVAS3D_VERTEX_NORMAL, 12 * sizeof(float), &cube_vertices[ 3]), - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_COLOR, + evas_canvas3d_mesh_frame_vertex_data_set(0, EVAS_CANVAS3D_VERTEX_COLOR, 12 * sizeof(float), &cube_vertices[ 6]), - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_TEXCOORD, + evas_canvas3d_mesh_frame_vertex_data_set(0, EVAS_CANVAS3D_VERTEX_TEXCOORD, 12 * sizeof(float), &cube_vertices[10]), - evas_3d_mesh_index_data_set(EVAS_3D_INDEX_FORMAT_UNSIGNED_SHORT, + evas_canvas3d_mesh_index_data_set(EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_SHORT, 36, &cube_indices[0]), - evas_3d_mesh_vertex_assembly_set(EVAS_3D_VERTEX_ASSEMBLY_TRIANGLES), + evas_canvas3d_mesh_vertex_assembly_set(EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLES), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG), + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG), - evas_3d_mesh_frame_material_set(0, data->material)); + evas_canvas3d_mesh_frame_material_set(0, data->material)); data->mesh_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); - eo_do(data->root_node, evas_3d_node_member_add(data->mesh_node)); - eo_do(data->mesh_node, evas_3d_node_mesh_add(data->mesh)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->mesh_node)); + eo_do(data->mesh_node, evas_canvas3d_node_mesh_add(data->mesh)); } static void _scene_setup(Scene_Data *data) { - data->scene = eo_add(EVAS_3D_SCENE_CLASS, evas); + data->scene = eo_add(EVAS_CANVAS3D_SCENE_CLASS, evas); eo_do(data->scene, - evas_3d_scene_size_set(WIDTH, HEIGHT); - evas_3d_scene_background_color_set(0.0, 0.0, 0.0, 0.0)); + evas_canvas3d_scene_size_set(WIDTH, HEIGHT); + evas_canvas3d_scene_background_color_set(0.0, 0.0, 0.0, 0.0)); data->root_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_NODE)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); _camera_setup(data); _light_setup(data); _mesh_setup(data); eo_do(data->scene, - evas_3d_scene_root_node_set(data->root_node), - evas_3d_scene_camera_node_set(data->camera_node)); + evas_canvas3d_scene_root_node_set(data->root_node), + evas_canvas3d_scene_camera_node_set(data->camera_node)); } int diff --git a/src/examples/evas/evas-3d-cube2.c b/src/examples/evas/evas-3d-cube2.c index 4f43c7cb88..c053867107 100644 --- a/src/examples/evas/evas-3d-cube2.c +++ b/src/examples/evas/evas-3d-cube2.c @@ -94,7 +94,7 @@ _animate_scene(void *data) angle += 0.2; eo_do(scene->mesh_node, - evas_3d_node_orientation_angle_axis_set(angle, 1.0, 1.0, 1.0)); + evas_canvas3d_node_orientation_angle_axis_set(angle, 1.0, 1.0, 1.0)); /* Rotate */ if (angle > 360.0) angle -= 360.0f; @@ -104,7 +104,7 @@ _animate_scene(void *data) if (frame >= 20) inc = -1; else if (frame <= 0) inc = 1; - eo_do(scene->mesh_node, evas_3d_node_mesh_frame_set(scene->mesh, frame)); + eo_do(scene->mesh_node, evas_canvas3d_node_mesh_frame_set(scene->mesh, frame)); return EINA_TRUE; } @@ -112,129 +112,129 @@ _animate_scene(void *data) static void _camera_setup(Scene_Data *data) { - data->camera = eo_add(EVAS_3D_CAMERA_CLASS, evas); + data->camera = eo_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); eo_do(data->camera, - evas_3d_camera_projection_perspective_set(60.0, 1.0, 2.0, 50.0)); + evas_canvas3d_camera_projection_perspective_set(60.0, 1.0, 2.0, 50.0)); data->camera_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_CAMERA)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_CAMERA)); eo_do(data->camera_node, - evas_3d_node_camera_set(data->camera), - evas_3d_node_position_set(0.0, 0.0, 3.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + evas_canvas3d_node_camera_set(data->camera), + evas_canvas3d_node_position_set(0.0, 0.0, 3.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); eo_do(data->root_node, - evas_3d_node_member_add(data->camera_node)); + evas_canvas3d_node_member_add(data->camera_node)); } static void _light_setup(Scene_Data *data) { - data->light = eo_add(EVAS_3D_LIGHT_CLASS, evas); + data->light = eo_add(EVAS_CANVAS3D_LIGHT_CLASS, evas); eo_do(data->light, - evas_3d_light_ambient_set(0.2, 0.2, 0.2, 1.0), - evas_3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_specular_set(1.0, 1.0, 1.0, 1.0)); + evas_canvas3d_light_ambient_set(0.2, 0.2, 0.2, 1.0), + evas_canvas3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_specular_set(1.0, 1.0, 1.0, 1.0)); data->light_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_LIGHT)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_LIGHT)); eo_do(data->light_node, - evas_3d_node_light_set(data->light), - evas_3d_node_position_set(0.0, 0.0, 10.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); - eo_do(data->root_node, evas_3d_node_member_add(data->light_node)); + evas_canvas3d_node_light_set(data->light), + evas_canvas3d_node_position_set(0.0, 0.0, 10.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->light_node)); } static void _mesh_setup(Scene_Data *data) { /* Setup material. */ - data->material0 = eo_add(EVAS_3D_MATERIAL_CLASS, evas); - data->material1 = eo_add(EVAS_3D_MATERIAL_CLASS, evas); + data->material0 = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); + data->material1 = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); eo_do(data->material0, - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_NORMAL, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_NORMAL, EINA_TRUE), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 0.2, 0.2, 0.2, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 0.8, 0.8, 0.8, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_shininess_set(100.0)); + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0.2, 0.2, 0.2, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 0.8, 0.8, 0.8, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_shininess_set(100.0)); eo_do(data->material1, - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_NORMAL, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_NORMAL, EINA_TRUE), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 0.2, 0.2, 0.2, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 0.8, 0.8, 0.8, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_shininess_set(100.0)); + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0.2, 0.2, 0.2, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 0.8, 0.8, 0.8, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_shininess_set(100.0)); - data->texture0 = eo_add(EVAS_3D_TEXTURE_CLASS, evas); - data->texture1 = eo_add(EVAS_3D_TEXTURE_CLASS, evas); - data->texture_normal = eo_add(EVAS_3D_TEXTURE_CLASS, evas); + data->texture0 = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); + data->texture1 = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); + data->texture_normal = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); eo_do(data->texture0, - evas_3d_texture_data_set(EVAS_COLORSPACE_ARGB8888, 4, 4, &pixels0[0])); + evas_canvas3d_texture_data_set(EVAS_COLORSPACE_ARGB8888, 4, 4, &pixels0[0])); eo_do(data->texture1, - evas_3d_texture_data_set(EVAS_COLORSPACE_ARGB8888, 4, 4, &pixels1[0])); + evas_canvas3d_texture_data_set(EVAS_COLORSPACE_ARGB8888, 4, 4, &pixels1[0])); eo_do(data->texture_normal, - evas_3d_texture_file_set(normal_map_path, NULL)); + evas_canvas3d_texture_file_set(normal_map_path, NULL)); eo_do(data->material0, - evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, data->texture0)); + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, data->texture0)); eo_do(data->material1, - evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, data->texture1)); + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, data->texture1)); eo_do(data->material1, - evas_3d_material_texture_set(EVAS_3D_MATERIAL_NORMAL, data->texture_normal)); + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_NORMAL, data->texture_normal)); /* Set data of primitive */ - data->cube = eo_add(EVAS_3D_PRIMITIVE_CLASS, evas); + data->cube = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, evas); eo_do(data->cube, - evas_3d_primitive_form_set(EVAS_3D_MESH_PRIMITIVE_CUBE)); + evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_CUBE)); /* Setup mesh. */ - data->mesh = eo_add(EVAS_3D_MESH_CLASS, evas); + data->mesh = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); eo_do(data->mesh, - evas_3d_mesh_from_primitive_set(0, data->cube), - evas_3d_mesh_frame_material_set(0, data->material0), - evas_3d_mesh_frame_add(20), - evas_3d_mesh_frame_material_set(20, data->material1), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_NORMAL_MAP)); + evas_canvas3d_mesh_from_primitive_set(0, data->cube), + evas_canvas3d_mesh_frame_material_set(0, data->material0), + evas_canvas3d_mesh_frame_add(20), + evas_canvas3d_mesh_frame_material_set(20, data->material1), + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_NORMAL_MAP)); data->mesh_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); - eo_do(data->root_node, evas_3d_node_member_add(data->mesh_node)); - eo_do(data->mesh_node, evas_3d_node_mesh_add(data->mesh)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->mesh_node)); + eo_do(data->mesh_node, evas_canvas3d_node_mesh_add(data->mesh)); } static void _scene_setup(Scene_Data *data) { - data->scene = eo_add(EVAS_3D_SCENE_CLASS, evas); + data->scene = eo_add(EVAS_CANVAS3D_SCENE_CLASS, evas); eo_do(data->scene, - evas_3d_scene_size_set(WIDTH, HEIGHT), - evas_3d_scene_background_color_set(0.0, 0.0, 0.0, 0.0)); + evas_canvas3d_scene_size_set(WIDTH, HEIGHT), + evas_canvas3d_scene_background_color_set(0.0, 0.0, 0.0, 0.0)); data->root_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_NODE)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); _camera_setup(data); _light_setup(data); _mesh_setup(data); eo_do(data->scene, - evas_3d_scene_root_node_set(data->root_node), - evas_3d_scene_camera_node_set(data->camera_node)); + evas_canvas3d_scene_root_node_set(data->root_node), + evas_canvas3d_scene_camera_node_set(data->camera_node)); } int diff --git a/src/examples/evas/evas-3d-eet.c b/src/examples/evas/evas-3d-eet.c index 4178a4eff4..370351656d 100644 --- a/src/examples/evas/evas-3d-eet.c +++ b/src/examples/evas/evas-3d-eet.c @@ -58,8 +58,8 @@ _animate_eet(void *data) { angle += 0.5; - eo_do((Evas_3D_Node *)data, - evas_3d_node_orientation_angle_axis_set(angle, 1.0, 1.0, 1.0)); + eo_do((Evas_Canvas3D_Node *)data, + evas_canvas3d_node_orientation_angle_axis_set(angle, 1.0, 1.0, 1.0)); /* Rotate */ if (angle > 360.0) angle -= 360.0f; @@ -72,7 +72,7 @@ _animate_md2(void *data) { static int frame = 0; - eo_do((Evas_3D_Node *)data, evas_3d_node_mesh_frame_set(mesh, frame)); + eo_do((Evas_Canvas3D_Node *)data, evas_canvas3d_node_mesh_frame_set(mesh, frame)); frame += 32; @@ -116,67 +116,67 @@ main(void) evas = ecore_evas_get(ecore_evas); /* Add a scene object .*/ - scene = eo_add(EVAS_3D_SCENE_CLASS, evas); + scene = eo_add(EVAS_CANVAS3D_SCENE_CLASS, evas); /* Add the root node for the scene. */ - root_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_NODE)); + root_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); /* Add the camera. */ - camera = eo_add(EVAS_3D_CAMERA_CLASS, evas); + camera = eo_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); eo_do(camera, - evas_3d_camera_projection_perspective_set(60.0, 1.0, 1.0, 500.0)); + evas_canvas3d_camera_projection_perspective_set(60.0, 1.0, 1.0, 500.0)); - camera_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_CAMERA)); + camera_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_CAMERA)); eo_do(camera_node, - evas_3d_node_camera_set(camera)); + evas_canvas3d_node_camera_set(camera)); eo_do(root_node, - evas_3d_node_member_add(camera_node)); + evas_canvas3d_node_member_add(camera_node)); eo_do(camera_node, - evas_3d_node_position_set(200.0, 0.0, 40.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 20.0, - EVAS_3D_SPACE_PARENT, 0.0, 0.0, 1.0)); + evas_canvas3d_node_position_set(200.0, 0.0, 40.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 20.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 1.0)); /* Add the light. */ - light = eo_add(EVAS_3D_LIGHT_CLASS, evas); + light = eo_add(EVAS_CANVAS3D_LIGHT_CLASS, evas); eo_do(light, - evas_3d_light_ambient_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_specular_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_directional_set(EINA_TRUE)); + evas_canvas3d_light_ambient_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_specular_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_directional_set(EINA_TRUE)); - light_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_LIGHT)); + light_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_LIGHT)); eo_do(light_node, - evas_3d_node_light_set(light), - evas_3d_node_position_set(1000.0, 0.0, 1000.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + evas_canvas3d_node_light_set(light), + evas_canvas3d_node_position_set(1000.0, 0.0, 1000.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); eo_do(root_node, - evas_3d_node_member_add(light_node)); + evas_canvas3d_node_member_add(light_node)); /* Add the meshes. */ - mesh = eo_add(EVAS_3D_MESH_CLASS, evas); - mesh2 = eo_add(EVAS_3D_MESH_CLASS, evas); - material = eo_add(EVAS_3D_MATERIAL_CLASS, evas); + mesh = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); + mesh2 = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); + material = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); eo_do(mesh, efl_file_set(input_model_path, NULL), - evas_3d_mesh_frame_material_set(0, material), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG)); + evas_canvas3d_mesh_frame_material_set(0, material), + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG)); eo_do(material, - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_NORMAL, EINA_TRUE), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_NORMAL, EINA_TRUE), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0.50, 0.50, 0.00, 0.30), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 0.00, 0.50, 0.50, 0.30), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 0.50, 0.00, 0.50, 0.30), - evas_3d_material_shininess_set(50.0)); + evas_canvas3d_material_shininess_set(50.0)); if (!ecore_file_mkpath(PACKAGE_EXAMPLES_DIR EVAS_SAVED_FILES)) fprintf(stderr, "Failed to create folder %s\n\n", @@ -186,30 +186,30 @@ main(void) eo_do(mesh2, efl_file_set(output_model_path, NULL), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG)); + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG)); - mesh_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); + mesh_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); eo_do(root_node, - evas_3d_node_member_add(mesh_node)); + evas_canvas3d_node_member_add(mesh_node)); eo_do(mesh_node, - evas_3d_node_mesh_add(mesh), - evas_3d_node_position_set(0.0, -40.0, 0.0)); + evas_canvas3d_node_mesh_add(mesh), + evas_canvas3d_node_position_set(0.0, -40.0, 0.0)); - mesh_node2 = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); + mesh_node2 = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); eo_do(root_node, - evas_3d_node_member_add(mesh_node2)); + evas_canvas3d_node_member_add(mesh_node2)); eo_do(mesh_node2, - evas_3d_node_mesh_add(mesh2), - evas_3d_node_position_set(0.0, 40.0, 0.0)); + evas_canvas3d_node_mesh_add(mesh2), + evas_canvas3d_node_position_set(0.0, 40.0, 0.0)); /* Set up scene. */ eo_do(scene, - evas_3d_scene_root_node_set(root_node), - evas_3d_scene_camera_node_set(camera_node), - evas_3d_scene_size_set(WIDTH, HEIGHT)); + evas_canvas3d_scene_root_node_set(root_node), + evas_canvas3d_scene_camera_node_set(camera_node), + evas_canvas3d_scene_size_set(WIDTH, HEIGHT)); /* Add a background rectangle objects. */ background = eo_add(EVAS_RECTANGLE_CLASS, evas); diff --git a/src/examples/evas/evas-3d-fog.c b/src/examples/evas/evas-3d-fog.c index 5154288112..a767c2d1d8 100644 --- a/src/examples/evas/evas-3d-fog.c +++ b/src/examples/evas/evas-3d-fog.c @@ -72,7 +72,7 @@ _animate_scene(void *data) angle += 0.5; eo_do(scene->animation_node, - evas_3d_node_orientation_angle_axis_set(angle, 0.0, 1.0, 0.0)); + evas_canvas3d_node_orientation_angle_axis_set(angle, 0.0, 1.0, 0.0)); if (angle > 360.0) angle -= 360.0f; @@ -82,125 +82,125 @@ _animate_scene(void *data) static void _camera_setup(Scene_Data *data) { - data->camera = eo_add(EVAS_3D_CAMERA_CLASS, evas); + data->camera = eo_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); eo_do(data->camera, - evas_3d_camera_projection_perspective_set(60.0, 1.0, 2.0, 50.0)); + evas_canvas3d_camera_projection_perspective_set(60.0, 1.0, 2.0, 50.0)); data->camera_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_CAMERA)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_CAMERA)); eo_do(data->camera_node, - evas_3d_node_camera_set(data->camera), - evas_3d_node_position_set(0.0, 0.0, 7.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + evas_canvas3d_node_camera_set(data->camera), + evas_canvas3d_node_position_set(0.0, 0.0, 7.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); - eo_do(data->root_node, evas_3d_node_member_add(data->camera_node)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->camera_node)); } static void _light_setup(Scene_Data *data) { - data->light = eo_add(EVAS_3D_LIGHT_CLASS, evas); + data->light = eo_add(EVAS_CANVAS3D_LIGHT_CLASS, evas); eo_do(data->light, - evas_3d_light_ambient_set(0.2, 0.2, 0.2, 1.0), - evas_3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_specular_set(1.0, 1.0, 1.0, 1.0)); + evas_canvas3d_light_ambient_set(0.2, 0.2, 0.2, 1.0), + evas_canvas3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_specular_set(1.0, 1.0, 1.0, 1.0)); data->light_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_LIGHT)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_LIGHT)); eo_do(data->light_node, - evas_3d_node_light_set(data->light), - evas_3d_node_position_set(0.0, 0.0, 10.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); - eo_do(data->root_node, evas_3d_node_member_add(data->light_node)); + evas_canvas3d_node_light_set(data->light), + evas_canvas3d_node_position_set(0.0, 0.0, 10.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->light_node)); } static void -_set_ball(Eo *mesh, Eo *sphere, Evas_3D_Material *material) +_set_ball(Eo *mesh, Eo *sphere, Evas_Canvas3D_Material *material) { - eo_do(mesh, - evas_3d_mesh_from_primitive_set(0, sphere), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG), - evas_3d_mesh_frame_material_set(0, material)); + eo_do(mesh, + evas_canvas3d_mesh_from_primitive_set(0, sphere), + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG), + evas_canvas3d_mesh_frame_material_set(0, material)); } static void _mesh_setup(Scene_Data *data) { - data->material = eo_add(EVAS_3D_MATERIAL_CLASS, evas); + data->material = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); eo_do(data->material, - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 0.2, 0.2, 0.2, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 0.8, 0.8, 0.8, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_shininess_set(100.0)); + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0.2, 0.2, 0.2, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 0.8, 0.8, 0.8, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_shininess_set(100.0)); - data->sphere = eo_add(EVAS_3D_PRIMITIVE_CLASS, evas); + data->sphere = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, evas); eo_do(data->sphere, - evas_3d_primitive_form_set(EVAS_3D_MESH_PRIMITIVE_SPHERE), - evas_3d_primitive_precision_set(50)); + evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_SPHERE), + evas_canvas3d_primitive_precision_set(50)); - data->mesh = eo_add(EVAS_3D_MESH_CLASS, evas); - data->mesh1 = eo_add(EVAS_3D_MESH_CLASS, evas); + data->mesh = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); + data->mesh1 = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); _set_ball(data->mesh, data->sphere, data->material); _set_ball(data->mesh1, data->sphere, data->material); data->animation_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_NODE)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); data->mesh_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); - eo_do(data->animation_node, evas_3d_node_member_add(data->mesh_node)); - eo_do(data->root_node, evas_3d_node_member_add(data->animation_node)); - eo_do(data->mesh_node, evas_3d_node_mesh_add(data->mesh), - evas_3d_node_position_set(0.0, 0.0, 3.0)); + eo_do(data->animation_node, evas_canvas3d_node_member_add(data->mesh_node)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->animation_node)); + eo_do(data->mesh_node, evas_canvas3d_node_mesh_add(data->mesh), + evas_canvas3d_node_position_set(0.0, 0.0, 3.0)); data->mesh_node1 = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); - eo_do(data->root_node, evas_3d_node_member_add(data->mesh_node1)); - eo_do(data->mesh_node1, evas_3d_node_mesh_add(data->mesh1), - evas_3d_node_scale_set(3, 3, 3)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->mesh_node1)); + eo_do(data->mesh_node1, evas_canvas3d_node_mesh_add(data->mesh1), + evas_canvas3d_node_scale_set(3, 3, 3)); - eo_do(data->mesh, evas_3d_mesh_fog_enable_set(EINA_TRUE), evas_3d_mesh_fog_color_set(FOG_COLOR, FOG_FACTOR)); - eo_do(data->mesh1, evas_3d_mesh_fog_enable_set(EINA_TRUE), evas_3d_mesh_fog_color_set(FOG_COLOR, FOG_FACTOR)); + eo_do(data->mesh, evas_canvas3d_mesh_fog_enable_set(EINA_TRUE), evas_canvas3d_mesh_fog_color_set(FOG_COLOR, FOG_FACTOR)); + eo_do(data->mesh1, evas_canvas3d_mesh_fog_enable_set(EINA_TRUE), evas_canvas3d_mesh_fog_color_set(FOG_COLOR, FOG_FACTOR)); } static void _scene_setup(Scene_Data *data) { - data->scene = eo_add(EVAS_3D_SCENE_CLASS, evas); + data->scene = eo_add(EVAS_CANVAS3D_SCENE_CLASS, evas); eo_do(data->scene, - evas_3d_scene_size_set(WIDTH, HEIGHT); - evas_3d_scene_background_color_set(FOG_COLOR, 1)); + evas_canvas3d_scene_size_set(WIDTH, HEIGHT); + evas_canvas3d_scene_background_color_set(FOG_COLOR, 1)); data->root_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_NODE)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); _camera_setup(data); _light_setup(data); _mesh_setup(data); eo_do(data->scene, - evas_3d_scene_root_node_set(data->root_node), - evas_3d_scene_camera_node_set(data->camera_node)); + evas_canvas3d_scene_root_node_set(data->root_node), + evas_canvas3d_scene_camera_node_set(data->camera_node)); } int diff --git a/src/examples/evas/evas-3d-frustum.c b/src/examples/evas/evas-3d-frustum.c index d3e9f818f4..15e5e3ca6b 100644 --- a/src/examples/evas/evas-3d-frustum.c +++ b/src/examples/evas/evas-3d-frustum.c @@ -7,7 +7,7 @@ * Use 'i', 'k', 'j', 'l', 'u' and 'o' keys to move mesh node (model) in 3D. * Use 'z', 'x', 'c', 'Z', 'X' and 'C' keys to change scaling constants of mesh (model). * See in terminal output value distance to far plane of frustum and value of visibility of node - * @see evas_3d_camera_node_visible_get. + * @see evas_canvas3d_camera_node_visible_get. * * @verbatim * gcc -o evas-3d-frustum evas-3d-frustum.c `pkg-config --libs --cflags efl evas ecore ecore-evas eo` -lm @@ -60,7 +60,7 @@ Evas_Object *background,*image; Evas_Real obj_x = 0.0, obj_y = 0.0, obj_z = 0.0, obj_sc_x = 10.0, obj_sc_y = 10.0, obj_sc_z = 10.0; Evas_Real fleft = -5, fright = 5, fbottom = -5, fup = 5, fnear = 20, ffar = 1000; Evas_Real radius = 0; -Evas_3D_Frustum_Mode key = EVAS_3D_FRUSTUM_MODE_AABB; +Evas_Canvas3D_Frustum_Mode key = EVAS_CANVAS3D_FRUSTUM_MODE_AABB; static void _show_help() @@ -100,18 +100,18 @@ _redraw_bounding_object(void *data) Eo *current_mesh; Eina_List *meshes = NULL, *l; - eo_do(scene->mesh_node, meshes = (Eina_List *)evas_3d_node_mesh_list_get()); + eo_do(scene->mesh_node, meshes = (Eina_List *)evas_canvas3d_node_mesh_list_get()); EINA_LIST_FOREACH(meshes, l, current_mesh) { - eo_do(scene->mesh_node, evas_3d_node_mesh_del(current_mesh)); + eo_do(scene->mesh_node, evas_canvas3d_node_mesh_del(current_mesh)); } switch (key) { - case EVAS_3D_FRUSTUM_MODE_BSPHERE: + case EVAS_CANVAS3D_FRUSTUM_MODE_BSPHERE: { eo_do(scene->mesh_node_model, - evas_3d_node_bounding_sphere_get(&x0, &y0, &z0, &radius)); + evas_canvas3d_node_bounding_sphere_get(&x0, &y0, &z0, &radius)); current_mesh = scene->mesh_sphere; px = x0; py = y0; @@ -119,10 +119,10 @@ _redraw_bounding_object(void *data) sx = sy = sz = 2.0 * radius; break; } - case EVAS_3D_FRUSTUM_MODE_AABB: + case EVAS_CANVAS3D_FRUSTUM_MODE_AABB: { eo_do(scene->mesh_node_model, - evas_3d_node_bounding_box_get(&x0, &y0, &z0, + evas_canvas3d_node_bounding_box_get(&x0, &y0, &z0, &x1, &y1, &z1)); current_mesh = scene->mesh_aabb; px = (x1 + x0) / 2; @@ -133,10 +133,10 @@ _redraw_bounding_object(void *data) sz = z1 - z0; break; } - case EVAS_3D_FRUSTUM_MODE_CENTRAL_POINT: + case EVAS_CANVAS3D_FRUSTUM_MODE_CENTRAL_POINT: { eo_do(scene->mesh_node_model, - evas_3d_node_bounding_sphere_get(&x0, &y0, &z0, &radius)); + evas_canvas3d_node_bounding_sphere_get(&x0, &y0, &z0, &radius)); current_mesh = scene->mesh_sphere; px = x0; py = y0; @@ -149,9 +149,9 @@ _redraw_bounding_object(void *data) } eo_do(scene->mesh_node, - evas_3d_node_mesh_add(current_mesh), - evas_3d_node_position_set(px, py, pz), - evas_3d_node_scale_set(sx, sy, sz)); + evas_canvas3d_node_mesh_add(current_mesh), + evas_canvas3d_node_position_set(px, py, pz), + evas_canvas3d_node_scale_set(sx, sy, sz)); return ECORE_CALLBACK_RENEW; } @@ -166,122 +166,122 @@ _on_key_down(void *data, Evas *e EINA_UNUSED, Evas_Object *eo EINA_UNUSED, void if (!strcmp("w", ev->key)) { ffar += 20; - eo_do(scene->camera, evas_3d_camera_projection_frustum_set(fleft, fright, fbottom, fup, fnear, ffar)); + eo_do(scene->camera, evas_canvas3d_camera_projection_frustum_set(fleft, fright, fbottom, fup, fnear, ffar)); } else if(!strcmp("s", ev->key)) { ffar -= 20; - eo_do(scene->camera, evas_3d_camera_projection_frustum_set(fleft, fright, fbottom, fup, fnear, ffar)); + eo_do(scene->camera, evas_canvas3d_camera_projection_frustum_set(fleft, fright, fbottom, fup, fnear, ffar)); } else if(!strcmp("t", ev->key)) { fnear += 2; - eo_do(scene->camera, evas_3d_camera_projection_frustum_set(fleft, fright, fbottom, fup, fnear, ffar)); + eo_do(scene->camera, evas_canvas3d_camera_projection_frustum_set(fleft, fright, fbottom, fup, fnear, ffar)); } else if(!strcmp("g", ev->key)) { fnear -= 2; - eo_do(scene->camera, evas_3d_camera_projection_frustum_set(fleft, fright, fbottom, fup, fnear, ffar)); + eo_do(scene->camera, evas_canvas3d_camera_projection_frustum_set(fleft, fright, fbottom, fup, fnear, ffar)); } else if(!strcmp("i", ev->key)) { obj_y++; eo_do(scene->mesh_node_model, - evas_3d_node_position_set(obj_x, obj_y, obj_z)); + evas_canvas3d_node_position_set(obj_x, obj_y, obj_z)); } else if(!strcmp("k", ev->key)) { obj_y--; eo_do(scene->mesh_node_model, - evas_3d_node_position_set(obj_x, obj_y, obj_z)); + evas_canvas3d_node_position_set(obj_x, obj_y, obj_z)); } else if(!strcmp("o", ev->key)) { obj_z++; eo_do(scene->mesh_node_model, - evas_3d_node_position_set(obj_x, obj_y, obj_z)); + evas_canvas3d_node_position_set(obj_x, obj_y, obj_z)); } else if(!strcmp("u", ev->key)) { obj_z--; eo_do(scene->mesh_node_model, - evas_3d_node_position_set(obj_x, obj_y, obj_z)); + evas_canvas3d_node_position_set(obj_x, obj_y, obj_z)); } else if(!strcmp("l", ev->key)) { obj_x++; eo_do(scene->mesh_node_model, - evas_3d_node_position_set(obj_x, obj_y, obj_z)); + evas_canvas3d_node_position_set(obj_x, obj_y, obj_z)); } else if(!strcmp("j", ev->key)) { obj_x--; eo_do(scene->mesh_node_model, - evas_3d_node_position_set(obj_x, obj_y, obj_z)); + evas_canvas3d_node_position_set(obj_x, obj_y, obj_z)); } else if(!strcmp("z", ev->key)) { obj_sc_y+=0.02; eo_do(scene->mesh_node_model, - evas_3d_node_scale_set(obj_sc_x, obj_sc_y, obj_sc_z)); + evas_canvas3d_node_scale_set(obj_sc_x, obj_sc_y, obj_sc_z)); } else if(!strcmp("Z", ev->key)) { obj_sc_y-=0.02; eo_do(scene->mesh_node_model, - evas_3d_node_scale_set(obj_sc_x, obj_sc_y, obj_sc_z)); + evas_canvas3d_node_scale_set(obj_sc_x, obj_sc_y, obj_sc_z)); } else if(!strcmp("x", ev->key)) { obj_sc_z+=0.02; eo_do(scene->mesh_node_model, - evas_3d_node_scale_set(obj_sc_x, obj_sc_y, obj_sc_z)); + evas_canvas3d_node_scale_set(obj_sc_x, obj_sc_y, obj_sc_z)); } else if(!strcmp("X", ev->key)) { obj_sc_z-=0.02; eo_do(scene->mesh_node_model, - evas_3d_node_scale_set(obj_sc_x, obj_sc_y, obj_sc_z)); + evas_canvas3d_node_scale_set(obj_sc_x, obj_sc_y, obj_sc_z)); } else if(!strcmp("c", ev->key)) { obj_sc_x+=0.02; eo_do(scene->mesh_node_model, - evas_3d_node_scale_set(obj_sc_x, obj_sc_y, obj_sc_z)); + evas_canvas3d_node_scale_set(obj_sc_x, obj_sc_y, obj_sc_z)); } else if(!strcmp("C", ev->key)) { obj_sc_x-=0.02; eo_do(scene->mesh_node_model, - evas_3d_node_scale_set(obj_sc_x, obj_sc_y, obj_sc_z)); + evas_canvas3d_node_scale_set(obj_sc_x, obj_sc_y, obj_sc_z)); } else if(!strcmp("Return", ev->key)) { - eo_do(scene->camera, evas_3d_camera_projection_frustum_set(fleft, fright, fbottom, fup, fnear, ffar)); + eo_do(scene->camera, evas_canvas3d_camera_projection_frustum_set(fleft, fright, fbottom, fup, fnear, ffar)); } else if (!strcmp("1", ev->key)) { - eo_do(scene->camera_node, evas_3d_node_position_set(0.0, 0.0, 300.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + eo_do(scene->camera_node, evas_canvas3d_node_position_set(0.0, 0.0, 300.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); fprintf(stdout, "Changed position and view of camera\n"); } else if (!strcmp("2", ev->key)) { - eo_do(scene->camera_node, evas_3d_node_position_set(300.0, 300.0, 300.0); - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + eo_do(scene->camera_node, evas_canvas3d_node_position_set(300.0, 300.0, 300.0); + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); fprintf(stdout, "Changed position and view of camera\n"); } else if (!strcmp("3", ev->key)) { - key = EVAS_3D_FRUSTUM_MODE_BSPHERE; + key = EVAS_CANVAS3D_FRUSTUM_MODE_BSPHERE; } else if (!strcmp("4", ev->key)) { - key = EVAS_3D_FRUSTUM_MODE_AABB; + key = EVAS_CANVAS3D_FRUSTUM_MODE_AABB; } else if (!strcmp("5", ev->key)) { - key = EVAS_3D_FRUSTUM_MODE_CENTRAL_POINT; + key = EVAS_CANVAS3D_FRUSTUM_MODE_CENTRAL_POINT; } else { @@ -289,147 +289,147 @@ _on_key_down(void *data, Evas *e EINA_UNUSED, Evas_Object *eo EINA_UNUSED, void } _redraw_bounding_object(data); - eo_do(scene->camera, frustum = evas_3d_camera_node_visible_get(scene->camera_node, scene->mesh_node_model, key)); + eo_do(scene->camera, frustum = evas_canvas3d_camera_node_visible_get(scene->camera_node, scene->mesh_node_model, key)); fprintf(stdout, "far - %f frustum - %d radius - %f\n", ffar, frustum, radius); } static void _camera_setup(Scene_Data *data) { - data->camera = eo_add(EVAS_3D_CAMERA_CLASS, evas); - data->camera_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_CAMERA)); + data->camera = eo_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); + data->camera_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_CAMERA)); eo_do(data->camera_node, - evas_3d_node_camera_set(data->camera), - evas_3d_node_position_set(0.0, 0.0, 300.0); - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + evas_canvas3d_node_camera_set(data->camera), + evas_canvas3d_node_position_set(0.0, 0.0, 300.0); + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); - eo_do(data->camera, evas_3d_camera_projection_frustum_set(fleft, fright, fbottom, fup, fnear, ffar)); + eo_do(data->camera, evas_canvas3d_camera_projection_frustum_set(fleft, fright, fbottom, fup, fnear, ffar)); - eo_do(data->root_node, evas_3d_node_member_add(data->camera_node)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->camera_node)); } static void _light_setup(Scene_Data *data) { - data->light = eo_add(EVAS_3D_LIGHT_CLASS, evas); + data->light = eo_add(EVAS_CANVAS3D_LIGHT_CLASS, evas); eo_do(data->light, - evas_3d_light_ambient_set( 0.2, 0.2, 0.2, 1.0); - evas_3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0); - evas_3d_light_specular_set(1.0, 1.0, 1.0, 1.0)); + evas_canvas3d_light_ambient_set( 0.2, 0.2, 0.2, 1.0); + evas_canvas3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0); + evas_canvas3d_light_specular_set(1.0, 1.0, 1.0, 1.0)); - data->light_node = eo_add(EVAS_3D_NODE_CLASS,evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_LIGHT)); + data->light_node = eo_add(EVAS_CANVAS3D_NODE_CLASS,evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_LIGHT)); eo_do(data->light_node, - evas_3d_node_light_set(data->light), - evas_3d_node_position_set(0.0, 0.0, 200.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_3D_SPACE_PARENT, 0.0, 0.0, 1.0)); + evas_canvas3d_node_light_set(data->light), + evas_canvas3d_node_position_set(0.0, 0.0, 200.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 1.0)); - eo_do(data->root_node, evas_3d_node_member_add(data->light_node)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->light_node)); } static void _mesh_setup(Scene_Data *data) { - data->material = eo_add(EVAS_3D_MATERIAL_CLASS, evas); + data->material = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); eo_do(data->material, - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 0.2, 0.2, 0.2, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 0.8, 0.8, 0.8, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_shininess_set(100.0)); + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0.2, 0.2, 0.2, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 0.8, 0.8, 0.8, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_shininess_set(100.0)); - data->cube = eo_add(EVAS_3D_PRIMITIVE_CLASS, evas); + data->cube = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, evas); eo_do(data->cube, - evas_3d_primitive_form_set(EVAS_3D_MESH_PRIMITIVE_CUBE)); + evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_CUBE)); - data->sphere = eo_add(EVAS_3D_PRIMITIVE_CLASS, evas); + data->sphere = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, evas); eo_do(data->sphere, - evas_3d_primitive_form_set(EVAS_3D_MESH_PRIMITIVE_SPHERE), - evas_3d_primitive_precision_set(20)); + evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_SPHERE), + evas_canvas3d_primitive_precision_set(20)); - data->mesh_aabb = eo_add(EVAS_3D_MESH_CLASS, evas); + data->mesh_aabb = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); eo_do(data->mesh_aabb, - evas_3d_mesh_from_primitive_set(0, data->cube), - evas_3d_mesh_vertex_assembly_set(EVAS_3D_VERTEX_ASSEMBLY_LINES), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_DIFFUSE), - evas_3d_mesh_frame_material_set(0, data->material)); + evas_canvas3d_mesh_from_primitive_set(0, data->cube), + evas_canvas3d_mesh_vertex_assembly_set(EVAS_CANVAS3D_VERTEX_ASSEMBLY_LINES), + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_DIFFUSE), + evas_canvas3d_mesh_frame_material_set(0, data->material)); - data->mesh_sphere = eo_add(EVAS_3D_MESH_CLASS, evas); + data->mesh_sphere = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); eo_do(data->mesh_sphere, - evas_3d_mesh_from_primitive_set(0, data->sphere), - evas_3d_mesh_vertex_assembly_set(EVAS_3D_VERTEX_ASSEMBLY_LINES), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_DIFFUSE), - evas_3d_mesh_frame_material_set(0, data->material)); + evas_canvas3d_mesh_from_primitive_set(0, data->sphere), + evas_canvas3d_mesh_vertex_assembly_set(EVAS_CANVAS3D_VERTEX_ASSEMBLY_LINES), + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_DIFFUSE), + evas_canvas3d_mesh_frame_material_set(0, data->material)); data->mesh_node = - eo_add(EVAS_3D_NODE_CLASS, evas, evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); - eo_do(data->root_node, evas_3d_node_member_add(data->mesh_node)); - eo_do(data->mesh_node, evas_3d_node_mesh_add(data->mesh_aabb)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->mesh_node)); + eo_do(data->mesh_node, evas_canvas3d_node_mesh_add(data->mesh_aabb)); } static void _mesh_setup_model(Scene_Data *data) { - data->mesh_model = eo_add(EVAS_3D_MESH_CLASS, evas); - data->material_model = eo_add(EVAS_3D_MATERIAL_CLASS, evas); - data->texture_model = eo_add(EVAS_3D_TEXTURE_CLASS, evas); + data->mesh_model = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); + data->material_model = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); + data->texture_model = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); eo_do(data->texture_model, - evas_3d_texture_file_set(texture_path, NULL), - evas_3d_texture_filter_set(EVAS_3D_TEXTURE_FILTER_NEAREST, EVAS_3D_TEXTURE_FILTER_NEAREST), - evas_3d_texture_wrap_set(EVAS_3D_WRAP_MODE_REPEAT, EVAS_3D_WRAP_MODE_REPEAT)); + evas_canvas3d_texture_file_set(texture_path, NULL), + evas_canvas3d_texture_filter_set(EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST, EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST), + evas_canvas3d_texture_wrap_set(EVAS_CANVAS3D_WRAP_MODE_REPEAT, EVAS_CANVAS3D_WRAP_MODE_REPEAT)); eo_do(data->material_model, - evas_3d_material_enable_set(EVAS_3D_MATERIAL_NORMAL, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE); - evas_3d_material_enable_set(EVAS_3D_MATERIAL_NORMAL, EINA_TRUE), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 0.01, 0.01, 0.01, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_texture_set( EVAS_3D_MATERIAL_DIFFUSE, data->texture_model), - evas_3d_material_shininess_set(100.0)); + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_NORMAL, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE); + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_NORMAL, EINA_TRUE), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0.01, 0.01, 0.01, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_texture_set( EVAS_CANVAS3D_MATERIAL_DIFFUSE, data->texture_model), + evas_canvas3d_material_shininess_set(100.0)); eo_do(data->mesh_model, efl_file_set(mesh_path, NULL), - evas_3d_mesh_frame_material_set(0, data->material_model), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_DIFFUSE)); + evas_canvas3d_mesh_frame_material_set(0, data->material_model), + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_DIFFUSE)); } static void _scene_setup(Scene_Data *data) { - data->scene = eo_add(EVAS_3D_SCENE_CLASS, evas); + data->scene = eo_add(EVAS_CANVAS3D_SCENE_CLASS, evas); - data->root_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_NODE)); + data->root_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); _light_setup(data); _mesh_setup_model(data); _camera_setup(data); - data->mesh_node_model = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); + data->mesh_node_model = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); eo_do(data->mesh_node_model, - evas_3d_node_position_set(obj_x, obj_y, obj_z), - evas_3d_node_orientation_angle_axis_set(-90, 1.0, 0.0, 0.0), - evas_3d_node_scale_set(obj_sc_x, obj_sc_y, obj_sc_z)); - eo_do(data->root_node, evas_3d_node_member_add(data->mesh_node_model)); - eo_do(data->mesh_node_model, evas_3d_node_mesh_add(data->mesh_model)); + evas_canvas3d_node_position_set(obj_x, obj_y, obj_z), + evas_canvas3d_node_orientation_angle_axis_set(-90, 1.0, 0.0, 0.0), + evas_canvas3d_node_scale_set(obj_sc_x, obj_sc_y, obj_sc_z)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->mesh_node_model)); + eo_do(data->mesh_node_model, evas_canvas3d_node_mesh_add(data->mesh_model)); _mesh_setup(data); eo_do(data->scene, - evas_3d_scene_size_set( WIDTH, HEIGHT), - evas_3d_scene_background_color_set(0.5, 0.5, 0.5, 0.0), - evas_3d_scene_root_node_set(data->root_node); - evas_3d_scene_camera_node_set(data->camera_node)); + evas_canvas3d_scene_size_set( WIDTH, HEIGHT), + evas_canvas3d_scene_background_color_set(0.5, 0.5, 0.5, 0.0), + evas_canvas3d_scene_root_node_set(data->root_node); + evas_canvas3d_scene_camera_node_set(data->camera_node)); } int diff --git a/src/examples/evas/evas-3d-md2.c b/src/examples/evas/evas-3d-md2.c index 428379da40..282727497e 100644 --- a/src/examples/evas/evas-3d-md2.c +++ b/src/examples/evas/evas-3d-md2.c @@ -47,7 +47,7 @@ _animate_scene(void *data) { static int frame = 0; - eo_do((Evas_3D_Node *)data, evas_3d_node_mesh_frame_set(mesh, frame)); + eo_do((Evas_Canvas3D_Node *)data, evas_canvas3d_node_mesh_frame_set(mesh, frame)); frame += 32; @@ -91,89 +91,89 @@ main(void) evas = ecore_evas_get(ecore_evas); /* Add a scene object .*/ - scene = eo_add(EVAS_3D_SCENE_CLASS, evas); + scene = eo_add(EVAS_CANVAS3D_SCENE_CLASS, evas); /* Add the root node for the scene. */ - root_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_NODE)); + root_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); /* Add the camera. */ - camera = eo_add(EVAS_3D_CAMERA_CLASS, evas); + camera = eo_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); eo_do(camera, - evas_3d_camera_projection_perspective_set(60.0, 1.0, 1.0, 500.0)); + evas_canvas3d_camera_projection_perspective_set(60.0, 1.0, 1.0, 500.0)); camera_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_CAMERA)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_CAMERA)); eo_do(camera_node, - evas_3d_node_camera_set(camera)); + evas_canvas3d_node_camera_set(camera)); eo_do(root_node, - evas_3d_node_member_add(camera_node)); + evas_canvas3d_node_member_add(camera_node)); eo_do(camera_node, - evas_3d_node_position_set(100.0, 0.0, 20.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 20.0, - EVAS_3D_SPACE_PARENT, 0.0, 0.0, 1.0)); + evas_canvas3d_node_position_set(100.0, 0.0, 20.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 20.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 1.0)); /* Add the light. */ - light = eo_add(EVAS_3D_LIGHT_CLASS, evas); + light = eo_add(EVAS_CANVAS3D_LIGHT_CLASS, evas); eo_do(light, - evas_3d_light_ambient_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_specular_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_directional_set(EINA_TRUE)); + evas_canvas3d_light_ambient_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_specular_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_directional_set(EINA_TRUE)); light_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_LIGHT)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_LIGHT)); eo_do(light_node, - evas_3d_node_light_set(light), - evas_3d_node_position_set(1000.0, 0.0, 1000.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + evas_canvas3d_node_light_set(light), + evas_canvas3d_node_position_set(1000.0, 0.0, 1000.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); eo_do(root_node, - evas_3d_node_member_add(light_node)); + evas_canvas3d_node_member_add(light_node)); /* Add the mesh. */ - mesh = eo_add(EVAS_3D_MESH_CLASS, evas); - material = eo_add(EVAS_3D_MATERIAL_CLASS, evas); + mesh = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); + material = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); eo_do(mesh, efl_file_set(model_path, NULL), - evas_3d_mesh_frame_material_set(0, material), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG)); + evas_canvas3d_mesh_frame_material_set(0, material), + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG)); - texture = eo_add(EVAS_3D_TEXTURE_CLASS, evas); + texture = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); eo_do(texture, - evas_3d_texture_file_set(image_path, NULL), - evas_3d_texture_filter_set(EVAS_3D_TEXTURE_FILTER_NEAREST, - EVAS_3D_TEXTURE_FILTER_NEAREST), - evas_3d_texture_wrap_set(EVAS_3D_WRAP_MODE_REPEAT, - EVAS_3D_WRAP_MODE_REPEAT)); + evas_canvas3d_texture_file_set(image_path, NULL), + evas_canvas3d_texture_filter_set(EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST, + EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST), + evas_canvas3d_texture_wrap_set(EVAS_CANVAS3D_WRAP_MODE_REPEAT, + EVAS_CANVAS3D_WRAP_MODE_REPEAT)); eo_do(material, - evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, texture), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_NORMAL, EINA_TRUE), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, texture), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_NORMAL, EINA_TRUE), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0.01, 0.01, 0.01, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_shininess_set(50.0)); + evas_canvas3d_material_shininess_set(50.0)); - mesh_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); + mesh_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); eo_do(root_node, - evas_3d_node_member_add(mesh_node)); + evas_canvas3d_node_member_add(mesh_node)); eo_do(mesh_node, - evas_3d_node_mesh_add(mesh)); + evas_canvas3d_node_mesh_add(mesh)); /* Set up scene. */ eo_do(scene, - evas_3d_scene_root_node_set(root_node), - evas_3d_scene_camera_node_set(camera_node), - evas_3d_scene_size_set(WIDTH, HEIGHT)); + evas_canvas3d_scene_root_node_set(root_node), + evas_canvas3d_scene_camera_node_set(camera_node), + evas_canvas3d_scene_size_set(WIDTH, HEIGHT)); /* Add a background rectangle objects. */ background = eo_add(EVAS_RECTANGLE_CLASS, evas); diff --git a/src/examples/evas/evas-3d-mmap-set.c b/src/examples/evas/evas-3d-mmap-set.c index 5c50e81c5d..6ff754a515 100644 --- a/src/examples/evas/evas-3d-mmap-set.c +++ b/src/examples/evas/evas-3d-mmap-set.c @@ -32,22 +32,22 @@ #define LOAD_AND_ADD_MESH(extention, number) \ snprintf(buffer, PATH_MAX, "%s%s", template_path, #extention); \ extention##_file = eina_file_open(buffer , 0); \ - mesh_##extention = eo_add(EVAS_3D_MESH_CLASS, evas); \ + mesh_##extention = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); \ eo_do(mesh_##extention, \ efl_file_mmap_set(extention##_file, NULL), \ - evas_3d_mesh_frame_material_set(0, material), \ - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG)); \ - node_##extention = eo_add(EVAS_3D_NODE_CLASS, evas, \ - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); \ - eo_do(root_node, evas_3d_node_member_add(node_##extention)); \ - eo_do(node_##extention, evas_3d_node_mesh_add(mesh_##extention), \ - evas_3d_node_position_set(initial_node_data[number * 10], \ + evas_canvas3d_mesh_frame_material_set(0, material), \ + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG)); \ + node_##extention = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, \ + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); \ + eo_do(root_node, evas_canvas3d_node_member_add(node_##extention)); \ + eo_do(node_##extention, evas_canvas3d_node_mesh_add(mesh_##extention), \ + evas_canvas3d_node_position_set(initial_node_data[number * 10], \ initial_node_data[number * 10 + 1], \ initial_node_data[number * 10 + 2]), \ - evas_3d_node_scale_set(initial_node_data[number * 10 + 3], \ + evas_canvas3d_node_scale_set(initial_node_data[number * 10 + 3], \ initial_node_data[number * 10 + 4], \ initial_node_data[number * 10 + 5]), \ - evas_3d_node_orientation_angle_axis_set(initial_node_data[number * 10 + 6], \ + evas_canvas3d_node_orientation_angle_axis_set(initial_node_data[number * 10 + 6], \ initial_node_data[number * 10 + 7], \ initial_node_data[number * 10 + 8], \ initial_node_data[number * 10 + 9]));\ @@ -100,9 +100,9 @@ _animate_obj(void *data) obj_animation_parameter += obj_animation_velocity; float oap = obj_animation_parameter/200; - eo_do((Evas_3D_Node *)data, - evas_3d_node_scale_set(oap, oap, oap), - evas_3d_node_orientation_angle_axis_set(obj_animation_parameter, 0.0, 1.0, 0.0)); + eo_do((Evas_Canvas3D_Node *)data, + evas_canvas3d_node_scale_set(oap, oap, oap), + evas_canvas3d_node_orientation_angle_axis_set(obj_animation_parameter, 0.0, 1.0, 0.0)); if (obj_animation_parameter >= 360.0 || obj_animation_parameter <= 0.0) obj_animation_velocity *= -1.0; @@ -115,8 +115,8 @@ _animate_eet(void *data) { eet_animation_parameter += eet_animation_velocity; - eo_do((Evas_3D_Node *)data, - evas_3d_node_orientation_angle_axis_set(eet_animation_parameter, 1.0, 0.0, 0.0)); + eo_do((Evas_Canvas3D_Node *)data, + evas_canvas3d_node_orientation_angle_axis_set(eet_animation_parameter, 1.0, 0.0, 0.0)); eet_animation_velocity = sin(eet_animation_parameter / 180 * M_PI) + 1.1; return EINA_TRUE; @@ -127,8 +127,8 @@ _animate_ply(void *data) { ply_animation_parameter += ply_animation_velocity; - eo_do((Evas_3D_Node *)data, - evas_3d_node_orientation_angle_axis_set(ply_animation_parameter, 1.0, 0.0, 0.0)); + eo_do((Evas_Canvas3D_Node *)data, + evas_canvas3d_node_orientation_angle_axis_set(ply_animation_parameter, 1.0, 0.0, 0.0)); if (ply_animation_parameter > 360.0) ply_animation_parameter -= 180.0f; @@ -140,8 +140,8 @@ _animate_md2(void *data) { md2_animation_parameter += md2_animation_velocity; - eo_do((Evas_3D_Node *)data, - evas_3d_node_mesh_frame_set(mesh_md2, md2_animation_parameter)); + eo_do((Evas_Canvas3D_Node *)data, + evas_canvas3d_node_mesh_frame_set(mesh_md2, md2_animation_parameter)); if (md2_animation_parameter >= 360.0 || md2_animation_parameter <= 0.0) md2_animation_velocity *= -1.0; @@ -187,61 +187,61 @@ main(void) evas = ecore_evas_get(ecore_evas); /* Add a scene object .*/ - scene = eo_add(EVAS_3D_SCENE_CLASS, evas); + scene = eo_add(EVAS_CANVAS3D_SCENE_CLASS, evas); /* Add the root node for the scene. */ - root_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_NODE)); + root_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); /* Add the camera. */ - camera = eo_add(EVAS_3D_CAMERA_CLASS, evas); + camera = eo_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); eo_do(camera, - evas_3d_camera_projection_perspective_set(10.0, 1.0, 1.0, 500.0)); + evas_canvas3d_camera_projection_perspective_set(10.0, 1.0, 1.0, 500.0)); camera_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_CAMERA)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_CAMERA)); eo_do(camera_node, - evas_3d_node_camera_set(camera)); + evas_canvas3d_node_camera_set(camera)); eo_do(root_node, - evas_3d_node_member_add(camera_node)); + evas_canvas3d_node_member_add(camera_node)); eo_do(camera_node, - evas_3d_node_position_set(0.0, 0.0, 100.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + evas_canvas3d_node_position_set(0.0, 0.0, 100.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); /* Add the light. */ - light = eo_add(EVAS_3D_LIGHT_CLASS, evas); + light = eo_add(EVAS_CANVAS3D_LIGHT_CLASS, evas); eo_do(light, - evas_3d_light_ambient_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_specular_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_directional_set(EINA_TRUE)); + evas_canvas3d_light_ambient_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_specular_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_directional_set(EINA_TRUE)); light_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_LIGHT)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_LIGHT)); eo_do(light_node, - evas_3d_node_light_set(light), - evas_3d_node_position_set(1.0, 0.0, 100.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + evas_canvas3d_node_light_set(light), + evas_canvas3d_node_position_set(1.0, 0.0, 100.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); eo_do(root_node, - evas_3d_node_member_add(light_node)); + evas_canvas3d_node_member_add(light_node)); - material = eo_add(EVAS_3D_MATERIAL_CLASS, evas); + material = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); eo_do(material, - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_NORMAL, EINA_TRUE), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_NORMAL, EINA_TRUE), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0.01, 0.01, 0.01, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 1.0, 1.0, 0.0, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 0.5, 0.0, 1.0, 1.0), - evas_3d_material_shininess_set(50.0)); + evas_canvas3d_material_shininess_set(50.0)); /* Add the meshes */ LOAD_AND_ADD_MESH(obj, 0); @@ -251,9 +251,9 @@ main(void) /* Set up scene. */ eo_do(scene, - evas_3d_scene_root_node_set(root_node), - evas_3d_scene_camera_node_set(camera_node), - evas_3d_scene_size_set(WIDTH, HEIGHT)); + evas_canvas3d_scene_root_node_set(root_node), + evas_canvas3d_scene_camera_node_set(camera_node), + evas_canvas3d_scene_size_set(WIDTH, HEIGHT)); /* Add a background rectangle objects. */ background = eo_add(EVAS_RECTANGLE_CLASS, evas); diff --git a/src/examples/evas/evas-3d-obj.c b/src/examples/evas/evas-3d-obj.c index 406ac7fda0..2f998754ab 100644 --- a/src/examples/evas/evas-3d-obj.c +++ b/src/examples/evas/evas-3d-obj.c @@ -44,19 +44,19 @@ #define NUMBER_OF_MESHES 8 #define ADD_OBJ_MESH(path, Y, Z, num, shade_mode, name_of_material) \ - mesh[num] = eo_add(EVAS_3D_MESH_CLASS, evas); \ + mesh[num] = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); \ snprintf(full_file_path, PATH_MAX, "%s%s", path, ".obj"); \ eo_do(mesh[num], \ efl_file_set(full_file_path, NULL), \ - evas_3d_mesh_frame_material_set(0, name_of_material), \ - evas_3d_mesh_shade_mode_set(shade_mode)); \ - mesh_node[num] = eo_add(EVAS_3D_NODE_CLASS, evas, \ - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); \ + evas_canvas3d_mesh_frame_material_set(0, name_of_material), \ + evas_canvas3d_mesh_shade_mode_set(shade_mode)); \ + mesh_node[num] = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, \ + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); \ eo_do(root_node, \ - evas_3d_node_member_add(mesh_node[num])); \ + evas_canvas3d_node_member_add(mesh_node[num])); \ eo_do(mesh_node[num], \ - evas_3d_node_mesh_add(mesh[num]), \ - evas_3d_node_position_set(0, Y, Z)); \ + evas_canvas3d_node_mesh_add(mesh[num]), \ + evas_canvas3d_node_position_set(0, Y, Z)); \ #define ADD_OBJ_MESH_AND_SAVED_COPY(path, Y, Z, num, shade_mode, name_of_material)\ snprintf(buffer, PATH_MAX, "%s%s", input_template, #path); \ @@ -67,28 +67,28 @@ ADD_OBJ_MESH(buffer, Y + COPY_OFFSET, Z, num + 4, shade_mode, name_of_material) #define ADD_TEXTURE(name, path) \ - name = eo_add(EVAS_3D_TEXTURE_CLASS, evas); \ + name = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); \ eo_do(name, \ - evas_3d_texture_file_set(path, NULL), \ - evas_3d_texture_filter_set(EVAS_3D_TEXTURE_FILTER_NEAREST, \ - EVAS_3D_TEXTURE_FILTER_NEAREST), \ - evas_3d_texture_wrap_set(EVAS_3D_WRAP_MODE_REPEAT, \ - EVAS_3D_WRAP_MODE_REPEAT)); + evas_canvas3d_texture_file_set(path, NULL), \ + evas_canvas3d_texture_filter_set(EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST, \ + EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST), \ + evas_canvas3d_texture_wrap_set(EVAS_CANVAS3D_WRAP_MODE_REPEAT, \ + EVAS_CANVAS3D_WRAP_MODE_REPEAT)); #define ADD_MATERIAL(name) \ - name = eo_add(EVAS_3D_MATERIAL_CLASS, evas); \ + name = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); \ eo_do(name, \ - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), \ - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), \ - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE),\ - evas_3d_material_enable_set(EVAS_3D_MATERIAL_NORMAL, EINA_TRUE), \ - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, \ + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), \ + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), \ + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE),\ + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_NORMAL, EINA_TRUE), \ + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, \ COL_RED, 0.5), \ - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, \ + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, \ COL_GREEN, 0.5), \ - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, \ + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, \ COL_BLUE, 0.5), \ - evas_3d_material_shininess_set(100.0)); + evas_canvas3d_material_shininess_set(100.0)); static const char *texture_path = PACKAGE_EXAMPLES_DIR EVAS_IMAGE_FOLDER "/sweet_home_reversed.png"; static const char *output_template = PACKAGE_EXAMPLES_DIR EVAS_SAVED_FILES "/saved_"; @@ -118,8 +118,8 @@ _animate_scene(void *data) { angle += 0.2; - eo_do((Evas_3D_Node *)data, - evas_3d_node_orientation_angle_axis_set(angle, 1.0, 1.0, -1.0)); + eo_do((Evas_Canvas3D_Node *)data, + evas_canvas3d_node_orientation_angle_axis_set(angle, 1.0, 1.0, -1.0)); /* Rotate */ if (angle > 360.0) angle -= 360.0f; @@ -164,46 +164,46 @@ main(void) evas = ecore_evas_get(ecore_evas); /* Add a scene object .*/ - scene = eo_add(EVAS_3D_SCENE_CLASS, evas); + scene = eo_add(EVAS_CANVAS3D_SCENE_CLASS, evas); /* Add the root node for the scene. */ - root_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_NODE)); + root_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); /* Add the camera. */ - camera = eo_add(EVAS_3D_CAMERA_CLASS, evas); + camera = eo_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); eo_do(camera, - evas_3d_camera_projection_perspective_set(20.0, 1.0, 1.0, 500.0)); + evas_canvas3d_camera_projection_perspective_set(20.0, 1.0, 1.0, 500.0)); camera_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_CAMERA)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_CAMERA)); eo_do(camera_node, - evas_3d_node_camera_set(camera)); + evas_canvas3d_node_camera_set(camera)); eo_do(root_node, - evas_3d_node_member_add(camera_node)); + evas_canvas3d_node_member_add(camera_node)); eo_do(camera_node, - evas_3d_node_position_set(100.0, 0.0, 0.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 0.0, 1.0)); + evas_canvas3d_node_position_set(100.0, 0.0, 0.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 1.0)); /* Add the light. */ - light = eo_add(EVAS_3D_LIGHT_CLASS, evas); + light = eo_add(EVAS_CANVAS3D_LIGHT_CLASS, evas); eo_do(light, - evas_3d_light_ambient_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_specular_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_directional_set(EINA_TRUE)); + evas_canvas3d_light_ambient_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_specular_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_directional_set(EINA_TRUE)); light_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_LIGHT)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_LIGHT)); eo_do(light_node, - evas_3d_node_light_set(light), - evas_3d_node_position_set(10.0, 0.0, 0.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + evas_canvas3d_node_light_set(light), + evas_canvas3d_node_position_set(10.0, 0.0, 0.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); eo_do(root_node, - evas_3d_node_member_add(light_node)); + evas_canvas3d_node_member_add(light_node)); ADD_TEXTURE(texture, texture_path) @@ -211,26 +211,26 @@ main(void) ADD_MATERIAL(material_with_tex) eo_do(material_with_tex, - evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, texture)); + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, texture)); if (!ecore_file_mkpath(PACKAGE_EXAMPLES_DIR EVAS_SAVED_FILES)) fprintf(stderr, "Failed to create folder %s\n\n", PACKAGE_EXAMPLES_DIR EVAS_SAVED_FILES); ADD_OBJ_MESH_AND_SAVED_COPY(home, -GRID_SIZE, -GRID_SIZE, 0, - EVAS_3D_SHADE_MODE_PHONG, material_with_tex) + EVAS_CANVAS3D_SHADE_MODE_PHONG, material_with_tex) ADD_OBJ_MESH_AND_SAVED_COPY(home_without_normals, -GRID_SIZE, GRID_SIZE, 1, - EVAS_3D_SHADE_MODE_DIFFUSE, material_with_tex) + EVAS_CANVAS3D_SHADE_MODE_DIFFUSE, material_with_tex) ADD_OBJ_MESH_AND_SAVED_COPY(home_without_tex_coords, GRID_SIZE, -GRID_SIZE, 2, - EVAS_3D_SHADE_MODE_PHONG, material) + EVAS_CANVAS3D_SHADE_MODE_PHONG, material) ADD_OBJ_MESH_AND_SAVED_COPY(home_only_vertex_coords, GRID_SIZE, GRID_SIZE, 3, - EVAS_3D_SHADE_MODE_SHADOW_MAP_RENDER, NULL) + EVAS_CANVAS3D_SHADE_MODE_SHADOW_MAP_RENDER, NULL) /* Set up scene. */ eo_do(scene, - evas_3d_scene_root_node_set(root_node), - evas_3d_scene_camera_node_set(camera_node), - evas_3d_scene_size_set(WIDTH, HEIGHT)); + evas_canvas3d_scene_root_node_set(root_node), + evas_canvas3d_scene_camera_node_set(camera_node), + evas_canvas3d_scene_size_set(WIDTH, HEIGHT)); /* Add a background rectangle MESHES. */ background = eo_add(EVAS_RECTANGLE_CLASS, evas); diff --git a/src/examples/evas/evas-3d-parallax-occlusion.c b/src/examples/evas/evas-3d-parallax-occlusion.c index 33b1e436a9..70d24b311e 100644 --- a/src/examples/evas/evas-3d-parallax-occlusion.c +++ b/src/examples/evas/evas-3d-parallax-occlusion.c @@ -62,10 +62,10 @@ _on_key_down(void *data, Evas *e EINA_UNUSED, Evas_Object *eo EINA_UNUSED, void Evas_Event_Key_Down *ev = event_info; if (!strcmp("n", ev->key)) - eo_do(scene->mesh, evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_NORMAL_MAP)); + eo_do(scene->mesh, evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_NORMAL_MAP)); if (!strcmp("p", ev->key)) - eo_do(scene->mesh, evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PARALLAX_OCCLUSION)); + eo_do(scene->mesh, evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PARALLAX_OCCLUSION)); } static void @@ -93,9 +93,9 @@ _animate_scene(void *data) angle += 0.5; eo_do(scene->mesh_node, - evas_3d_node_orientation_angle_axis_set(angle, 0.0, 1.0, 0.0)); + evas_canvas3d_node_orientation_angle_axis_set(angle, 0.0, 1.0, 0.0)); - eo_do(scene->mesh_node, evas_3d_node_mesh_frame_set(scene->mesh, 50 * (1 + sin(angle / 180.0 * M_PI)))); + eo_do(scene->mesh_node, evas_canvas3d_node_mesh_frame_set(scene->mesh, 50 * (1 + sin(angle / 180.0 * M_PI)))); /* Rotate */ if (angle > 360.0) angle = 0.0f; @@ -105,137 +105,137 @@ _animate_scene(void *data) static void _camera_setup(Scene_Data *data) { - data->camera = eo_add(EVAS_3D_CAMERA_CLASS, evas); + data->camera = eo_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); eo_do(data->camera, - evas_3d_camera_projection_perspective_set(30.0, 1.0, 2.0, 50.0)); + evas_canvas3d_camera_projection_perspective_set(30.0, 1.0, 2.0, 50.0)); - data->camera_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_CAMERA)); + data->camera_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_CAMERA)); eo_do(data->camera_node, - evas_3d_node_camera_set(data->camera), - evas_3d_node_position_set(0.0, 0.0, 10.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); - eo_do(data->root_node, evas_3d_node_member_add(data->camera_node)); + evas_canvas3d_node_camera_set(data->camera), + evas_canvas3d_node_position_set(0.0, 0.0, 10.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->camera_node)); } static void _light_setup(Scene_Data *data) { - data->light = eo_add(EVAS_3D_LIGHT_CLASS, evas); + data->light = eo_add(EVAS_CANVAS3D_LIGHT_CLASS, evas); eo_do(data->light, - evas_3d_light_ambient_set(0.2, 0.2, 0.2, 1.0), - evas_3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_specular_set(1.0, 1.0, 1.0, 1.0)); + evas_canvas3d_light_ambient_set(0.2, 0.2, 0.2, 1.0), + evas_canvas3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_specular_set(1.0, 1.0, 1.0, 1.0)); - data->light_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_LIGHT)); + data->light_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_LIGHT)); eo_do(data->light_node, - evas_3d_node_light_set(data->light), - evas_3d_node_position_set(-20.0, 20.0, 50.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); - eo_do(data->root_node, evas_3d_node_member_add(data->light_node)); + evas_canvas3d_node_light_set(data->light), + evas_canvas3d_node_position_set(-20.0, 20.0, 50.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->light_node)); } static void _mesh_setup(Scene_Data *data) { /* Setup material. */ - data->material_rocks = eo_add(EVAS_3D_MATERIAL_CLASS, evas); + data->material_rocks = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); - data->texture_rocks = eo_add(EVAS_3D_TEXTURE_CLASS, evas); - data->texture_rocks_n = eo_add(EVAS_3D_TEXTURE_CLASS, evas); - eo_do(data->texture_rocks, evas_3d_texture_file_set(rock_diffuse, NULL), - evas_3d_texture_wrap_set(EVAS_3D_WRAP_MODE_REPEAT, - EVAS_3D_WRAP_MODE_REPEAT)); - eo_do(data->texture_rocks_n, evas_3d_texture_file_set(rock_n_and_height_map, NULL), - evas_3d_texture_wrap_set(EVAS_3D_WRAP_MODE_REPEAT, - EVAS_3D_WRAP_MODE_REPEAT)); + data->texture_rocks = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); + data->texture_rocks_n = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); + eo_do(data->texture_rocks, evas_canvas3d_texture_file_set(rock_diffuse, NULL), + evas_canvas3d_texture_wrap_set(EVAS_CANVAS3D_WRAP_MODE_REPEAT, + EVAS_CANVAS3D_WRAP_MODE_REPEAT)); + eo_do(data->texture_rocks_n, evas_canvas3d_texture_file_set(rock_n_and_height_map, NULL), + evas_canvas3d_texture_wrap_set(EVAS_CANVAS3D_WRAP_MODE_REPEAT, + EVAS_CANVAS3D_WRAP_MODE_REPEAT)); eo_do(data->material_rocks, - evas_3d_material_texture_set(EVAS_3D_MATERIAL_NORMAL, data->texture_rocks_n), - evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, data->texture_rocks), - evas_3d_material_texture_set(EVAS_3D_MATERIAL_AMBIENT, data->texture_rocks), - evas_3d_material_texture_set(EVAS_3D_MATERIAL_SPECULAR, data->texture_rocks), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_NORMAL, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), - - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 0.1, 0.1, 0.1, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_shininess_set(100.0)); - - data->material_wood = eo_add(EVAS_3D_MATERIAL_CLASS, evas); - - data->texture_wood = eo_add(EVAS_3D_TEXTURE_CLASS, evas); - data->texture_four_n = eo_add(EVAS_3D_TEXTURE_CLASS, evas); - eo_do(data->texture_wood, evas_3d_texture_file_set(wood_diffuse, NULL), - evas_3d_texture_wrap_set(EVAS_3D_WRAP_MODE_REPEAT, - EVAS_3D_WRAP_MODE_REPEAT)); - eo_do(data->texture_four_n, evas_3d_texture_file_set(wood_n_and_height_map, NULL), - evas_3d_texture_wrap_set(EVAS_3D_WRAP_MODE_REPEAT, - EVAS_3D_WRAP_MODE_REPEAT)); + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_NORMAL, data->texture_rocks_n), + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, data->texture_rocks), + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, data->texture_rocks), + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, data->texture_rocks), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_NORMAL, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), + + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0.1, 0.1, 0.1, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_shininess_set(100.0)); + + data->material_wood = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); + + data->texture_wood = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); + data->texture_four_n = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); + eo_do(data->texture_wood, evas_canvas3d_texture_file_set(wood_diffuse, NULL), + evas_canvas3d_texture_wrap_set(EVAS_CANVAS3D_WRAP_MODE_REPEAT, + EVAS_CANVAS3D_WRAP_MODE_REPEAT)); + eo_do(data->texture_four_n, evas_canvas3d_texture_file_set(wood_n_and_height_map, NULL), + evas_canvas3d_texture_wrap_set(EVAS_CANVAS3D_WRAP_MODE_REPEAT, + EVAS_CANVAS3D_WRAP_MODE_REPEAT)); eo_do(data->material_wood, - evas_3d_material_texture_set(EVAS_3D_MATERIAL_NORMAL, data->texture_four_n), - evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, data->texture_wood), - evas_3d_material_texture_set(EVAS_3D_MATERIAL_AMBIENT, data->texture_wood), - evas_3d_material_texture_set(EVAS_3D_MATERIAL_SPECULAR, data->texture_wood), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_NORMAL, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), - - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 0.1, 0.1, 0.1, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_shininess_set(100.0)); + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_NORMAL, data->texture_four_n), + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, data->texture_wood), + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, data->texture_wood), + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, data->texture_wood), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_NORMAL, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), + + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0.1, 0.1, 0.1, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_shininess_set(100.0)); /* Set data of primitive */ - data->cube = eo_add(EVAS_3D_PRIMITIVE_CLASS, evas); + data->cube = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, evas); eo_do(data->cube, - evas_3d_primitive_form_set(EVAS_3D_MESH_PRIMITIVE_CUBE)); + evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_CUBE)); /* Setup mesh. */ - data->mesh = eo_add(EVAS_3D_MESH_CLASS, evas); + data->mesh = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); eo_do(data->mesh, - evas_3d_mesh_from_primitive_set(0, data->cube), - evas_3d_mesh_from_primitive_set(100, data->cube), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PARALLAX_OCCLUSION), - evas_3d_mesh_frame_material_set(0, data->material_rocks)); + evas_canvas3d_mesh_from_primitive_set(0, data->cube), + evas_canvas3d_mesh_from_primitive_set(100, data->cube), + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PARALLAX_OCCLUSION), + evas_canvas3d_mesh_frame_material_set(0, data->material_rocks)); eo_do(data->mesh, - evas_3d_mesh_frame_material_set(100, data->material_wood)); + evas_canvas3d_mesh_frame_material_set(100, data->material_wood)); - data->mesh_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); - eo_do(data->root_node, evas_3d_node_member_add(data->mesh_node)); - eo_do(data->mesh_node, evas_3d_node_mesh_add(data->mesh), - evas_3d_node_scale_set(3, 3, 3)); + data->mesh_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->mesh_node)); + eo_do(data->mesh_node, evas_canvas3d_node_mesh_add(data->mesh), + evas_canvas3d_node_scale_set(3, 3, 3)); } static void _scene_setup(Scene_Data *data) { - data->scene = eo_add(EVAS_3D_SCENE_CLASS, evas); + data->scene = eo_add(EVAS_CANVAS3D_SCENE_CLASS, evas); eo_do(data->scene, - evas_3d_scene_size_set(WIDTH, HEIGHT); - evas_3d_scene_background_color_set(0.0, 0.0, 0.0, 0.0)); + evas_canvas3d_scene_size_set(WIDTH, HEIGHT); + evas_canvas3d_scene_background_color_set(0.0, 0.0, 0.0, 0.0)); - data->root_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_NODE)); + data->root_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); _camera_setup(data); _light_setup(data); _mesh_setup(data); eo_do(data->scene, - evas_3d_scene_root_node_set(data->root_node), - evas_3d_scene_camera_node_set(data->camera_node)); + evas_canvas3d_scene_root_node_set(data->root_node), + evas_canvas3d_scene_camera_node_set(data->camera_node)); } int diff --git a/src/examples/evas/evas-3d-pick.c b/src/examples/evas/evas-3d-pick.c index 9e8e19ba35..261acc49d4 100644 --- a/src/examples/evas/evas-3d-pick.c +++ b/src/examples/evas/evas-3d-pick.c @@ -1,8 +1,8 @@ /** - * This example shows how to attach mechanism of pick. + * This example shows how to attach mechanism of pick. * - * Here shown which transformation should be applied to event_info of - * _on_mouse_down to make them usable in evas_3d_scene_pick() + * Here shown which transformation should be applied to event_info of + * _on_mouse_down to make them usable in evas_canvas3d_scene_pick() * and parameters which can be got from this function. * * @verbatim @@ -51,8 +51,8 @@ _animate_scene(void *data) angle += 0.3; - eo_do((Evas_3D_Node *)data, - evas_3d_node_orientation_angle_axis_set(angle, 0.0, 1.0, 0.0)); + eo_do((Evas_Canvas3D_Node *)data, + evas_canvas3d_node_orientation_angle_axis_set(angle, 0.0, 1.0, 0.0)); /* Rotate */ if (angle > 360.0) angle -= 360.0f; @@ -87,8 +87,8 @@ _on_mouse_down(void *data EINA_UNUSED, Evas *e EINA_UNUSED, Evas_Object *obj, int scene_w, scene_h; Evas_Real scene_x, scene_y; Evas_Real s, t; - Evas_3D_Node *n; - Evas_3D_Mesh *m; + Evas_Canvas3D_Node *n; + Evas_Canvas3D_Mesh *m; Eina_Bool pick; evas_object_geometry_get(obj, &x, &y, &w, &h); @@ -96,12 +96,12 @@ _on_mouse_down(void *data EINA_UNUSED, Evas *e EINA_UNUSED, Evas_Object *obj, obj_x = ev->canvas.x - x; obj_y = ev->canvas.y - y; - eo_do(scene, evas_3d_scene_size_get(&scene_w, &scene_h)); + eo_do(scene, evas_canvas3d_scene_size_get(&scene_w, &scene_h)); scene_x = obj_x * scene_w / (Evas_Real)w; scene_y = obj_y * scene_h / (Evas_Real)h; - eo_do(scene, pick = evas_3d_scene_pick(scene_x, scene_y, &n, &m, &s, &t)); + eo_do(scene, pick = evas_canvas3d_scene_pick(scene_x, scene_y, &n, &m, &s, &t)); if (pick) printf("Picked : "); else printf("Not picked : "); @@ -133,70 +133,70 @@ main(void) evas = ecore_evas_get(ecore_evas); /* Add a scene object .*/ - scene = eo_add(EVAS_3D_SCENE_CLASS, evas); + scene = eo_add(EVAS_CANVAS3D_SCENE_CLASS, evas); /* Add the root node for the scene. */ - root_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_NODE)); + root_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); /* Add the camera. */ - camera = eo_add(EVAS_3D_CAMERA_CLASS, evas); + camera = eo_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); eo_do(camera, - evas_3d_camera_projection_perspective_set(30.0, 1.0, 1.0, 100.0)); + evas_canvas3d_camera_projection_perspective_set(30.0, 1.0, 1.0, 100.0)); camera_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_CAMERA)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_CAMERA)); eo_do(camera_node, - evas_3d_node_camera_set(camera), - evas_3d_node_position_set(0.0, 0.0, 2.5), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); - eo_do(root_node, evas_3d_node_member_add(camera_node)); + evas_canvas3d_node_camera_set(camera), + evas_canvas3d_node_position_set(0.0, 0.0, 2.5), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + eo_do(root_node, evas_canvas3d_node_member_add(camera_node)); - sphere = eo_add(EVAS_3D_PRIMITIVE_CLASS, evas); + sphere = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, evas); eo_do(sphere, - evas_3d_primitive_form_set(EVAS_3D_MESH_PRIMITIVE_SPHERE), - evas_3d_primitive_precision_set(50)); + evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_SPHERE), + evas_canvas3d_primitive_precision_set(50)); - mesh = eo_add(EVAS_3D_MESH_CLASS, evas); - eo_do(mesh, evas_3d_mesh_from_primitive_set(0, sphere)); + mesh = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); + eo_do(mesh, evas_canvas3d_mesh_from_primitive_set(0, sphere)); - material = eo_add(EVAS_3D_MATERIAL_CLASS, evas); + material = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); - texture_diffuse = eo_add(EVAS_3D_TEXTURE_CLASS, evas); + texture_diffuse = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); eo_do(texture_diffuse, - evas_3d_texture_file_set(image_path, NULL), - evas_3d_texture_filter_set(EVAS_3D_TEXTURE_FILTER_LINEAR, - EVAS_3D_TEXTURE_FILTER_LINEAR)); + evas_canvas3d_texture_file_set(image_path, NULL), + evas_canvas3d_texture_filter_set(EVAS_CANVAS3D_TEXTURE_FILTER_LINEAR, + EVAS_CANVAS3D_TEXTURE_FILTER_LINEAR)); eo_do(material, - evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, texture_diffuse), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 0.01, 0.01, 0.01, + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0.01, 0.01, 0.01, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 1.0, 1.0, 1.0, + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_shininess_set(50.0)); + evas_canvas3d_material_shininess_set(50.0)); - mesh_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); + mesh_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); - eo_do(root_node, evas_3d_node_member_add(mesh_node)); - eo_do(mesh_node, evas_3d_node_mesh_add(mesh)); - eo_do(mesh, evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_DIFFUSE), - evas_3d_mesh_frame_material_set(0, material)); + eo_do(root_node, evas_canvas3d_node_member_add(mesh_node)); + eo_do(mesh_node, evas_canvas3d_node_mesh_add(mesh)); + eo_do(mesh, evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_DIFFUSE), + evas_canvas3d_mesh_frame_material_set(0, material)); /* Set up scene. */ eo_do(scene, - evas_3d_scene_root_node_set(root_node), - evas_3d_scene_camera_node_set(camera_node), - evas_3d_scene_size_set(WIDTH, HEIGHT)); + evas_canvas3d_scene_root_node_set(root_node), + evas_canvas3d_scene_camera_node_set(camera_node), + evas_canvas3d_scene_size_set(WIDTH, HEIGHT)); /* Add evas objects. */ background = eo_add(EVAS_RECTANGLE_CLASS, evas); diff --git a/src/examples/evas/evas-3d-ply.c b/src/examples/evas/evas-3d-ply.c index 502b3d6312..341011a55a 100644 --- a/src/examples/evas/evas-3d-ply.c +++ b/src/examples/evas/evas-3d-ply.c @@ -43,7 +43,7 @@ static const char *file_name[8] = {"Normal_UVs_Colors.ply", "NoNormal_NoUVs_Colors.ply", "NoNormal_NoUVs_NoColors.ply"}; -int draw_mode[2] = {EVAS_3D_SHADE_MODE_PHONG, EVAS_3D_SHADE_MODE_VERTEX_COLOR}; +int draw_mode[2] = {EVAS_CANVAS3D_SHADE_MODE_PHONG, EVAS_CANVAS3D_SHADE_MODE_VERTEX_COLOR}; Ecore_Evas *ecore_evas = NULL; Evas *evas = NULL; @@ -71,7 +71,7 @@ _animate_scene(void *data) { angle += 0.2; - eo_do((Evas_3D_Node *)data, evas_3d_node_orientation_angle_axis_set(angle, 1.0, 1.0, 1.0)); + eo_do((Evas_Canvas3D_Node *)data, evas_canvas3d_node_orientation_angle_axis_set(angle, 1.0, 1.0, 1.0)); /* Rotate */ if (angle > 360.0) angle -= 360.0f; @@ -123,66 +123,66 @@ main(void) evas = ecore_evas_get(ecore_evas); /* Add a scene object .*/ - scene = eo_add(EVAS_3D_SCENE_CLASS, evas); + scene = eo_add(EVAS_CANVAS3D_SCENE_CLASS, evas); /* Add the root node for the scene. */ - root_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_NODE)); + root_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); /* Add the camera. */ - camera = eo_add(EVAS_3D_CAMERA_CLASS, evas); + camera = eo_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); eo_do(camera, - evas_3d_camera_projection_perspective_set(60.0, 1.0, 1.0, 500.0)); + evas_canvas3d_camera_projection_perspective_set(60.0, 1.0, 1.0, 500.0)); - camera_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_CAMERA)); + camera_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_CAMERA)); eo_do(camera_node, - evas_3d_node_camera_set(camera)); + evas_canvas3d_node_camera_set(camera)); eo_do(root_node, - evas_3d_node_member_add(camera_node)); + evas_canvas3d_node_member_add(camera_node)); eo_do(camera_node, - evas_3d_node_position_set(15.0, 0.0, 0.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 0.0, 1.0)); + evas_canvas3d_node_position_set(15.0, 0.0, 0.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 1.0)); /* Add the light. */ - light = eo_add(EVAS_3D_LIGHT_CLASS, evas); + light = eo_add(EVAS_CANVAS3D_LIGHT_CLASS, evas); eo_do(light, - evas_3d_light_ambient_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_specular_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_directional_set(EINA_TRUE)); + evas_canvas3d_light_ambient_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_specular_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_directional_set(EINA_TRUE)); - light_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_LIGHT)); + light_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_LIGHT)); eo_do(light_node, - evas_3d_node_light_set(light), - evas_3d_node_position_set(1000.0, 0.0, 1000.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + evas_canvas3d_node_light_set(light), + evas_canvas3d_node_position_set(1000.0, 0.0, 1000.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); eo_do(root_node, - evas_3d_node_member_add(light_node)); + evas_canvas3d_node_member_add(light_node)); - material = eo_add(EVAS_3D_MATERIAL_CLASS, evas); - texture = eo_add(EVAS_3D_TEXTURE_CLASS, evas); + material = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); + texture = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); eo_do(texture, - evas_3d_texture_file_set(image_path, NULL), - evas_3d_texture_filter_set(EVAS_3D_TEXTURE_FILTER_NEAREST, - EVAS_3D_TEXTURE_FILTER_NEAREST), - evas_3d_texture_wrap_set(EVAS_3D_WRAP_MODE_REPEAT, - EVAS_3D_WRAP_MODE_REPEAT)); + evas_canvas3d_texture_file_set(image_path, NULL), + evas_canvas3d_texture_filter_set(EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST, + EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST), + evas_canvas3d_texture_wrap_set(EVAS_CANVAS3D_WRAP_MODE_REPEAT, + EVAS_CANVAS3D_WRAP_MODE_REPEAT)); eo_do(material, - evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, texture), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_NORMAL, EINA_TRUE), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, texture), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_NORMAL, EINA_TRUE), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0.01, 0.01, 0.01, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_shininess_set(50.0)); + evas_canvas3d_material_shininess_set(50.0)); if (!ecore_file_mkpath(PACKAGE_EXAMPLES_DIR EVAS_SAVED_FILES)) fprintf(stderr, "Failed to create folder %s\n\n", @@ -191,13 +191,13 @@ main(void) /* Add the meshes. */ for (i = 0; i < NUMBER_OF_MESHES; i++) { - mesh[i] = eo_add(EVAS_3D_MESH_CLASS, evas); + mesh[i] = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); snprintf(buffer, PATH_MAX, "%s%s", input_template, file_name[i % 8]); eo_do(mesh[i], efl_file_set(buffer, NULL), - evas_3d_mesh_frame_material_set(0, material), - evas_3d_mesh_shade_mode_set(draw_mode[(i % 16) / 8])); + evas_canvas3d_mesh_frame_material_set(0, material), + evas_canvas3d_mesh_shade_mode_set(draw_mode[(i % 16) / 8])); snprintf(buffer, PATH_MAX, "%s%s", output_template, file_name[i % 8]); eo_do(mesh[i], efl_file_save(buffer, NULL, NULL)); @@ -206,23 +206,23 @@ main(void) { eo_do(mesh[i], efl_file_set(buffer, NULL), - evas_3d_mesh_frame_material_set(0, material), - evas_3d_mesh_shade_mode_set(draw_mode[(i % 16) / 8])); + evas_canvas3d_mesh_frame_material_set(0, material), + evas_canvas3d_mesh_shade_mode_set(draw_mode[(i % 16) / 8])); } - mesh_node[i] = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); - eo_do(root_node, evas_3d_node_member_add(mesh_node[i])); + mesh_node[i] = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); + eo_do(root_node, evas_canvas3d_node_member_add(mesh_node[i])); eo_do(mesh_node[i], - evas_3d_node_mesh_add(mesh[i]), - evas_3d_node_position_set(0, ((i % 4) * 4) + ((i / 16) * 1) - 6.5, (((i % 16) / 4) * 4) - 6)); + evas_canvas3d_node_mesh_add(mesh[i]), + evas_canvas3d_node_position_set(0, ((i % 4) * 4) + ((i / 16) * 1) - 6.5, (((i % 16) / 4) * 4) - 6)); } /* Set up scene. */ eo_do(scene, - evas_3d_scene_root_node_set(root_node), - evas_3d_scene_camera_node_set(camera_node), - evas_3d_scene_size_set(WIDTH, HEIGHT)); + evas_canvas3d_scene_root_node_set(root_node), + evas_canvas3d_scene_camera_node_set(camera_node), + evas_canvas3d_scene_size_set(WIDTH, HEIGHT)); /* Add a background rectangle objects. */ background = eo_add(EVAS_RECTANGLE_CLASS, evas); diff --git a/src/examples/evas/evas-3d-proxy.c b/src/examples/evas/evas-3d-proxy.c index e74670e4bb..14bb7a3491 100644 --- a/src/examples/evas/evas-3d-proxy.c +++ b/src/examples/evas/evas-3d-proxy.c @@ -1,5 +1,5 @@ /** - * Evas-3D example illustrating usage of evas_3d_texture_source_set() + * Evas-3D example illustrating usage of evas_canvas3d_texture_source_set() * * Data which will be used as texture can be generated directly in application. * @@ -71,7 +71,7 @@ _animate_scene(void *data) angle += 0.5; eo_do(scene->mesh_node, - evas_3d_node_orientation_angle_axis_set(angle, 1.0, 1.0, 1.0)); + evas_canvas3d_node_orientation_angle_axis_set(angle, 1.0, 1.0, 1.0)); /* Rotate */ if (angle > 360.0) angle -= 360.0f; @@ -100,104 +100,104 @@ _animate_scene(void *data) static void _camera_setup(Scene_Data *data) { - data->camera = eo_add(EVAS_3D_CAMERA_CLASS, evas); + data->camera = eo_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); eo_do(data->camera, - evas_3d_camera_projection_perspective_set(30.0, 1.0, 2.0, 50.0)); + evas_canvas3d_camera_projection_perspective_set(30.0, 1.0, 2.0, 50.0)); data->camera_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_CAMERA)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_CAMERA)); eo_do(data->camera_node, - evas_3d_node_camera_set(data->camera), - evas_3d_node_position_set(0.0, 0.0, 5.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + evas_canvas3d_node_camera_set(data->camera), + evas_canvas3d_node_position_set(0.0, 0.0, 5.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); eo_do(data->root_node, - evas_3d_node_member_add(data->camera_node)); + evas_canvas3d_node_member_add(data->camera_node)); } static void _light_setup(Scene_Data *data) { - data->light = eo_add(EVAS_3D_LIGHT_CLASS, evas); + data->light = eo_add(EVAS_CANVAS3D_LIGHT_CLASS, evas); eo_do(data->light, - evas_3d_light_ambient_set(0.2, 0.2, 0.2, 1.0), - evas_3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_specular_set(1.0, 1.0, 1.0, 1.0)); + evas_canvas3d_light_ambient_set(0.2, 0.2, 0.2, 1.0), + evas_canvas3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_specular_set(1.0, 1.0, 1.0, 1.0)); data->light_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_LIGHT)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_LIGHT)); eo_do(data->light_node, - evas_3d_node_light_set(data->light), - evas_3d_node_position_set(0.0, 0.0, 10.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); - eo_do(data->root_node, evas_3d_node_member_add(data->light_node)); + evas_canvas3d_node_light_set(data->light), + evas_canvas3d_node_position_set(0.0, 0.0, 10.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->light_node)); } static void _mesh_setup(Scene_Data *data) { /* Setup material. */ - data->material = eo_add(EVAS_3D_MATERIAL_CLASS, evas); - data->texture = eo_add(EVAS_3D_TEXTURE_CLASS, evas); + data->material = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); + data->texture = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); eo_do(data->texture, - evas_3d_texture_source_set(source), - evas_3d_texture_source_visible_set(EINA_TRUE)); + evas_canvas3d_texture_source_set(source), + evas_canvas3d_texture_source_visible_set(EINA_TRUE)); eo_do(data->material, - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 0.2, 0.2, 0.2, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 0.8, 0.8, 0.8, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_shininess_set(100.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0.2, 0.2, 0.2, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 0.8, 0.8, 0.8, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_shininess_set(100.0), - evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, data->texture)); + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, data->texture)); /* Set data of primitive */ - data->cube = eo_add(EVAS_3D_PRIMITIVE_CLASS, evas); + data->cube = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, evas); eo_do(data->cube, - evas_3d_primitive_form_set(EVAS_3D_MESH_PRIMITIVE_CUBE)); + evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_CUBE)); /* Setup mesh. */ - data->mesh = eo_add(EVAS_3D_MESH_CLASS, evas); + data->mesh = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); eo_do(data->mesh, - evas_3d_mesh_from_primitive_set(0, data->cube), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_FLAT), - evas_3d_mesh_frame_material_set(0, data->material)); + evas_canvas3d_mesh_from_primitive_set(0, data->cube), + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_FLAT), + evas_canvas3d_mesh_frame_material_set(0, data->material)); data->mesh_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); - eo_do(data->root_node, evas_3d_node_member_add(data->mesh_node)); - eo_do(data->mesh_node, evas_3d_node_mesh_add(data->mesh)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->mesh_node)); + eo_do(data->mesh_node, evas_canvas3d_node_mesh_add(data->mesh)); } static void _scene_setup(Scene_Data *data) { - data->scene = eo_add(EVAS_3D_SCENE_CLASS, evas); + data->scene = eo_add(EVAS_CANVAS3D_SCENE_CLASS, evas); eo_do(data->scene, - evas_3d_scene_size_set(WIDTH, HEIGHT), - evas_3d_scene_background_color_set(0.0, 0.0, 0.0, 0.0)); + evas_canvas3d_scene_size_set(WIDTH, HEIGHT), + evas_canvas3d_scene_background_color_set(0.0, 0.0, 0.0, 0.0)); data->root_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_NODE)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); _camera_setup(data); _light_setup(data); _mesh_setup(data); eo_do(data->scene, - evas_3d_scene_root_node_set(data->root_node), - evas_3d_scene_camera_node_set(data->camera_node)); + evas_canvas3d_scene_root_node_set(data->root_node), + evas_canvas3d_scene_camera_node_set(data->camera_node)); } int diff --git a/src/examples/evas/evas-3d-shadows.c b/src/examples/evas/evas-3d-shadows.c index bf2319fea9..91d5a75186 100644 --- a/src/examples/evas/evas-3d-shadows.c +++ b/src/examples/evas/evas-3d-shadows.c @@ -3,9 +3,9 @@ * and technic of the billboard. * Model and cube are clickable. Model detects collision with sphere. * Cube detects collision with sphere, model and cone. - * @see evas_3d_scene_shadows_enable_set(Eina_Bool _shadows_enabled) - * @see evas_3d_object_callback_register - * @see evas_3d_billboard_set/get + * @see evas_canvas3d_scene_shadows_enable_set(Eina_Bool _shadows_enabled) + * @see evas_canvas3d_object_callback_register + * @see evas_canvas3d_billboard_set/get * * @verbatim * gcc -o evas-3d-shadows evas-3d-shadows.c `pkg-config --libs --cflags efl evas ecore ecore-evas eo eina` -lm @@ -45,7 +45,7 @@ Ecore_Evas *ecore_evas = NULL; Evas *evas = NULL; Eo *background = NULL; Eo *image = NULL; -Evas_3D_Node *choosed_node = NULL; +Evas_Canvas3D_Node *choosed_node = NULL; typedef struct _Body_3D { @@ -82,25 +82,25 @@ Eina_Bool _cb_clicked(void *data EINA_UNUSED, Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void *event_info) { Eina_List *meshes = NULL, *l; - Evas_3D_Mesh *m; - Evas_3D_Node *billboard = NULL; - eo_do((Evas_3D_Node *)event_info, meshes = (Eina_List *)evas_3d_node_mesh_list_get()); + Evas_Canvas3D_Mesh *m; + Evas_Canvas3D_Node *billboard = NULL; + eo_do((Evas_Canvas3D_Node *)event_info, meshes = (Eina_List *)evas_canvas3d_node_mesh_list_get()); EINA_LIST_FOREACH(meshes, l, m) { - eo_do(m, evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_DIFFUSE)); + eo_do(m, evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_DIFFUSE)); } - if (choosed_node != (Evas_3D_Node *)event_info) + if (choosed_node != (Evas_Canvas3D_Node *)event_info) { - eo_do(choosed_node, billboard = evas_3d_node_billboard_target_get()); + eo_do(choosed_node, billboard = evas_canvas3d_node_billboard_target_get()); if (!billboard) { - eo_do(choosed_node, meshes = (Eina_List *)evas_3d_node_mesh_list_get()); + eo_do(choosed_node, meshes = (Eina_List *)evas_canvas3d_node_mesh_list_get()); EINA_LIST_FOREACH(meshes, l, m) { - eo_do(m, evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG)); + eo_do(m, evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG)); } } - choosed_node = (Evas_3D_Node *)event_info; + choosed_node = (Evas_Canvas3D_Node *)event_info; } return EINA_TRUE; @@ -110,11 +110,11 @@ Eina_Bool _cb_collision(void *data EINA_UNUSED, Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void *event_info) { Eina_List *meshes = NULL, *l; - Evas_3D_Mesh *m; - eo_do((Evas_3D_Node *)event_info, meshes = (Eina_List *)evas_3d_node_mesh_list_get()); + Evas_Canvas3D_Mesh *m; + eo_do((Evas_Canvas3D_Node *)event_info, meshes = (Eina_List *)evas_canvas3d_node_mesh_list_get()); EINA_LIST_FOREACH(meshes, l, m) { - eo_do(m, evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_DIFFUSE)); + eo_do(m, evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_DIFFUSE)); } return EINA_TRUE; @@ -143,19 +143,19 @@ _animate_scene(void *data) if (scene->init) { eo_do(scene->mediator, - evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x, &y, &z)); + evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x, &y, &z)); eo_do(scene->mediator, - evas_3d_node_position_set(sin(angle) * 20 , y , cos(angle) * 20), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 3.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 5.0, 0.0)); + evas_canvas3d_node_position_set(sin(angle) * 20 , y , cos(angle) * 20), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 3.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 5.0, 0.0)); angle += 0.005; if (angle > 360) angle = 0.0; } else eo_do(scene->mediator, - evas_3d_node_position_set(0.0, 6.0, 12.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 3.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 5.0, 0.0)); + evas_canvas3d_node_position_set(0.0, 6.0, 12.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 3.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 5.0, 0.0)); return EINA_TRUE; } @@ -179,314 +179,314 @@ _on_canvas_resize(Ecore_Evas *ee) static void _body_material_set(Body_3D *body, float r, float g, float b) { - body->material = eo_add(EVAS_3D_MATERIAL_CLASS, evas); + body->material = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); eo_do(body->material, - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, r, g, b, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, r, g, b, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_shininess_set(100.0)); + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, r, g, b, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, r, g, b, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_shininess_set(100.0)); eo_do(body->mesh, - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG), - evas_3d_mesh_frame_material_set(0, body->material)); + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG), + evas_canvas3d_mesh_frame_material_set(0, body->material)); } static void _sphere_setup(Body_3D *sphere) { - sphere->primitive = eo_add(EVAS_3D_PRIMITIVE_CLASS, evas); + sphere->primitive = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, evas); eo_do(sphere->primitive, - evas_3d_primitive_form_set(EVAS_3D_MESH_PRIMITIVE_SPHERE), - evas_3d_primitive_precision_set(50)); + evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_SPHERE), + evas_canvas3d_primitive_precision_set(50)); - sphere->mesh = eo_add(EVAS_3D_MESH_CLASS, evas); + sphere->mesh = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); eo_do(sphere->mesh, - evas_3d_mesh_from_primitive_set(0, sphere->primitive)); + evas_canvas3d_mesh_from_primitive_set(0, sphere->primitive)); _body_material_set(sphere, 1, 0.0, 0.0); - sphere->node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH), - evas_3d_node_position_set(3.0, 3.0, 0.0)); - eo_do(sphere->node, evas_3d_node_mesh_add(sphere->mesh)); + sphere->node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH), + evas_canvas3d_node_position_set(3.0, 3.0, 0.0)); + eo_do(sphere->node, evas_canvas3d_node_mesh_add(sphere->mesh)); } static void _cone_setup(Body_3D *cone) { - cone->primitive = eo_add(EVAS_3D_PRIMITIVE_CLASS, evas); + cone->primitive = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, evas); eo_do(cone->primitive, - evas_3d_primitive_form_set(EVAS_3D_MESH_PRIMITIVE_CONE), - evas_3d_primitive_precision_set(50)); + evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_CONE), + evas_canvas3d_primitive_precision_set(50)); - cone->mesh = eo_add(EVAS_3D_MESH_CLASS, evas); + cone->mesh = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); eo_do(cone->mesh, - evas_3d_mesh_from_primitive_set(0, cone->primitive)); + evas_canvas3d_mesh_from_primitive_set(0, cone->primitive)); _body_material_set(cone, 0.8, 0.5, 0.5); cone->node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); - eo_do(cone->node, evas_3d_node_mesh_add(cone->mesh), - evas_3d_node_orientation_angle_axis_set(-90.0, 1.0, 0.0, 0.0), - evas_3d_node_position_set(-4.0, 0.0, -3.0)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); + eo_do(cone->node, evas_canvas3d_node_mesh_add(cone->mesh), + evas_canvas3d_node_orientation_angle_axis_set(-90.0, 1.0, 0.0, 0.0), + evas_canvas3d_node_position_set(-4.0, 0.0, -3.0)); } static void _cylinder_setup(Body_3D *cylinder) { - cylinder->primitive = eo_add(EVAS_3D_PRIMITIVE_CLASS, evas); + cylinder->primitive = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, evas); eo_do(cylinder->primitive, - evas_3d_primitive_form_set(EVAS_3D_MESH_PRIMITIVE_CYLINDER), - evas_3d_primitive_precision_set(50)); + evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_CYLINDER), + evas_canvas3d_primitive_precision_set(50)); - cylinder->mesh = eo_add(EVAS_3D_MESH_CLASS, evas); + cylinder->mesh = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); eo_do(cylinder->mesh, - evas_3d_mesh_from_primitive_set(0, cylinder->primitive)); + evas_canvas3d_mesh_from_primitive_set(0, cylinder->primitive)); _body_material_set(cylinder, 0.0, 0.0, 1.0); cylinder->node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); - eo_do(cylinder->node, evas_3d_node_mesh_add(cylinder->mesh), - evas_3d_node_orientation_angle_axis_set(-90.0, 1.0, 0.0, 0.0), - evas_3d_node_position_set(-2.0, 3.0, 1.0)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); + eo_do(cylinder->node, evas_canvas3d_node_mesh_add(cylinder->mesh), + evas_canvas3d_node_orientation_angle_axis_set(-90.0, 1.0, 0.0, 0.0), + evas_canvas3d_node_position_set(-2.0, 3.0, 1.0)); } static void _fence_setup(Body_3D *fence) { - Eo *texture = eo_add(EVAS_3D_TEXTURE_CLASS, evas); - eo_do(texture, evas_3d_texture_atlas_enable_set(EINA_FALSE)); + Eo *texture = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); + eo_do(texture, evas_canvas3d_texture_atlas_enable_set(EINA_FALSE)); eo_do(texture, - evas_3d_texture_file_set(PACKAGE_EXAMPLES_DIR EVAS_IMAGE_FOLDER "/grid.png", NULL), - evas_3d_texture_filter_set(EVAS_3D_TEXTURE_FILTER_NEAREST, - EVAS_3D_TEXTURE_FILTER_NEAREST), - evas_3d_texture_wrap_set(EVAS_3D_WRAP_MODE_REPEAT, - EVAS_3D_WRAP_MODE_REPEAT)); - Eo *texture1 = eo_add(EVAS_3D_TEXTURE_CLASS, evas); - eo_do(texture1, evas_3d_texture_atlas_enable_set(EINA_FALSE)); + evas_canvas3d_texture_file_set(PACKAGE_EXAMPLES_DIR EVAS_IMAGE_FOLDER "/grid.png", NULL), + evas_canvas3d_texture_filter_set(EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST, + EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST), + evas_canvas3d_texture_wrap_set(EVAS_CANVAS3D_WRAP_MODE_REPEAT, + EVAS_CANVAS3D_WRAP_MODE_REPEAT)); + Eo *texture1 = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); + eo_do(texture1, evas_canvas3d_texture_atlas_enable_set(EINA_FALSE)); eo_do(texture1, - evas_3d_texture_file_set(PACKAGE_EXAMPLES_DIR EVAS_IMAGE_FOLDER "/grid_n.png", NULL), - evas_3d_texture_filter_set(EVAS_3D_TEXTURE_FILTER_NEAREST, - EVAS_3D_TEXTURE_FILTER_NEAREST), - evas_3d_texture_wrap_set(EVAS_3D_WRAP_MODE_REPEAT, - EVAS_3D_WRAP_MODE_REPEAT)); - fence->material = eo_add(EVAS_3D_MATERIAL_CLASS, evas); + evas_canvas3d_texture_file_set(PACKAGE_EXAMPLES_DIR EVAS_IMAGE_FOLDER "/grid_n.png", NULL), + evas_canvas3d_texture_filter_set(EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST, + EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST), + evas_canvas3d_texture_wrap_set(EVAS_CANVAS3D_WRAP_MODE_REPEAT, + EVAS_CANVAS3D_WRAP_MODE_REPEAT)); + fence->material = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); eo_do(fence->material, - evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, texture), - evas_3d_material_texture_set(EVAS_3D_MATERIAL_AMBIENT, texture), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_NORMAL, EINA_TRUE), - evas_3d_material_texture_set(EVAS_3D_MATERIAL_NORMAL, texture1), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_shininess_set(100.0)); - - fence->primitive = eo_add(EVAS_3D_PRIMITIVE_CLASS, evas); + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, texture), + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, texture), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_NORMAL, EINA_TRUE), + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_NORMAL, texture1), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_shininess_set(100.0)); + + fence->primitive = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, evas); eo_do(fence->primitive, - evas_3d_primitive_form_set(EVAS_3D_MESH_PRIMITIVE_CYLINDER), - evas_3d_primitive_mode_set(EVAS_3D_PRIMITIVE_MODE_WITHOUT_BASE), - evas_3d_primitive_tex_scale_set(160.0, 12.0), - evas_3d_primitive_precision_set(50)); + evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_CYLINDER), + evas_canvas3d_primitive_mode_set(EVAS_CANVAS3D_PRIMITIVE_MODE_WITHOUT_BASE), + evas_canvas3d_primitive_tex_scale_set(160.0, 12.0), + evas_canvas3d_primitive_precision_set(50)); - fence->mesh = eo_add(EVAS_3D_MESH_CLASS, evas); + fence->mesh = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); eo_do(fence->mesh, - evas_3d_mesh_from_primitive_set(0, fence->primitive)); + evas_canvas3d_mesh_from_primitive_set(0, fence->primitive)); eo_do(fence->mesh, - evas_3d_mesh_frame_material_set(0, fence->material), - evas_3d_mesh_alpha_func_set(EVAS_3D_COMPARISON_GREATER, 0), - evas_3d_mesh_alpha_test_enable_set(EINA_TRUE), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_NORMAL_MAP)); + evas_canvas3d_mesh_frame_material_set(0, fence->material), + evas_canvas3d_mesh_alpha_func_set(EVAS_CANVAS3D_COMPARISON_GREATER, 0), + evas_canvas3d_mesh_alpha_test_enable_set(EINA_TRUE), + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_NORMAL_MAP)); fence->node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); - eo_do(fence->node, evas_3d_node_mesh_add(fence->mesh), - evas_3d_node_orientation_angle_axis_set(-90.0, 1.0, 0.0, 0.0), - evas_3d_node_scale_set(10.0, 10.0, 5.0), - evas_3d_node_position_set(0.0, -1.0, -2.0)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); + eo_do(fence->node, evas_canvas3d_node_mesh_add(fence->mesh), + evas_canvas3d_node_orientation_angle_axis_set(-90.0, 1.0, 0.0, 0.0), + evas_canvas3d_node_scale_set(10.0, 10.0, 5.0), + evas_canvas3d_node_position_set(0.0, -1.0, -2.0)); } static void _square_setup(Body_3D *square) { - square->primitive = eo_add(EVAS_3D_PRIMITIVE_CLASS, evas); + square->primitive = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, evas); eo_do(square->primitive, - evas_3d_primitive_form_set(EVAS_3D_MESH_PRIMITIVE_SQUARE)); + evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_SQUARE)); - square->mesh = eo_add(EVAS_3D_MESH_CLASS, evas); + square->mesh = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); eo_do(square->mesh, - evas_3d_mesh_from_primitive_set(0, square->primitive)); + evas_canvas3d_mesh_from_primitive_set(0, square->primitive)); _body_material_set(square, 0.4, 0.4, 0.4); square->node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); - eo_do(square->node, evas_3d_node_mesh_add(square->mesh), - evas_3d_node_position_set(0.0, -1.0, 0.0), - evas_3d_node_scale_set(30.0, 30.0, 30.0), - evas_3d_node_orientation_angle_axis_set(90.0, 1.0, 0.0, 0.0)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); + eo_do(square->node, evas_canvas3d_node_mesh_add(square->mesh), + evas_canvas3d_node_position_set(0.0, -1.0, 0.0), + evas_canvas3d_node_scale_set(30.0, 30.0, 30.0), + evas_canvas3d_node_orientation_angle_axis_set(90.0, 1.0, 0.0, 0.0)); } static void _box_setup(Body_3D *box) { - box->primitive = eo_add(EVAS_3D_PRIMITIVE_CLASS, evas); + box->primitive = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, evas); eo_do(box->primitive, - evas_3d_primitive_form_set(EVAS_3D_MESH_PRIMITIVE_CUBE)); + evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_CUBE)); - box->mesh = eo_add(EVAS_3D_MESH_CLASS, evas); + box->mesh = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); eo_do(box->mesh, - evas_3d_mesh_from_primitive_set(0, box->primitive)); + evas_canvas3d_mesh_from_primitive_set(0, box->primitive)); _body_material_set(box, 0, 1, 0); - box->node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); - eo_do(box->node, evas_3d_node_mesh_add(box->mesh), - evas_3d_node_position_set(3.0, 0.0, -3.0)); + box->node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); + eo_do(box->node, evas_canvas3d_node_mesh_add(box->mesh), + evas_canvas3d_node_position_set(3.0, 0.0, -3.0)); } static void _model_setup(Body_3D *model) { - model->texture = eo_add(EVAS_3D_TEXTURE_CLASS, evas); + model->texture = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); eo_do(model->texture, - evas_3d_texture_file_set(image_path, NULL), - evas_3d_texture_filter_set(EVAS_3D_TEXTURE_FILTER_NEAREST, - EVAS_3D_TEXTURE_FILTER_NEAREST), - evas_3d_texture_wrap_set(EVAS_3D_WRAP_MODE_REPEAT, - EVAS_3D_WRAP_MODE_REPEAT)); - model->material = eo_add(EVAS_3D_MATERIAL_CLASS, evas); + evas_canvas3d_texture_file_set(image_path, NULL), + evas_canvas3d_texture_filter_set(EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST, + EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST), + evas_canvas3d_texture_wrap_set(EVAS_CANVAS3D_WRAP_MODE_REPEAT, + EVAS_CANVAS3D_WRAP_MODE_REPEAT)); + model->material = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); eo_do(model->material, - evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, model->texture), - evas_3d_material_texture_set(EVAS_3D_MATERIAL_AMBIENT, model->texture), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), - evas_3d_material_shininess_set(100.0)); + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, model->texture), + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, model->texture), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), + evas_canvas3d_material_shininess_set(100.0)); - model->mesh = eo_add(EVAS_3D_MESH_CLASS, evas); + model->mesh = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); eo_do(model->mesh, efl_file_set(model_path, NULL), - evas_3d_mesh_frame_material_set(0, model->material), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG)); + evas_canvas3d_mesh_frame_material_set(0, model->material), + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG)); model->node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); - eo_do(model->node, evas_3d_node_mesh_add(model->mesh), - evas_3d_node_scale_set(0.1, 0.1, 0.1), - evas_3d_node_orientation_angle_axis_set(120.0, -0.577, -0.577, -0.577)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); + eo_do(model->node, evas_canvas3d_node_mesh_add(model->mesh), + evas_canvas3d_node_scale_set(0.1, 0.1, 0.1), + evas_canvas3d_node_orientation_angle_axis_set(120.0, -0.577, -0.577, -0.577)); } static void _billboard_setup(Scene_Data *data) { - data->billboard.texture = eo_add(EVAS_3D_TEXTURE_CLASS, evas); + data->billboard.texture = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); eo_do(data->billboard.texture, - evas_3d_texture_file_set(b_image_path, NULL), - evas_3d_texture_filter_set(EVAS_3D_TEXTURE_FILTER_NEAREST, - EVAS_3D_TEXTURE_FILTER_NEAREST), - evas_3d_texture_wrap_set(EVAS_3D_WRAP_MODE_REPEAT, - EVAS_3D_WRAP_MODE_REPEAT)); + evas_canvas3d_texture_file_set(b_image_path, NULL), + evas_canvas3d_texture_filter_set(EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST, + EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST), + evas_canvas3d_texture_wrap_set(EVAS_CANVAS3D_WRAP_MODE_REPEAT, + EVAS_CANVAS3D_WRAP_MODE_REPEAT)); - data->billboard.primitive = eo_add(EVAS_3D_PRIMITIVE_CLASS, evas); + data->billboard.primitive = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, evas); eo_do(data->billboard.primitive, - evas_3d_primitive_form_set(EVAS_3D_MESH_PRIMITIVE_SQUARE)); + evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_SQUARE)); - data->billboard.mesh = eo_add(EVAS_3D_MESH_CLASS, evas); + data->billboard.mesh = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); eo_do(data->billboard.mesh, - evas_3d_mesh_from_primitive_set(0, data->billboard.primitive)); + evas_canvas3d_mesh_from_primitive_set(0, data->billboard.primitive)); _body_material_set(&(data->billboard), 1.0, 1.0, 1.0); eo_do(data->billboard.material, - evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, data->billboard.texture)); + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, data->billboard.texture)); eo_do(data->billboard.mesh, - evas_3d_mesh_frame_material_set(0, data->billboard.material), - evas_3d_mesh_alpha_func_set(EVAS_3D_COMPARISON_GREATER, 0), - evas_3d_mesh_alpha_test_enable_set(EINA_TRUE), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_DIFFUSE), - evas_3d_mesh_blending_enable_set(EINA_TRUE), - evas_3d_mesh_blending_func_set(EVAS_3D_BLEND_SRC_ALPHA, - EVAS_3D_BLEND_ONE_MINUS_SRC_ALPHA)); - - data->billboard.node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); + evas_canvas3d_mesh_frame_material_set(0, data->billboard.material), + evas_canvas3d_mesh_alpha_func_set(EVAS_CANVAS3D_COMPARISON_GREATER, 0), + evas_canvas3d_mesh_alpha_test_enable_set(EINA_TRUE), + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_DIFFUSE), + evas_canvas3d_mesh_blending_enable_set(EINA_TRUE), + evas_canvas3d_mesh_blending_func_set(EVAS_CANVAS3D_BLEND_SRC_ALPHA, + EVAS_CANVAS3D_BLEND_ONE_MINUS_SRC_ALPHA)); + + data->billboard.node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); eo_do(data->billboard.node, - evas_3d_node_mesh_add(data->billboard.mesh), - evas_3d_node_position_set(0.0, 2.0, 0.0), - evas_3d_node_scale_set(2.2, 4.6, 4.0)); + evas_canvas3d_node_mesh_add(data->billboard.mesh), + evas_canvas3d_node_position_set(0.0, 2.0, 0.0), + evas_canvas3d_node_scale_set(2.2, 4.6, 4.0)); eo_do(data->billboard.node, - evas_3d_node_billboard_target_set(data->mediator)); + evas_canvas3d_node_billboard_target_set(data->mediator)); } static void _camera_setup(Scene_Data *data) { - data->camera = eo_add(EVAS_3D_CAMERA_CLASS, evas); - data->mediator = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_NODE)); + data->camera = eo_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); + data->mediator = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); eo_do(data->camera, - evas_3d_camera_projection_perspective_set(50.0, 1.0, 2.0, 100.0)); + evas_canvas3d_camera_projection_perspective_set(50.0, 1.0, 2.0, 100.0)); data->camera_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_CAMERA)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_CAMERA)); eo_do(data->camera_node, - evas_3d_node_camera_set(data->camera)); + evas_canvas3d_node_camera_set(data->camera)); eo_do(data->mediator, - evas_3d_node_position_set(0.0, 6.0, 12.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 3.0, 0.0, - EVAS_3D_SPACE_PARENT, 0.0, 5.0, 0.0)); + evas_canvas3d_node_position_set(0.0, 6.0, 12.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 3.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 5.0, 0.0)); - eo_do(data->mediator, evas_3d_node_member_add(data->camera_node)); - eo_do(data->root_node, evas_3d_node_member_add(data->mediator)); + eo_do(data->mediator, evas_canvas3d_node_member_add(data->camera_node)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->mediator)); } static void _light_setup(Scene_Data *data) { - data->light = eo_add(EVAS_3D_LIGHT_CLASS, evas); + data->light = eo_add(EVAS_CANVAS3D_LIGHT_CLASS, evas); eo_do(data->light, - evas_3d_light_ambient_set(AMBIENT_LIGHT, 1.0), - evas_3d_light_diffuse_set(DIFFUSE_LIGHT, 1.0), - evas_3d_light_specular_set(SPECULAR_LIGHT, 1.0), - evas_3d_light_spot_cutoff_set(20), - evas_3d_light_projection_perspective_set(40.0, 1.0, 2.0, 1000.0)); + evas_canvas3d_light_ambient_set(AMBIENT_LIGHT, 1.0), + evas_canvas3d_light_diffuse_set(DIFFUSE_LIGHT, 1.0), + evas_canvas3d_light_specular_set(SPECULAR_LIGHT, 1.0), + evas_canvas3d_light_spot_cutoff_set(20), + evas_canvas3d_light_projection_perspective_set(40.0, 1.0, 2.0, 1000.0)); data->light_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_LIGHT)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_LIGHT)); eo_do(data->light_node, - evas_3d_node_light_set(data->light), - evas_3d_node_position_set(50.0, 50.0, 70.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 15.0, 0.0, -5.0, - EVAS_3D_SPACE_PARENT, 0.0, 0.0, 1.0)); - eo_do(data->root_node, evas_3d_node_member_add(data->light_node)); + evas_canvas3d_node_light_set(data->light), + evas_canvas3d_node_position_set(50.0, 50.0, 70.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 15.0, 0.0, -5.0, + EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 1.0)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->light_node)); } static void @@ -494,15 +494,15 @@ _scene_setup(Scene_Data *data) { data->init = EINA_FALSE; - data->scene = eo_add(EVAS_3D_SCENE_CLASS, evas); + data->scene = eo_add(EVAS_CANVAS3D_SCENE_CLASS, evas); eo_do(data->scene, - evas_3d_scene_size_set(WIDTH, HEIGHT); - evas_3d_scene_background_color_set(BG_COLOR, 1)); + evas_canvas3d_scene_size_set(WIDTH, HEIGHT); + evas_canvas3d_scene_background_color_set(BG_COLOR, 1)); data->root_node = - eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_NODE)); + eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); _camera_setup(data); @@ -518,18 +518,18 @@ _scene_setup(Scene_Data *data) _billboard_setup(data); eo_do(data->root_node, - evas_3d_node_member_add(data->sphere.node), - evas_3d_node_member_add(data->cube.node), - evas_3d_node_member_add(data->cylinder.node), - evas_3d_node_member_add(data->square.node), - evas_3d_node_member_add(data->model.node), - evas_3d_node_member_add(data->cone.node), - evas_3d_node_member_add(data->fence.node)); + evas_canvas3d_node_member_add(data->sphere.node), + evas_canvas3d_node_member_add(data->cube.node), + evas_canvas3d_node_member_add(data->cylinder.node), + evas_canvas3d_node_member_add(data->square.node), + evas_canvas3d_node_member_add(data->model.node), + evas_canvas3d_node_member_add(data->cone.node), + evas_canvas3d_node_member_add(data->fence.node)); eo_do(data->scene, - evas_3d_scene_root_node_set(data->root_node), - evas_3d_scene_camera_node_set(data->camera_node), - evas_3d_scene_shadows_enable_set(EINA_TRUE)); + evas_canvas3d_scene_root_node_set(data->root_node), + evas_canvas3d_scene_camera_node_set(data->camera_node), + evas_canvas3d_scene_shadows_enable_set(EINA_TRUE)); } static void @@ -540,66 +540,66 @@ _on_key_down(void *data EINA_UNUSED, Evas *e EINA_UNUSED, Evas_Object *eo EINA_U if (!strcmp("w", ev->key)) { Evas_Real x, y, z; - eo_do(choosed_node, evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x, &y, &z)); - eo_do(choosed_node, evas_3d_node_position_set(x, y + STEP, z)); + eo_do(choosed_node, evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x, &y, &z)); + eo_do(choosed_node, evas_canvas3d_node_position_set(x, y + STEP, z)); } else if(!strcmp("s", ev->key)) { Evas_Real x, y, z; - eo_do(choosed_node, evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x, &y, &z)); - eo_do(choosed_node, evas_3d_node_position_set(x, y - STEP, z)); + eo_do(choosed_node, evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x, &y, &z)); + eo_do(choosed_node, evas_canvas3d_node_position_set(x, y - STEP, z)); } else if(!strcmp("a", ev->key)) { Evas_Real x, y, z; - eo_do(choosed_node, evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x, &y, &z)); - eo_do(choosed_node, evas_3d_node_position_set(x - STEP, y, z)); + eo_do(choosed_node, evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x, &y, &z)); + eo_do(choosed_node, evas_canvas3d_node_position_set(x - STEP, y, z)); } else if(!strcmp("d", ev->key)) { Evas_Real x, y, z; - eo_do(choosed_node, evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x, &y, &z)); - eo_do(choosed_node, evas_3d_node_position_set(x + STEP, y, z)); + eo_do(choosed_node, evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x, &y, &z)); + eo_do(choosed_node, evas_canvas3d_node_position_set(x + STEP, y, z)); } else if(!strcmp("q", ev->key)) { Evas_Real x, y, z; - eo_do(choosed_node, evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x, &y, &z)); - eo_do(choosed_node, evas_3d_node_position_set(x, y, z - STEP)); + eo_do(choosed_node, evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x, &y, &z)); + eo_do(choosed_node, evas_canvas3d_node_position_set(x, y, z - STEP)); } else if(!strcmp("e", ev->key)) { Evas_Real x, y, z; - eo_do(choosed_node, evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x, &y, &z)); - eo_do(choosed_node, evas_3d_node_position_set(x, y, z + STEP)); + eo_do(choosed_node, evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x, &y, &z)); + eo_do(choosed_node, evas_canvas3d_node_position_set(x, y, z + STEP)); } else if(!strcmp("1", ev->key)) { - eo_do(scene->root_node, evas_3d_node_member_del(scene->model.node)); - eo_do(scene->root_node, evas_3d_node_member_add(scene->billboard.node)); + eo_do(scene->root_node, evas_canvas3d_node_member_del(scene->model.node)); + eo_do(scene->root_node, evas_canvas3d_node_member_add(scene->billboard.node)); } else if(!strcmp("2", ev->key)) { - eo_do(scene->root_node, evas_3d_node_member_add(scene->model.node)); - eo_do(scene->root_node, evas_3d_node_member_del(scene->billboard.node)); + eo_do(scene->root_node, evas_canvas3d_node_member_add(scene->model.node)); + eo_do(scene->root_node, evas_canvas3d_node_member_del(scene->billboard.node)); } else if(!strcmp("Up", ev->key)) { Evas_Real x, y, z; - eo_do(scene->camera_node, evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x, &y, &z)); - eo_do(scene->camera_node, evas_3d_node_position_set(x, y, z + STEP)); + eo_do(scene->camera_node, evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x, &y, &z)); + eo_do(scene->camera_node, evas_canvas3d_node_position_set(x, y, z + STEP)); } else if(!strcmp("Down", ev->key)) { Evas_Real x, y, z; - eo_do(scene->camera_node, evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x, &y, &z)); - eo_do(scene->camera_node, evas_3d_node_position_set(x, y, z - STEP)); + eo_do(scene->camera_node, evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x, &y, &z)); + eo_do(scene->camera_node, evas_canvas3d_node_position_set(x, y, z - STEP)); } else if (!strcmp("i", ev->key)) { scene->init = !scene->init; - eo_do(scene->model.node, evas_3d_node_position_set(0.0, 0.0, 0.0)); - eo_do(scene->billboard.node, evas_3d_node_position_set(0.0, 2.0, 0.0)); + eo_do(scene->model.node, evas_canvas3d_node_position_set(0.0, 0.0, 0.0)); + eo_do(scene->billboard.node, evas_canvas3d_node_position_set(0.0, 2.0, 0.0)); } else { @@ -610,31 +610,31 @@ _on_key_down(void *data EINA_UNUSED, Evas *e EINA_UNUSED, Evas_Object *eo EINA_U static void _init(Scene_Data *data) { Eina_List *meshes = NULL, *l; - Evas_3D_Mesh *m; - eo_do(data->sphere.node, meshes = (Eina_List *)evas_3d_node_mesh_list_get()); + Evas_Canvas3D_Mesh *m; + eo_do(data->sphere.node, meshes = (Eina_List *)evas_canvas3d_node_mesh_list_get()); EINA_LIST_FOREACH(meshes, l, m) { - eo_do(m, evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG)); + eo_do(m, evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG)); } - eo_do(data->cube.node, meshes = (Eina_List *)evas_3d_node_mesh_list_get()); + eo_do(data->cube.node, meshes = (Eina_List *)evas_canvas3d_node_mesh_list_get()); EINA_LIST_FOREACH(meshes, l, m) { - eo_do(m, evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG)); + eo_do(m, evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG)); } - eo_do(data->cylinder.node, meshes = (Eina_List *)evas_3d_node_mesh_list_get()); + eo_do(data->cylinder.node, meshes = (Eina_List *)evas_canvas3d_node_mesh_list_get()); EINA_LIST_FOREACH(meshes, l, m) { - eo_do(m, evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG)); + eo_do(m, evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG)); } - eo_do(data->model.node, meshes = (Eina_List *)evas_3d_node_mesh_list_get()); + eo_do(data->model.node, meshes = (Eina_List *)evas_canvas3d_node_mesh_list_get()); EINA_LIST_FOREACH(meshes, l, m) { - eo_do(m, evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG)); + eo_do(m, evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG)); } - eo_do(data->cone.node, meshes = (Eina_List *)evas_3d_node_mesh_list_get()); + eo_do(data->cone.node, meshes = (Eina_List *)evas_canvas3d_node_mesh_list_get()); EINA_LIST_FOREACH(meshes, l, m) { - eo_do(m, evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG)); + eo_do(m, evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG)); } } @@ -643,15 +643,15 @@ _on_mouse_down(void *data, Evas *e EINA_UNUSED, Evas_Object *eo EINA_UNUSED, voi { Scene_Data *d = (Scene_Data *)data; Evas_Event_Mouse_Down *ev = event_info; - Evas_3D_Node *n = NULL; - Evas_3D_Mesh *m = NULL; + Evas_Canvas3D_Node *n = NULL; + Evas_Canvas3D_Mesh *m = NULL; Evas_Real s, t; if (ev->button == 3) { _init(d); return; } - eo_do(d->scene, evas_3d_scene_pick(ev->canvas.x, ev->canvas.y, &n, &m, &s, &t)); + eo_do(d->scene, evas_canvas3d_scene_pick(ev->canvas.x, ev->canvas.y, &n, &m, &s, &t)); } int @@ -698,14 +698,14 @@ main(void) nodes2 = eina_list_append(nodes2, data.cone.node); /*Set callbacks*/ - eo_do(data.cube.node, eo_event_callback_add(EVAS_3D_OBJECT_EVENT_CLICKED, _cb_clicked, NULL)); - eo_do(data.cube.node, eo_event_callback_add(EVAS_3D_OBJECT_EVENT_COLLISION, _cb_collision, nodes2)); + eo_do(data.cube.node, eo_event_callback_add(EVAS_CANVAS3D_OBJECT_EVENT_CLICKED, _cb_clicked, NULL)); + eo_do(data.cube.node, eo_event_callback_add(EVAS_CANVAS3D_OBJECT_EVENT_COLLISION, _cb_collision, nodes2)); - eo_do(data.model.node, eo_event_callback_add(EVAS_3D_OBJECT_EVENT_CLICKED, _cb_clicked, NULL)); - eo_do(data.model.node, eo_event_callback_add(EVAS_3D_OBJECT_EVENT_COLLISION, _cb_collision, nodes1)); + eo_do(data.model.node, eo_event_callback_add(EVAS_CANVAS3D_OBJECT_EVENT_CLICKED, _cb_clicked, NULL)); + eo_do(data.model.node, eo_event_callback_add(EVAS_CANVAS3D_OBJECT_EVENT_COLLISION, _cb_collision, nodes1)); - eo_do(data.billboard.node, eo_event_callback_add(EVAS_3D_OBJECT_EVENT_CLICKED, _cb_clicked, NULL)); - eo_do(data.billboard.node, eo_event_callback_add(EVAS_3D_OBJECT_EVENT_COLLISION, _cb_collision, nodes1)); + eo_do(data.billboard.node, eo_event_callback_add(EVAS_CANVAS3D_OBJECT_EVENT_CLICKED, _cb_clicked, NULL)); + eo_do(data.billboard.node, eo_event_callback_add(EVAS_CANVAS3D_OBJECT_EVENT_COLLISION, _cb_collision, nodes1)); evas_object_event_callback_add(image, EVAS_CALLBACK_MOUSE_DOWN, _on_mouse_down, &data); evas_object_event_callback_add(image, EVAS_CALLBACK_KEY_DOWN, _on_key_down, &data); diff --git a/src/examples/evas/resources/models/mesh_for_mmap.eet b/src/examples/evas/resources/models/mesh_for_mmap.eet Binary files differindex 53c2f777e8..1be67146cd 100644 --- a/src/examples/evas/resources/models/mesh_for_mmap.eet +++ b/src/examples/evas/resources/models/mesh_for_mmap.eet diff --git a/src/examples/evas/shooter/evas-3d-shooter-header.c b/src/examples/evas/shooter/evas-3d-shooter-header.c index 1a7b2297b1..988f85dc8e 100644 --- a/src/examples/evas/shooter/evas-3d-shooter-header.c +++ b/src/examples/evas/shooter/evas-3d-shooter-header.c @@ -12,9 +12,9 @@ evas_box3_set(Box3 *box, Evas_Real x0, Evas_Real y0, Evas_Real z0, Evas_Real x1, } void -_scale(Evas_3D_Node *node, Evas_Real scale) +_scale(Evas_Canvas3D_Node *node, Evas_Real scale) { - eo_do(node, evas_3d_node_scale_set(1.0 * scale, 1.0 * scale, 1.0 * scale)); + eo_do(node, evas_canvas3d_node_scale_set(1.0 * scale, 1.0 * scale, 1.0 * scale)); } float @@ -26,50 +26,50 @@ _distance(float x1, float z1, float x2, float z2) void _camera_setup(Scene_Data *data) { - data->camera = eo_add(EVAS_3D_CAMERA_CLASS, evas); + data->camera = eo_add(EVAS_CANVAS3D_CAMERA_CLASS, evas); eo_do(data->camera, - evas_3d_camera_projection_perspective_set(65.0, 1.0, 1.0, 300.0)); + evas_canvas3d_camera_projection_perspective_set(65.0, 1.0, 1.0, 300.0)); - data->mediator_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_NODE)); - data->camera_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_CAMERA)); + data->mediator_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); + data->camera_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_CAMERA)); - eo_do(data->root_node, evas_3d_node_member_add(data->mediator_node)); - eo_do(data->mediator_node, evas_3d_node_member_add(data->camera_node)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->mediator_node)); + eo_do(data->mediator_node, evas_canvas3d_node_member_add(data->camera_node)); eo_do(data->camera_node, - evas_3d_node_camera_set(data->camera), - evas_3d_node_position_set(20.0, 80.0, 30.0); - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + evas_canvas3d_node_camera_set(data->camera), + evas_canvas3d_node_position_set(20.0, 80.0, 30.0); + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); } void _light_setup(Scene_Data *data) { - data->light = eo_add(EVAS_3D_LIGHT_CLASS, evas); + data->light = eo_add(EVAS_CANVAS3D_LIGHT_CLASS, evas); eo_do(data->light, - evas_3d_light_ambient_set(0.2, 0.2, 0.2, 1.0), - evas_3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), - evas_3d_light_specular_set(0.2, 0.2, 0.2, 1.0), - evas_3d_light_projection_perspective_set(100.0, 1.0, 1.0, 200.0)); + evas_canvas3d_light_ambient_set(0.2, 0.2, 0.2, 1.0), + evas_canvas3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_specular_set(0.2, 0.2, 0.2, 1.0), + evas_canvas3d_light_projection_perspective_set(100.0, 1.0, 1.0, 200.0)); - data->light_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_LIGHT)); + data->light_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_LIGHT)); eo_do(data->light_node, - evas_3d_node_light_set(data->light), - evas_3d_node_position_set(-30.0, 70.0, 0.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_3D_SPACE_PARENT, 0.0, 0.0, 1.0)); + evas_canvas3d_node_light_set(data->light), + evas_canvas3d_node_position_set(-30.0, 70.0, 0.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 1.0)); - eo_do(data->root_node, evas_3d_node_member_add(data->light_node)); + eo_do(data->root_node, evas_canvas3d_node_member_add(data->light_node)); } -Eina_Bool _mesh_aabb(Evas_3D_Mesh **mesh, Scene_Data *scene, int index) +Eina_Bool _mesh_aabb(Evas_Canvas3D_Mesh **mesh, Scene_Data *scene, int index) { Evas_Real x0, y0, z0, x1, y1, z1, r; - Evas_3D_Node *node = NULL; + Evas_Canvas3D_Node *node = NULL; if (fmod(index, 12) == 0) node = scene->mesh_node_warrior; @@ -97,14 +97,14 @@ Eina_Bool _mesh_aabb(Evas_3D_Mesh **mesh, Scene_Data *scene, int index) node = scene->mesh_node_snake; eo_do(node, - evas_3d_node_bounding_sphere_get(&x0, &y0, &z0, &r)); + evas_canvas3d_node_bounding_sphere_get(&x0, &y0, &z0, &r)); eo_do(scene->mesh_node_ball, - evas_3d_node_scale_set(r, r, r), - evas_3d_node_position_set(x0, y0, z0)); + evas_canvas3d_node_scale_set(r, r, r), + evas_canvas3d_node_position_set(x0, y0, z0)); eo_do(node, - evas_3d_node_bounding_box_get(&x0, &y0, &z0, &x1, &y1, &z1)); + evas_canvas3d_node_bounding_box_get(&x0, &y0, &z0, &x1, &y1, &z1)); float vertixes[] = { @@ -152,9 +152,9 @@ Eina_Bool _mesh_aabb(Evas_3D_Mesh **mesh, Scene_Data *scene, int index) if (*mesh) { eo_do(*mesh, - evas_3d_mesh_vertex_assembly_set(EVAS_3D_VERTEX_ASSEMBLY_LINES), - evas_3d_mesh_frame_vertex_data_copy_set(0, EVAS_3D_VERTEX_POSITION, 6 * sizeof(float), &vertixes[ 0]), - evas_3d_mesh_index_data_copy_set(EVAS_3D_INDEX_FORMAT_UNSIGNED_SHORT, 48, &indixes[0])); + evas_canvas3d_mesh_vertex_assembly_set(EVAS_CANVAS3D_VERTEX_ASSEMBLY_LINES), + evas_canvas3d_mesh_frame_vertex_data_copy_set(0, EVAS_CANVAS3D_VERTEX_POSITION, 6 * sizeof(float), &vertixes[ 0]), + evas_canvas3d_mesh_index_data_copy_set(EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_SHORT, 48, &indixes[0])); return EINA_TRUE; } @@ -179,12 +179,12 @@ void _on_canvas_resize(Ecore_Evas *ee) evas_object_move(image, 0, 0); } -Eina_Bool _horizontal_circle_resolution(Evas_3D_Node *node, Evas_Real x, Evas_Real z, Evas_Real r) +Eina_Bool _horizontal_circle_resolution(Evas_Canvas3D_Node *node, Evas_Real x, Evas_Real z, Evas_Real r) { Evas_Real x0, y0, z0, x1, y1, z1; eo_do(node, - evas_3d_node_bounding_box_get(&x0, &y0, &z0, &x1, &y1, &z1)); + evas_canvas3d_node_bounding_box_get(&x0, &y0, &z0, &x1, &y1, &z1)); if (((x0 - x) * (x0 - x)) + ((z0 - z) * (z0 - z)) < r * r) return EINA_FALSE; if (((x0 - x) * (x0 - x)) + ((z1 - z) * (z1 - z)) < r * r) return EINA_FALSE; @@ -203,14 +203,14 @@ Eina_Bool _horizontal_circle_resolution(Evas_3D_Node *node, Evas_Real x, Evas_Re return EINA_TRUE; } -Eina_Bool _horizontal_circle_object_resolution(Evas_3D_Node *node, Evas_3D_Node *node2, Evas_Real r) +Eina_Bool _horizontal_circle_object_resolution(Evas_Canvas3D_Node *node, Evas_Canvas3D_Node *node2, Evas_Real r) { Evas_Real x0, y0, z0, x1, y1, z1, x, y, z; eo_do(node2, - evas_3d_node_position_get(EVAS_3D_SPACE_WORLD, &x, &y, &z)); + evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_WORLD, &x, &y, &z)); eo_do(node, - evas_3d_node_bounding_box_get(&x0, &y0, &z0, &x1, &y1, &z1)); + evas_canvas3d_node_bounding_box_get(&x0, &y0, &z0, &x1, &y1, &z1)); if (((x0 - x) * (x0 - x)) + ((z0 - z) * (z0 - z)) < r * r) return EINA_FALSE; if (((x0 - x) * (x0 - x)) + ((z1 - z) * (z1 - z)) < r * r) return EINA_FALSE; @@ -229,24 +229,24 @@ Eina_Bool _horizontal_circle_object_resolution(Evas_3D_Node *node, Evas_3D_Node return EINA_TRUE; } -Eina_Bool _horizontal_circle_position_resolution(Evas_3D_Node *node, Evas_Real x, Evas_Real z, Evas_Real r) +Eina_Bool _horizontal_circle_position_resolution(Evas_Canvas3D_Node *node, Evas_Real x, Evas_Real z, Evas_Real r) { Evas_Real x0, y0, z0; eo_do(node, - evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x0, &y0, &z0)); + evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x0, &y0, &z0)); if (((x0 - x) * (x0 - x)) + ((z0 - z) * (z0 - z)) < r * r) return EINA_FALSE; return EINA_TRUE; } -Eina_Bool _horizontal_position_resolution(Evas_3D_Node *node, Evas_Real x, Evas_Real z) +Eina_Bool _horizontal_position_resolution(Evas_Canvas3D_Node *node, Evas_Real x, Evas_Real z) { Evas_Real x0, y0, z0, x1, y1, z1; eo_do(node, - evas_3d_node_bounding_box_get(&x0, &y0, &z0, &x1, &y1, &z1)); + evas_canvas3d_node_bounding_box_get(&x0, &y0, &z0, &x1, &y1, &z1)); if ((x > x0) && (x < x1) && (z > z0) && (z < z1)) return EINA_FALSE; @@ -261,13 +261,13 @@ Eina_Bool _horizontal_position_resolution(Evas_3D_Node *node, Evas_Real x, Evas_ } /* Is actual for this example only */ -Eina_Bool _horizontal_object_resolution(Evas_3D_Node *node, Evas_Real x1, Evas_Real z1, Evas_Real x2, +Eina_Bool _horizontal_object_resolution(Evas_Canvas3D_Node *node, Evas_Real x1, Evas_Real z1, Evas_Real x2, Evas_Real z2, Evas_Real x_move, Evas_Real z_move) { Evas_Real x3, y3, z3, x4, y4, z4; eo_do(node, - evas_3d_node_bounding_box_get(&x3, &y3, &z3, &x4, &y4, &z4)); + evas_canvas3d_node_bounding_box_get(&x3, &y3, &z3, &x4, &y4, &z4)); if ((x4 + x_move < x1) || (x4 + x_move > x2) || (z4 + z_move < z1) || (z4 + z_move > z2)) @@ -277,7 +277,7 @@ Eina_Bool _horizontal_object_resolution(Evas_3D_Node *node, Evas_Real x1, Evas_R return EINA_TRUE; } -Eina_Bool _horizontal_frame_resolution(Evas_3D_Node *node, Evas_Real x1, Evas_Real z1, Evas_Real x2, +Eina_Bool _horizontal_frame_resolution(Evas_Canvas3D_Node *node, Evas_Real x1, Evas_Real z1, Evas_Real x2, Evas_Real z2, Evas_Real *x_move, Evas_Real *z_move) { Evas_Real x3, y3, z3, x4, y4, z4; @@ -286,7 +286,7 @@ Eina_Bool _horizontal_frame_resolution(Evas_3D_Node *node, Evas_Real x1, Evas_Re *z_move = 0; eo_do(node, - evas_3d_node_bounding_box_get(&x3, &y3, &z3, &x4, &y4, &z4)); + evas_canvas3d_node_bounding_box_get(&x3, &y3, &z3, &x4, &y4, &z4)); if (x3 < x1) *x_move = x1 - x3; @@ -364,13 +364,13 @@ _set_ball(Eo *mesh, int p) _generate_square_grid(indices, p); - eo_do(mesh, evas_3d_mesh_vertex_count_set(vcount), - evas_3d_mesh_frame_add(0); - evas_3d_mesh_frame_vertex_data_copy_set(0, EVAS_3D_VERTEX_POSITION, + eo_do(mesh, evas_canvas3d_mesh_vertex_count_set(vcount), + evas_canvas3d_mesh_frame_add(0); + evas_canvas3d_mesh_frame_vertex_data_copy_set(0, EVAS_CANVAS3D_VERTEX_POSITION, sizeof(vec3), &vertices[0]); - evas_3d_mesh_frame_vertex_data_copy_set(0, EVAS_3D_VERTEX_NORMAL, + evas_canvas3d_mesh_frame_vertex_data_copy_set(0, EVAS_CANVAS3D_VERTEX_NORMAL, sizeof(vec3), &normals[0]); - evas_3d_mesh_index_data_copy_set(EVAS_3D_INDEX_FORMAT_UNSIGNED_SHORT, + evas_canvas3d_mesh_index_data_copy_set(EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_SHORT, icount , &indices[0])); free(vertices); diff --git a/src/examples/evas/shooter/evas-3d-shooter-header.h b/src/examples/evas/shooter/evas-3d-shooter-header.h index 67b912e42e..235c85b873 100644 --- a/src/examples/evas/shooter/evas-3d-shooter-header.h +++ b/src/examples/evas/shooter/evas-3d-shooter-header.h @@ -188,7 +188,7 @@ void evas_box3_empty_set(Box3 *box); void evas_box3_set(Box3 *box, Evas_Real x0, Evas_Real y0, Evas_Real z0, Evas_Real x1, Evas_Real y1, Evas_Real z1); -void _scale(Evas_3D_Node *node, Evas_Real scale); +void _scale(Evas_Canvas3D_Node *node, Evas_Real scale); float _distance(float x1, float z1, float x2, float z2); @@ -196,24 +196,24 @@ void _camera_setup(Scene_Data *data); void _light_setup(Scene_Data *data); -Eina_Bool _mesh_aabb(Evas_3D_Mesh **mesh, Scene_Data *scene, int index); +Eina_Bool _mesh_aabb(Evas_Canvas3D_Mesh **mesh, Scene_Data *scene, int index); void _on_delete(Ecore_Evas *ee EINA_UNUSED); void _on_canvas_resize(Ecore_Evas *ee); -Eina_Bool _horizontal_circle_resolution(Evas_3D_Node *node, Evas_Real x, Evas_Real z, Evas_Real r); +Eina_Bool _horizontal_circle_resolution(Evas_Canvas3D_Node *node, Evas_Real x, Evas_Real z, Evas_Real r); -Eina_Bool _horizontal_circle_position_resolution(Evas_3D_Node *node, Evas_Real x, Evas_Real z, Evas_Real r); +Eina_Bool _horizontal_circle_position_resolution(Evas_Canvas3D_Node *node, Evas_Real x, Evas_Real z, Evas_Real r); -Eina_Bool _horizontal_circle_object_resolution(Evas_3D_Node *node, Evas_3D_Node *node2, Evas_Real r); +Eina_Bool _horizontal_circle_object_resolution(Evas_Canvas3D_Node *node, Evas_Canvas3D_Node *node2, Evas_Real r); -Eina_Bool _horizontal_position_resolution(Evas_3D_Node *node, Evas_Real x, Evas_Real z); +Eina_Bool _horizontal_position_resolution(Evas_Canvas3D_Node *node, Evas_Real x, Evas_Real z); -Eina_Bool _horizontal_object_resolution(Evas_3D_Node *node, Evas_Real x1, Evas_Real z1, Evas_Real x2, +Eina_Bool _horizontal_object_resolution(Evas_Canvas3D_Node *node, Evas_Real x1, Evas_Real z1, Evas_Real x2, Evas_Real z2, Evas_Real x_move, Evas_Real z_move); -Eina_Bool _horizontal_frame_resolution(Evas_3D_Node *node, Evas_Real x1, Evas_Real z1, Evas_Real x2, +Eina_Bool _horizontal_frame_resolution(Evas_Canvas3D_Node *node, Evas_Real x1, Evas_Real z1, Evas_Real x2, Evas_Real z2, Evas_Real *x_move, Evas_Real *z_move); void _set_ball(Eo *mesh, int p); diff --git a/src/examples/evas/shooter/evas-3d-shooter-macros.h b/src/examples/evas/shooter/evas-3d-shooter-macros.h index 915afeb9d6..2eb3282602 100644 --- a/src/examples/evas/shooter/evas-3d-shooter-macros.h +++ b/src/examples/evas/shooter/evas-3d-shooter-macros.h @@ -70,70 +70,70 @@ typedef struct _vec2 #define ENABLE_FOG(mesh) \ - eo_do(mesh, evas_3d_mesh_fog_enable_set(EINA_TRUE), \ - evas_3d_mesh_fog_color_set(FOG_COLOR, FOG_FACTOR)); + eo_do(mesh, evas_canvas3d_mesh_fog_enable_set(EINA_TRUE), \ + evas_canvas3d_mesh_fog_color_set(FOG_COLOR, FOG_FACTOR)); #define DISABLE_FOG(mesh) \ - eo_do(mesh, evas_3d_mesh_fog_enable_set(EINA_FALSE)); + eo_do(mesh, evas_canvas3d_mesh_fog_enable_set(EINA_FALSE)); #define ENABLE_NORMAL(mesh) \ - eo_do(mesh, evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_NORMAL_MAP)); + eo_do(mesh, evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_NORMAL_MAP)); #define DISABLE_NORMAL(mesh) \ - eo_do(mesh, evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG)); + eo_do(mesh, evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG)); #define SETUP_MESH(Object, Name, a, d, s) \ - data->material_##Object = eo_add(EVAS_3D_MATERIAL_CLASS, evas); \ + data->material_##Object = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); \ \ eo_do(data->material_##Object, \ - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), \ - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), \ - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), \ - evas_3d_material_enable_set(EVAS_3D_MATERIAL_NORMAL, EINA_TRUE), \ - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, a, a, a, 1.0), \ - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, d, d, d, 1.0), \ - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, s, s, s, 1.0), \ - evas_3d_material_shininess_set(50.0)); \ + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), \ + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), \ + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), \ + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_NORMAL, EINA_TRUE), \ + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, a, a, a, 1.0), \ + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, d, d, d, 1.0), \ + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, s, s, s, 1.0), \ + evas_canvas3d_material_shininess_set(50.0)); \ \ - data->mesh_##Name = eo_add(EVAS_3D_MESH_CLASS, evas); \ + data->mesh_##Name = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); \ \ eo_do(data->mesh_##Name, \ - evas_3d_mesh_frame_add(0), \ - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_DIFFUSE), \ - evas_3d_mesh_vertex_assembly_set(EVAS_3D_VERTEX_ASSEMBLY_TRIANGLES), \ - evas_3d_mesh_frame_material_set(0, data->material_##Object)); + evas_canvas3d_mesh_frame_add(0), \ + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_DIFFUSE), \ + evas_canvas3d_mesh_vertex_assembly_set(EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLES), \ + evas_canvas3d_mesh_frame_material_set(0, data->material_##Object)); #define SETUP_MESH_NODE(Name) \ - data->mesh_node_##Name = eo_add(EVAS_3D_NODE_CLASS, evas, \ - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); \ + data->mesh_node_##Name = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, \ + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); \ \ eo_do(data->mesh_node_##Name, \ - evas_3d_node_mesh_add(data->mesh_##Name)); + evas_canvas3d_node_mesh_add(data->mesh_##Name)); #define MATERIAL_TEXTURE_SET(Object, Name, file, image) \ eo_do(data->mesh_##Name, \ efl_file_set(file, NULL), \ - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG), \ - evas_3d_mesh_frame_material_set(0, data->material_##Object)); \ + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG), \ + evas_canvas3d_mesh_frame_material_set(0, data->material_##Object)); \ \ - data->texture_diffuse_##Object = eo_add(EVAS_3D_TEXTURE_CLASS, evas); \ + data->texture_diffuse_##Object = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); \ \ eo_do(data->texture_diffuse_##Object, \ - evas_3d_texture_file_set(image, NULL), \ - evas_3d_texture_filter_set(EVAS_3D_TEXTURE_FILTER_NEAREST, \ - EVAS_3D_TEXTURE_FILTER_NEAREST), \ - evas_3d_texture_wrap_set(EVAS_3D_WRAP_MODE_REPEAT, EVAS_3D_WRAP_MODE_REPEAT)); \ + evas_canvas3d_texture_file_set(image, NULL), \ + evas_canvas3d_texture_filter_set(EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST, \ + EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST), \ + evas_canvas3d_texture_wrap_set(EVAS_CANVAS3D_WRAP_MODE_REPEAT, EVAS_CANVAS3D_WRAP_MODE_REPEAT)); \ \ eo_do(data->material_##Object, \ - evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, \ + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, \ data->texture_diffuse_##Object), \ - evas_3d_material_texture_set(EVAS_3D_MATERIAL_AMBIENT, \ + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, \ data->texture_diffuse_##Object)); @@ -146,64 +146,64 @@ typedef struct _vec2 pos_count = 10; \ } \ eo_do(data->mesh_##Name, \ - evas_3d_mesh_vertex_count_set(v_count), \ - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_POSITION, \ + evas_canvas3d_mesh_vertex_count_set(v_count), \ + evas_canvas3d_mesh_frame_vertex_data_set(0, EVAS_CANVAS3D_VERTEX_POSITION, \ pos_count * sizeof(float), &vertex1[ 0]), \ - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_NORMAL, \ + evas_canvas3d_mesh_frame_vertex_data_set(0, EVAS_CANVAS3D_VERTEX_NORMAL, \ pos_count * sizeof(float), &vertex1[ 3]), \ - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_COLOR, \ + evas_canvas3d_mesh_frame_vertex_data_set(0, EVAS_CANVAS3D_VERTEX_COLOR, \ pos_count * sizeof(float), &vertex1[ 6]), \ - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_TEXCOORD, \ + evas_canvas3d_mesh_frame_vertex_data_set(0, EVAS_CANVAS3D_VERTEX_TEXCOORD, \ textcoords_count * sizeof(float), vertex2), \ - evas_3d_mesh_index_data_set(EVAS_3D_INDEX_FORMAT_UNSIGNED_SHORT, \ + evas_canvas3d_mesh_index_data_set(EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_SHORT, \ i_count, &index[0]), \ - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_NORMAL_MAP)); \ + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_NORMAL_MAP)); \ \ - data->texture_diffuse_##Object = eo_add(EVAS_3D_TEXTURE_CLASS, evas); \ + data->texture_diffuse_##Object = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); \ \ eo_do(data->texture_diffuse_##Object, \ - evas_3d_texture_file_set(image, NULL), \ - evas_3d_texture_filter_set(EVAS_3D_TEXTURE_FILTER_NEAREST, \ - EVAS_3D_TEXTURE_FILTER_NEAREST), \ - evas_3d_texture_wrap_set(EVAS_3D_WRAP_MODE_REPEAT, EVAS_3D_WRAP_MODE_REPEAT)); \ + evas_canvas3d_texture_file_set(image, NULL), \ + evas_canvas3d_texture_filter_set(EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST, \ + EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST), \ + evas_canvas3d_texture_wrap_set(EVAS_CANVAS3D_WRAP_MODE_REPEAT, EVAS_CANVAS3D_WRAP_MODE_REPEAT)); \ \ eo_do(data->material_##Object, \ - evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, \ + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, \ data->texture_diffuse_##Object), \ - evas_3d_material_texture_set(EVAS_3D_MATERIAL_AMBIENT, \ + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, \ data->texture_diffuse_##Object)); #define NORMAL_SET(Object, Name, normal) \ - data->texture_normal_##Object = eo_add(EVAS_3D_TEXTURE_CLASS, evas); \ + data->texture_normal_##Object = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); \ \ eo_do(data->texture_normal_##Object, \ - evas_3d_texture_file_set(normal, NULL), \ - evas_3d_texture_filter_set(EVAS_3D_TEXTURE_FILTER_NEAREST, \ - EVAS_3D_TEXTURE_FILTER_NEAREST), \ - evas_3d_texture_wrap_set(EVAS_3D_WRAP_MODE_REPEAT, EVAS_3D_WRAP_MODE_REPEAT)); \ + evas_canvas3d_texture_file_set(normal, NULL), \ + evas_canvas3d_texture_filter_set(EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST, \ + EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST), \ + evas_canvas3d_texture_wrap_set(EVAS_CANVAS3D_WRAP_MODE_REPEAT, EVAS_CANVAS3D_WRAP_MODE_REPEAT)); \ \ eo_do(data->material_##Object, \ - evas_3d_material_texture_set(EVAS_3D_MATERIAL_NORMAL, \ + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_NORMAL, \ data->texture_normal_##Object)); \ \ eo_do(data->mesh_##Name, \ - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_NORMAL_MAP)); + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_NORMAL_MAP)); #define SPHERE_SET(Name) \ eo_do(data->mesh_##Name, \ - evas_3d_mesh_vertex_count_set(vertex_count), \ - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_POSITION, \ + evas_canvas3d_mesh_vertex_count_set(vertex_count), \ + evas_canvas3d_mesh_frame_vertex_data_set(0, EVAS_CANVAS3D_VERTEX_POSITION, \ sizeof(vertex), &vertices[0].position), \ - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_NORMAL, \ + evas_canvas3d_mesh_frame_vertex_data_set(0, EVAS_CANVAS3D_VERTEX_NORMAL, \ sizeof(vertex), &vertices[0].normal), \ - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_TANGENT, \ + evas_canvas3d_mesh_frame_vertex_data_set(0, EVAS_CANVAS3D_VERTEX_TANGENT, \ sizeof(vertex), &vertices[0].tangent), \ - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_COLOR, \ + evas_canvas3d_mesh_frame_vertex_data_set(0, EVAS_CANVAS3D_VERTEX_COLOR, \ sizeof(vertex), &vertices[0].color); \ - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_TEXCOORD, \ + evas_canvas3d_mesh_frame_vertex_data_set(0, EVAS_CANVAS3D_VERTEX_TEXCOORD, \ sizeof(vertex), &vertices[0].texcoord), \ - evas_3d_mesh_index_data_set(EVAS_3D_INDEX_FORMAT_UNSIGNED_SHORT, \ + evas_canvas3d_mesh_index_data_set(EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_SHORT, \ index_count, &indices[0])); #define TEXTCOORDS_SET(Name, fb1, fb2, lr1, lr2, tb1, tb2) \ diff --git a/src/examples/evas/shooter/evas-3d-shooter.c b/src/examples/evas/shooter/evas-3d-shooter.c index a7caef17ad..055407a011 100644 --- a/src/examples/evas/shooter/evas-3d-shooter.c +++ b/src/examples/evas/shooter/evas-3d-shooter.c @@ -16,7 +16,7 @@ #include "evas-3d-shooter-header.h" -Evas_3D_Scene *global_scene = NULL; +Evas_Canvas3D_Scene *global_scene = NULL; Ecore_Evas *ecore_evas = NULL; static float angle_camera = 0.0f; static float angle_eagle = 180.0f; @@ -149,7 +149,7 @@ _key_down(void *data, if (space_move == 0.0) { eo_do(scene->mesh_node_tommy, - evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x, &y, &z)); + evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x, &y, &z)); old_space_position = y; space_move = JUMP; } @@ -168,18 +168,18 @@ _key_down(void *data, { scene->blending = EINA_TRUE; eo_do(scene->texture_diffuse_carpet, - evas_3d_texture_file_set(gazebo_t_trans_path, NULL)); + evas_canvas3d_texture_file_set(gazebo_t_trans_path, NULL)); eo_do(scene->mesh_carpet, - evas_3d_mesh_blending_enable_set(EINA_TRUE), - evas_3d_mesh_blending_func_set(EVAS_3D_BLEND_SRC_ALPHA, EVAS_3D_BLEND_ONE_MINUS_SRC_ALPHA)); + evas_canvas3d_mesh_blending_enable_set(EINA_TRUE), + evas_canvas3d_mesh_blending_func_set(EVAS_CANVAS3D_BLEND_SRC_ALPHA, EVAS_CANVAS3D_BLEND_ONE_MINUS_SRC_ALPHA)); } else { scene->blending = EINA_FALSE; eo_do(scene->texture_diffuse_carpet, - evas_3d_texture_file_set(gazebo_t_path, NULL)); + evas_canvas3d_texture_file_set(gazebo_t_path, NULL)); eo_do(scene->mesh_carpet, - evas_3d_mesh_blending_enable_set(EINA_FALSE)); + evas_canvas3d_mesh_blending_enable_set(EINA_FALSE)); } } else if (!strcmp(ev->key, "S")) @@ -188,13 +188,13 @@ _key_down(void *data, { scene->blending = EINA_TRUE; eo_do(global_scene, - evas_3d_scene_shadows_enable_set(EINA_TRUE)); + evas_canvas3d_scene_shadows_enable_set(EINA_TRUE)); } else { scene->blending = EINA_FALSE; eo_do(global_scene, - evas_3d_scene_shadows_enable_set(EINA_FALSE)); + evas_canvas3d_scene_shadows_enable_set(EINA_FALSE)); } } else if (!strcmp(ev->key, "F")) @@ -291,12 +291,12 @@ _key_down(void *data, } else if (!strcmp(ev->key, "F1")) eo_do(scene->camera_node, - evas_3d_node_position_set(0.0, 80.0, 30.0); - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + evas_canvas3d_node_position_set(0.0, 80.0, 30.0); + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); else if (!strcmp(ev->key, "F2")) eo_do(scene->camera_node, - evas_3d_node_position_set(-2.0, 0.0, 4.0), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, -100.0, EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0)); + evas_canvas3d_node_position_set(-2.0, 0.0, 4.0), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, -100.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0)); else if (!strcmp(ev->key, "A")) aabb_index++; } @@ -335,26 +335,26 @@ _animate_camera(void *data) z_move_lateral = camera_move * cos((angle_camera + 90) * TO_RADIAN); eo_do(scene->mediator_node, - evas_3d_node_position_get(EVAS_3D_SPACE_WORLD, &x, &y, &z)); + evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_WORLD, &x, &y, &z)); eo_do(scene->mesh_node_world, - evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x1, &y1, &z1)); + evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x1, &y1, &z1)); eo_do(scene->mesh_node_tommy, - evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x2, &y2, &z2)); + evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x2, &y2, &z2)); if (fall_speed != 0) { if (y - fall_speed < 0) { eo_do(scene->mediator_node, - evas_3d_node_position_set(x, 0, z)); + evas_canvas3d_node_position_set(x, 0, z)); fall_speed = 0.0; } else { eo_do(scene->mediator_node, - evas_3d_node_position_set(x, y - fall_speed, z)); + evas_canvas3d_node_position_set(x, y - fall_speed, z)); fall_speed += FALL_SPEED_UP; } } @@ -381,9 +381,9 @@ _animate_camera(void *data) _horizontal_circle_position_resolution(scene->mesh_node_column[3], x + x_move, z + z_move, SOLDIER_RADIUS)) { eo_do(scene->mediator_node, - evas_3d_node_position_set(x + x_move, y, z + z_move)); + evas_canvas3d_node_position_set(x + x_move, y, z + z_move)); eo_do(scene->mesh_node_world, - evas_3d_node_position_set(x1 + x_move, y1, z1 + z_move)); + evas_canvas3d_node_position_set(x1 + x_move, y1, z1 + z_move)); } } else if ((SOLDIER_FRAME_X1 < x + x_move_lateral) && (x + x_move_lateral < SOLDIER_FRAME_X2) && @@ -408,26 +408,26 @@ _animate_camera(void *data) _horizontal_circle_position_resolution(scene->mesh_node_column[3], x + x_move_lateral, z + z_move_lateral, SOLDIER_RADIUS)) { eo_do(scene->mediator_node, - evas_3d_node_position_set(x + x_move_lateral, y, z + z_move_lateral)); + evas_canvas3d_node_position_set(x + x_move_lateral, y, z + z_move_lateral)); eo_do(scene->mesh_node_world, - evas_3d_node_position_set(x1 + x_move_lateral, y1, z1 + z_move_lateral)); + evas_canvas3d_node_position_set(x1 + x_move_lateral, y1, z1 + z_move_lateral)); } } eo_do(scene->mediator_node, - evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x, &y, &z)); + evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x, &y, &z)); if (!_horizontal_position_resolution(scene->mesh_node_level[step_indicator+1], x, z)) { eo_do(scene->mediator_node, - evas_3d_node_position_set(x, y + STEP, z)); + evas_canvas3d_node_position_set(x, y + STEP, z)); old_space_position += STEP; step_indicator++; } else if (!_horizontal_position_resolution(scene->mesh_node_level[step_indicator-1], x, z) && step_indicator > 0) { eo_do(scene->mediator_node, - evas_3d_node_position_set(x, y - STEP, z)); + evas_canvas3d_node_position_set(x, y - STEP, z)); old_space_position -= STEP; step_indicator--; } @@ -438,13 +438,13 @@ _animate_camera(void *data) } eo_do(scene->mediator_node, - evas_3d_node_orientation_angle_axis_set(angle_camera, 0, 1.0, 0.0), - evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x, &y, &z)); + evas_canvas3d_node_orientation_angle_axis_set(angle_camera, 0, 1.0, 0.0), + evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x, &y, &z)); eo_do(scene->mesh_node_warrior, - evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x1, &y1, &z1)); + evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x1, &y1, &z1)); eo_do(scene->mesh_node_snake, - evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x2, &y2, &z2)); + evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x2, &y2, &z2)); float snake_x = (x2 - x) / _distance(x, z, x2, z2); float snake_z = (z2 - z) / _distance(x, z, x2, z2); @@ -459,10 +459,10 @@ _animate_camera(void *data) _horizontal_circle_object_resolution(scene->mesh_node_warrior, scene->mesh_node_column[3], COLUMN_RADIUS) && _horizontal_circle_object_resolution(scene->mesh_node_level[0], scene->mesh_node_warrior, COLUMN_RADIUS)) eo_do(scene->mesh_node_warrior, - evas_3d_node_position_set((x - x1) * WARRIOR_SPEED + x1, y1, (z - z1) * WARRIOR_SPEED + z1)); + evas_canvas3d_node_position_set((x - x1) * WARRIOR_SPEED + x1, y1, (z - z1) * WARRIOR_SPEED + z1)); else eo_do(scene->mesh_node_warrior, - evas_3d_node_position_set((z - z1) * WARRIOR_SPEED2 + x1, y1, -(x - x1) * WARRIOR_SPEED2 + z1)); + evas_canvas3d_node_position_set((z - z1) * WARRIOR_SPEED2 + x1, y1, -(x - x1) * WARRIOR_SPEED2 + z1)); } /* if soldier is looking at the snake */ @@ -474,11 +474,11 @@ _animate_camera(void *data) if ((_horizontal_object_resolution(scene->mesh_node_snake, SNAKE_FRAME_X1, SNAKE_FRAME_Z1, SNAKE_FRAME_X2, SNAKE_FRAME_Z2, snake_z * SNAKE_SPEED, -snake_x * SNAKE_SPEED))) eo_do(scene->mesh_node_snake, - evas_3d_node_position_set(snake_z * SNAKE_SPEED + x2, y2, -snake_x * SNAKE_SPEED + z2)); + evas_canvas3d_node_position_set(snake_z * SNAKE_SPEED + x2, y2, -snake_x * SNAKE_SPEED + z2)); else if (_horizontal_circle_resolution(scene->mesh_node_snake, (x2 - x) * SNAKE_SPEED2 + x, (z2 - z) * SNAKE_SPEED2 + z, SOLDIER_RADIUS)) eo_do(scene->mesh_node_snake, - evas_3d_node_position_set((x - x2) * SNAKE_SPEED2 + x2, y2, (z - z2) * SNAKE_SPEED2 + z2)); + evas_canvas3d_node_position_set((x - x2) * SNAKE_SPEED2 + x2, y2, (z - z2) * SNAKE_SPEED2 + z2)); } /* if snake is located at the right hand of the soldier */ else @@ -486,31 +486,31 @@ _animate_camera(void *data) if ((_horizontal_object_resolution(scene->mesh_node_snake, SNAKE_FRAME_X1, SNAKE_FRAME_Z1, SNAKE_FRAME_X2, SNAKE_FRAME_Z2, -snake_z * SNAKE_SPEED, snake_x * SNAKE_SPEED))) eo_do(scene->mesh_node_snake, - evas_3d_node_position_set(-snake_z * SNAKE_SPEED + x2, y2, snake_x * SNAKE_SPEED + z2)); + evas_canvas3d_node_position_set(-snake_z * SNAKE_SPEED + x2, y2, snake_x * SNAKE_SPEED + z2)); else if (_horizontal_circle_resolution(scene->mesh_node_snake, (x2 - x) * SNAKE_SPEED2 + x, (z2 - z) * SNAKE_SPEED2 + z, SOLDIER_RADIUS)) eo_do(scene->mesh_node_snake, - evas_3d_node_position_set((x - x2) * SNAKE_SPEED2 + x2, y2, (z - z2) * SNAKE_SPEED2 + z2)); + evas_canvas3d_node_position_set((x - x2) * SNAKE_SPEED2 + x2, y2, (z - z2) * SNAKE_SPEED2 + z2)); } } else if (_horizontal_circle_resolution(scene->mesh_node_snake, (x2 - x) * SNAKE_SPEED2 + x, (z2 - z) * SNAKE_SPEED2 + z, SOLDIER_RADIUS)) eo_do(scene->mesh_node_snake, - evas_3d_node_position_set((x - x2) * SNAKE_SPEED2 + x2, y2, (z - z2) * SNAKE_SPEED2 + z2)); + evas_canvas3d_node_position_set((x - x2) * SNAKE_SPEED2 + x2, y2, (z - z2) * SNAKE_SPEED2 + z2)); eo_do(scene->mesh_node_snake, - evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x2, &y2, &z2)); + evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x2, &y2, &z2)); eo_do(scene->mesh_node_warrior, - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, -1000.0, 0.0, EVAS_3D_SPACE_PARENT, + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, -1000.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, (z - z1) / _distance(x, z, x1, z1), 0, (x1 - x) / _distance(x, z, x1, z1))); eo_do(scene->mesh_node_snake, - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 2 * x2 - x, y2, 2 * z2 - z, EVAS_3D_SPACE_PARENT, 0, 1, 0)); + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 2 * x2 - x, y2, 2 * z2 - z, EVAS_CANVAS3D_SPACE_PARENT, 0, 1, 0)); if (!_horizontal_frame_resolution(scene->mesh_node_snake, SNAKE_FRAME_X1, SNAKE_FRAME_Z1, SNAKE_FRAME_X2, SNAKE_FRAME_Z2, &x_move, &z_move)) eo_do(scene->mesh_node_snake, - evas_3d_node_position_set(x2 + x_move, y2, z2 + z_move)); + evas_canvas3d_node_position_set(x2 + x_move, y2, z2 + z_move)); return EINA_TRUE; } @@ -536,21 +536,21 @@ _animate_scene_gun(void *data) angle_eagle += d_angle_eagle; eo_do(scene->mesh_node_eagle, - frame_eagle = evas_3d_node_mesh_frame_get(scene->mesh_eagle)); + frame_eagle = evas_canvas3d_node_mesh_frame_get(scene->mesh_eagle)); if (frame_eagle > 19500) frame_eagle = 0; frame_eagle += 150; eo_do(scene->mesh_node_snake, - frame_snake = evas_3d_node_mesh_frame_get(scene->mesh_snake)); + frame_snake = evas_canvas3d_node_mesh_frame_get(scene->mesh_snake)); if (frame_snake > 16000) frame_snake = 0; frame_snake += 64; eo_do(scene->mesh_node_eagle, - evas_3d_node_orientation_angle_axis_set(angle_eagle, 0.0, 1.0, 0.0), + evas_canvas3d_node_orientation_angle_axis_set(angle_eagle, 0.0, 1.0, 0.0), /* equation of eagle flight */ - evas_3d_node_position_set(38 * sin((angle_eagle + 90) * TO_RADIAN), 20 + 20 * sin(angle_eagle * TO_RADIAN), + evas_canvas3d_node_position_set(38 * sin((angle_eagle + 90) * TO_RADIAN), 20 + 20 * sin(angle_eagle * TO_RADIAN), -10 + 20.0 * cos((angle_eagle + 90) * TO_RADIAN)), - evas_3d_node_mesh_frame_set(scene->mesh_eagle, frame_eagle)); + evas_canvas3d_node_mesh_frame_set(scene->mesh_eagle, frame_eagle)); for (i = 0; i < 10; i ++) { @@ -563,14 +563,14 @@ _animate_scene_gun(void *data) { _scale(scene->mesh_node_rocket[i], 0.2); eo_do(scene->material_rocket[i], - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 0.8, 0.8, 0.8, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 0.2, 0.2, 0.0, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 0.5, 0.5, 0.5, 1.0)); + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0.8, 0.8, 0.8, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 0.2, 0.2, 0.0, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 0.5, 0.5, 0.5, 1.0)); rocket_indicator[i] = 2; eo_do(scene->mesh_node_rocket[i], - evas_3d_node_position_set(ROCKET_POS_X, ROCKET_POS_Y, ROCKET_POS_Z)); + evas_canvas3d_node_position_set(ROCKET_POS_X, ROCKET_POS_Y, ROCKET_POS_Z)); rocket_parametr[i] = 0; } else if (rocket_indicator[i] == 2) @@ -579,32 +579,32 @@ _animate_scene_gun(void *data) /* equation of rocket flight */ eo_do(scene->mesh_node_rocket[i], - evas_3d_node_position_get(EVAS_3D_SPACE_WORLD, &x, &y, &z)); + evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_WORLD, &x, &y, &z)); if ((ROCKET_FRAME_X1 < x) && (x < ROCKET_FRAME_X2) && (ROCKET_FRAME_Z1 < z) && (z < ROCKET_FRAME_Z2)) eo_do(scene->mesh_node_rocket[i], - evas_3d_node_position_set(ROCKET_POS_X, ROCKET_POS_Y, ROCKET_POS_Z - rocket_parametr[i])); + evas_canvas3d_node_position_set(ROCKET_POS_X, ROCKET_POS_Y, ROCKET_POS_Z - rocket_parametr[i])); else rocket_indicator[i] = 3; /* the way to stop the rocket */ eo_do(scene->mesh_node_warrior, - evas_3d_node_bounding_box_get(&x, &y, &z, &x1, &y1, &z1)); + evas_canvas3d_node_bounding_box_get(&x, &y, &z, &x1, &y1, &z1)); evas_box3_set(&boxy, x, y, z, x1, y1, z1); eo_do(scene->mesh_node_rocket[i], - evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x, &y, &z)); + evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x, &y, &z)); eo_do(scene->mediator_node, - evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x1, &y1, &z1)); + evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x1, &y1, &z1)); if (((z * sinus + x * cosinus + x1) >= boxy.p0.x) && ((z * sinus + x * cosinus + x1) <= boxy.p1.x) && ((z * cosinus - x * sinus + z1) >= boxy.p0.z) && ((z * cosinus - x * sinus + z1) <= boxy.p1.z)) { eo_do(scene->material_rocket[i], - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 0.8, 0.8, 0.8, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 0.9, 0.1, 0.1, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 0.5, 0.5, 0.5, 1.0)); + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0.8, 0.8, 0.8, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 0.9, 0.1, 0.1, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 0.5, 0.5, 0.5, 1.0)); _scale(scene->mesh_node_rocket[i], 2.3); rocket_indicator[i] = 3; @@ -616,7 +616,7 @@ _animate_scene_gun(void *data) { tommy_indicator = 2; eo_do(scene->mesh_node_tommy, - evas_3d_node_position_set(TOMMY_POS_X, TOMMY_POS_Y, TOMMY_POS_Z)); + evas_canvas3d_node_position_set(TOMMY_POS_X, TOMMY_POS_Y, TOMMY_POS_Z)); tommy_parametr = 0.0; } /* parametric equations of gun movement, (GUN_DIR_X, GUN_DIR_Y, GUN_DIR_Z) is direction vector */ @@ -624,7 +624,7 @@ _animate_scene_gun(void *data) { tommy_parametr += GUN_SPEED; eo_do(scene->mesh_node_tommy, - evas_3d_node_position_set(TOMMY_POS_X + GUN_DIR_X * tommy_parametr, + evas_canvas3d_node_position_set(TOMMY_POS_X + GUN_DIR_X * tommy_parametr, TOMMY_POS_Y + GUN_DIR_Y * tommy_parametr, TOMMY_POS_Z + GUN_DIR_Z * tommy_parametr)); @@ -635,12 +635,12 @@ _animate_scene_gun(void *data) { tommy_parametr-= GUN_SPEED / 2; eo_do(scene->mesh_node_tommy, - evas_3d_node_position_set(TOMMY_POS_X + GUN_DIR_X * tommy_parametr, + evas_canvas3d_node_position_set(TOMMY_POS_X + GUN_DIR_X * tommy_parametr, TOMMY_POS_Y + GUN_DIR_Y * tommy_parametr, TOMMY_POS_Z + GUN_DIR_Z * tommy_parametr)); eo_do(scene->mesh_node_tommy, - evas_3d_node_position_get(EVAS_3D_SPACE_PARENT, &x, &y, &z)); + evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x, &y, &z)); if (z <= TOMMY_POS_Z) { tommy_indicator = 4; @@ -651,58 +651,58 @@ _animate_scene_gun(void *data) if (angle_eagle > 360.0) angle -= 360.0f; eo_do(scene->mesh_node_warrior, - evas_3d_node_mesh_frame_set(scene->mesh_warrior, frame)); + evas_canvas3d_node_mesh_frame_set(scene->mesh_warrior, frame)); eo_do(scene->mesh_node_snake, - evas_3d_node_mesh_frame_set(scene->mesh_snake, frame_snake)); + evas_canvas3d_node_mesh_frame_set(scene->mesh_snake, frame_snake)); if (space_move && (soldier_mode == 0)) { eo_do(scene->mesh_node_soldier, - evas_3d_node_mesh_add(scene->mesh_soldier_jump), - evas_3d_node_mesh_del(scene->mesh_soldier), - evas_3d_node_mesh_frame_set(scene->mesh_soldier_jump, 0)); + evas_canvas3d_node_mesh_add(scene->mesh_soldier_jump), + evas_canvas3d_node_mesh_del(scene->mesh_soldier), + evas_canvas3d_node_mesh_frame_set(scene->mesh_soldier_jump, 0)); soldier_mode = 1; eo_do(scene->mesh_node_tommy, - evas_3d_node_position_set(TOMMY_JUMP_X, TOMMY_JUMP_Y, TOMMY_JUMP_Z), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 1000.0, 0.0, 0.0, EVAS_3D_SPACE_PARENT, + evas_canvas3d_node_position_set(TOMMY_JUMP_X, TOMMY_JUMP_Y, TOMMY_JUMP_Z), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 1000.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0, 0, 1)); } else if (soldier_mode == 1) { eo_do(scene->mesh_node_soldier, - frame_soldier = evas_3d_node_mesh_frame_get(scene->mesh_soldier_jump)); + frame_soldier = evas_canvas3d_node_mesh_frame_get(scene->mesh_soldier_jump)); frame_soldier += 124; eo_do(scene->mesh_node_soldier, - evas_3d_node_mesh_frame_set(scene->mesh_soldier_jump, frame_soldier)); + evas_canvas3d_node_mesh_frame_set(scene->mesh_soldier_jump, frame_soldier)); if (frame_soldier < 2480) eo_do(scene->mesh_node_tommy, - evas_3d_node_position_set(TOMMY_JUMP_X, TOMMY_JUMP_Y + 4.5 * frame_soldier / 2480, TOMMY_JUMP_Z)); + evas_canvas3d_node_position_set(TOMMY_JUMP_X, TOMMY_JUMP_Y + 4.5 * frame_soldier / 2480, TOMMY_JUMP_Z)); else eo_do(scene->mesh_node_tommy, - evas_3d_node_position_set(TOMMY_JUMP_X, TOMMY_JUMP_Y + 4.5 * (4960 - frame_soldier) / 2480, TOMMY_JUMP_Z)); + evas_canvas3d_node_position_set(TOMMY_JUMP_X, TOMMY_JUMP_Y + 4.5 * (4960 - frame_soldier) / 2480, TOMMY_JUMP_Z)); if (frame_soldier > 4960) { eo_do(scene->mesh_node_soldier, - evas_3d_node_mesh_del(scene->mesh_soldier_jump)); + evas_canvas3d_node_mesh_del(scene->mesh_soldier_jump)); eo_do(scene->mesh_node_soldier, - evas_3d_node_mesh_add(scene->mesh_soldier), - evas_3d_node_mesh_frame_set(scene->mesh_soldier, 0)); + evas_canvas3d_node_mesh_add(scene->mesh_soldier), + evas_canvas3d_node_mesh_frame_set(scene->mesh_soldier, 0)); soldier_mode = 0; eo_do(scene->mesh_node_tommy, - evas_3d_node_position_set(TOMMY_POS_X, TOMMY_POS_Y, TOMMY_POS_Z), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, -1000.0, 0.0, - EVAS_3D_SPACE_PARENT, 2, 0, 1.5)); + evas_canvas3d_node_position_set(TOMMY_POS_X, TOMMY_POS_Y, TOMMY_POS_Z), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, -1000.0, 0.0, + EVAS_CANVAS3D_SPACE_PARENT, 2, 0, 1.5)); } } else if (camera_move) { eo_do(scene->mesh_node_soldier, - frame_soldier = evas_3d_node_mesh_frame_get(scene->mesh_soldier)); + frame_soldier = evas_canvas3d_node_mesh_frame_get(scene->mesh_soldier)); frame_soldier += 124; if (frame_soldier > 6200) frame_soldier = 0; eo_do(scene->mesh_node_soldier, - evas_3d_node_mesh_frame_set(scene->mesh_soldier, frame_soldier)); + evas_canvas3d_node_mesh_frame_set(scene->mesh_soldier, frame_soldier)); } /* create bounding box */ @@ -745,12 +745,12 @@ static void _reload_camera(void *data, Evas *e EINA_UNUSED, Evas_Object *eo EINA_UNUSED, void *event_info) { Evas_Event_Mouse_Down *ev = event_info; - Evas_3D_Node *n; - Evas_3D_Mesh *m; + Evas_Canvas3D_Node *n; + Evas_Canvas3D_Mesh *m; Evas_Real s, t; eo_do(global_scene, - evas_3d_scene_pick(ev->canvas.x, ev->canvas.y, &n, &m, &s, &t)); + evas_canvas3d_scene_pick(ev->canvas.x, ev->canvas.y, &n, &m, &s, &t)); d_angle_camera = 0; if (n || m) @@ -937,22 +937,22 @@ _mesh_setup_gun_planet(Scene_Data *data) SETUP_MESH_NODE(world); eo_do(data->mesh_world, - evas_3d_mesh_vertex_count_set(vertex_count), - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_POSITION, + evas_canvas3d_mesh_vertex_count_set(vertex_count), + evas_canvas3d_mesh_frame_vertex_data_set(0, EVAS_CANVAS3D_VERTEX_POSITION, sizeof(vertex), &vertices[0].position), - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_NORMAL, + evas_canvas3d_mesh_frame_vertex_data_set(0, EVAS_CANVAS3D_VERTEX_NORMAL, sizeof(vertex), &vertices[0].normal), - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_TANGENT, + evas_canvas3d_mesh_frame_vertex_data_set(0, EVAS_CANVAS3D_VERTEX_TANGENT, sizeof(vertex), &vertices[0].tangent), - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_COLOR, + evas_canvas3d_mesh_frame_vertex_data_set(0, EVAS_CANVAS3D_VERTEX_COLOR, sizeof(vertex), &vertices[0].color); - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_TEXCOORD, + evas_canvas3d_mesh_frame_vertex_data_set(0, EVAS_CANVAS3D_VERTEX_TEXCOORD, sizeof(vertex), &vertices[0].texcoord), - evas_3d_mesh_index_data_set(EVAS_3D_INDEX_FORMAT_UNSIGNED_SHORT, index_count, &indices[0])); + evas_canvas3d_mesh_index_data_set(EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_SHORT, index_count, &indices[0])); eo_do(data->mesh_node_world, - evas_3d_node_scale_set(150, 150, 150), - evas_3d_node_position_set(0.0, 0.0, 0.0)); + evas_canvas3d_node_scale_set(150, 150, 150), + evas_canvas3d_node_position_set(0.0, 0.0, 0.0)); /* Setup material and texture for player */ @@ -962,13 +962,13 @@ _mesh_setup_gun_planet(Scene_Data *data) SETUP_MESH_NODE(soldier) eo_do(data->mesh_node_soldier, - evas_3d_node_position_set(0, -10, 0), - evas_3d_node_scale_set(5, 5, 5)); + evas_canvas3d_node_position_set(0, -10, 0), + evas_canvas3d_node_scale_set(5, 5, 5)); eo_do(data->mesh_node_soldier, - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, -10.0, -100.0, EVAS_3D_SPACE_PARENT, + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, -10.0, -100.0, EVAS_CANVAS3D_SPACE_PARENT, 0, 1, 0), - evas_3d_node_mesh_frame_set(data->mesh_soldier, 0)); + evas_canvas3d_node_mesh_frame_set(data->mesh_soldier, 0)); SETUP_MESH(soldier, soldier_jump, 1.0, 1.0, 1.0) MATERIAL_TEXTURE_SET(soldier, soldier_jump, soldier_jump_path, soldier_tex_path) @@ -980,13 +980,13 @@ _mesh_setup_gun_planet(Scene_Data *data) eo_do(data->mesh_tommy, efl_file_set(gun_path, NULL), efl_file_save("try.obj", NULL, NULL), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG), - evas_3d_mesh_frame_material_set(0, data->material_tommy)); + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG), + evas_canvas3d_mesh_frame_material_set(0, data->material_tommy)); eo_do(data->mesh_node_tommy, - evas_3d_node_scale_set(1.5, 1.5, 1.5), - evas_3d_node_position_set(TOMMY_POS_X, TOMMY_POS_Y, TOMMY_POS_Z), - evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, -1000.0, 0.0, EVAS_3D_SPACE_PARENT, + evas_canvas3d_node_scale_set(1.5, 1.5, 1.5), + evas_canvas3d_node_position_set(TOMMY_POS_X, TOMMY_POS_Y, TOMMY_POS_Z), + evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, -1000.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 2, 0, 1.5)); /* Setup material and texture for gazebo */ @@ -997,9 +997,9 @@ _mesh_setup_gun_planet(Scene_Data *data) NORMAL_SET(gazebo, gazebo, gazebo_b_n_path) eo_do(data->mesh_node_gazebo, - evas_3d_node_scale_set(0.18, 0.18, 0.18), - evas_3d_node_orientation_angle_axis_set(180, 0.0, 1.0, 0.0), - evas_3d_node_position_set(-20, -10, -35)); + evas_canvas3d_node_scale_set(0.18, 0.18, 0.18), + evas_canvas3d_node_orientation_angle_axis_set(180, 0.0, 1.0, 0.0), + evas_canvas3d_node_position_set(-20, -10, -35)); /* Setup material and texture for carpet */ @@ -1011,15 +1011,15 @@ _mesh_setup_gun_planet(Scene_Data *data) if (data->blending) { eo_do(data->texture_diffuse_carpet, - evas_3d_texture_file_set(gazebo_t_trans_path, NULL)); + evas_canvas3d_texture_file_set(gazebo_t_trans_path, NULL)); eo_do(data->mesh_carpet, - evas_3d_mesh_blending_enable_set(EINA_TRUE), - evas_3d_mesh_blending_func_set(EVAS_3D_BLEND_SRC_ALPHA, EVAS_3D_BLEND_ONE_MINUS_SRC_ALPHA)); + evas_canvas3d_mesh_blending_enable_set(EINA_TRUE), + evas_canvas3d_mesh_blending_func_set(EVAS_CANVAS3D_BLEND_SRC_ALPHA, EVAS_CANVAS3D_BLEND_ONE_MINUS_SRC_ALPHA)); } eo_do(data->mesh_node_carpet, - evas_3d_node_scale_set(0.18, 0.18, 0.18), - evas_3d_node_position_set(-20, -10, -35)); + evas_canvas3d_node_scale_set(0.18, 0.18, 0.18), + evas_canvas3d_node_position_set(-20, -10, -35)); /* Setup material and texture for eagle. */ SETUP_MESH(eagle, eagle, 0.01, 1.0, 1.0) @@ -1027,18 +1027,18 @@ _mesh_setup_gun_planet(Scene_Data *data) MATERIAL_TEXTURE_SET(eagle, eagle, eagle_path, eagle_tex_path) eo_do(data->mesh_node_eagle, - evas_3d_node_scale_set(0.1, 0.1, 0.1), - evas_3d_node_position_set(-20, 20, 0)); + evas_canvas3d_node_scale_set(0.1, 0.1, 0.1), + evas_canvas3d_node_position_set(-20, 20, 0)); /* Set material for bounding box */ SETUP_MESH(cube, cube, 0.01, 1.0, 1.0) SETUP_MESH_NODE(cube) eo_do(data->mesh_cube, - evas_3d_mesh_index_data_set(EVAS_3D_INDEX_FORMAT_UNSIGNED_SHORT, + evas_canvas3d_mesh_index_data_set(EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_SHORT, 36, &cube_indices[0]), - evas_3d_mesh_vertex_count_set(24), - evas_3d_mesh_vertex_assembly_set(EVAS_3D_VERTEX_ASSEMBLY_LINES)); + evas_canvas3d_mesh_vertex_count_set(24), + evas_canvas3d_mesh_vertex_assembly_set(EVAS_CANVAS3D_VERTEX_ASSEMBLY_LINES)); /* Setup mesh for column carpet */ @@ -1049,29 +1049,29 @@ _mesh_setup_gun_planet(Scene_Data *data) NORMAL_SET(column_c, column_c, red_brick_n_path) eo_do(data->mesh_node_column_c, - evas_3d_node_orientation_angle_axis_set(90, 0, 1.0, 0.0), - evas_3d_node_scale_set(48.0, 0.8 , 2.4 ), - evas_3d_node_position_set(10 , 9.0, -12)); + evas_canvas3d_node_orientation_angle_axis_set(90, 0, 1.0, 0.0), + evas_canvas3d_node_scale_set(48.0, 0.8 , 2.4 ), + evas_canvas3d_node_position_set(10 , 9.0, -12)); /* Setup mesh for bounding sphere */ - data->material_ball = eo_add(EVAS_3D_MATERIAL_CLASS, evas); + data->material_ball = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); eo_do(data->material_ball, - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 0.0, 5.0, 1.0, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_shininess_set(50.0)); + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 0.0, 5.0, 1.0, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_shininess_set(50.0)); - data->mesh_ball = eo_add(EVAS_3D_MESH_CLASS, evas); + data->mesh_ball = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); _set_ball(data->mesh_ball, 10); eo_do(data->mesh_ball, - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_DIFFUSE), - evas_3d_mesh_vertex_assembly_set(EVAS_3D_VERTEX_ASSEMBLY_LINES), - evas_3d_mesh_frame_material_set(0, data->material_ball)); + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_DIFFUSE), + evas_canvas3d_mesh_vertex_assembly_set(EVAS_CANVAS3D_VERTEX_ASSEMBLY_LINES), + evas_canvas3d_mesh_frame_material_set(0, data->material_ball)); SETUP_MESH_NODE(ball) @@ -1092,25 +1092,25 @@ _mesh_setup_wall(Scene_Data *data, int index) /* placing of wall carpet on the floor grid */ if (index == 0) eo_do(data->mesh_node_wall[index], - evas_3d_node_scale_set(6.7 * 9.75, 10.0 , 1.0 ), - evas_3d_node_position_set(-39.7 + 18.6 * 3, 0.0, -60.3)); + evas_canvas3d_node_scale_set(6.7 * 9.75, 10.0 , 1.0 ), + evas_canvas3d_node_position_set(-39.7 + 18.6 * 3, 0.0, -60.3)); else if (index == 1) { eo_do(data->mesh_node_wall[index], - evas_3d_node_scale_set(5 * 9.75, 10.0 , 1.0 ), - evas_3d_node_position_set(81.2, 0.0, -51.5 + 19.5 * 2), - evas_3d_node_orientation_angle_axis_set(90, 0, 1.0, 0.0)); + evas_canvas3d_node_scale_set(5 * 9.75, 10.0 , 1.0 ), + evas_canvas3d_node_position_set(81.2, 0.0, -51.5 + 19.5 * 2), + evas_canvas3d_node_orientation_angle_axis_set(90, 0, 1.0, 0.0)); } else if (index == 2) eo_do(data->mesh_node_wall[index], - evas_3d_node_scale_set(6.7 * 9.75, 10.0 , 1.0 ), - evas_3d_node_position_set(-39.7 + 18.6*3, 0.0, 35.3)); + evas_canvas3d_node_scale_set(6.7 * 9.75, 10.0 , 1.0 ), + evas_canvas3d_node_position_set(-39.7 + 18.6*3, 0.0, 35.3)); else if (index == 3) { eo_do(data->mesh_node_wall[index], - evas_3d_node_scale_set(5* 9.75, 10.0 , 1.0 ), - evas_3d_node_position_set(-48.4, 0.0, -51.5 + 19.5 * 2), - evas_3d_node_orientation_angle_axis_set(90, 0, 1.0, 0.0)); + evas_canvas3d_node_scale_set(5* 9.75, 10.0 , 1.0 ), + evas_canvas3d_node_position_set(-48.4, 0.0, -51.5 + 19.5 * 2), + evas_canvas3d_node_orientation_angle_axis_set(90, 0, 1.0, 0.0)); } } @@ -1119,50 +1119,50 @@ _mesh_setup_column(Scene_Data *data, int index) { /* Setup mesh for column */ - data->material_column = eo_add(EVAS_3D_MATERIAL_CLASS, evas); + data->material_column = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, evas); eo_do(data->material_column, - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_NORMAL, EINA_TRUE), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 0.4, 0.4, 0.4, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 0.6, 0.6, 0.6, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_shininess_set(50.0)); + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, EINA_TRUE), + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_NORMAL, EINA_TRUE), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0.4, 0.4, 0.4, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 0.6, 0.6, 0.6, 1.0), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_shininess_set(50.0)); - data->mesh_column[index] = eo_add(EVAS_3D_MESH_CLASS, evas); + data->mesh_column[index] = eo_add(EVAS_CANVAS3D_MESH_CLASS, evas); SETUP_MESH_NODE(column[index]) eo_do(data->mesh_column[index], - evas_3d_mesh_from_primitive_set(0, data->cylinder_primitive), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_DIFFUSE), - evas_3d_mesh_vertex_assembly_set(EVAS_3D_VERTEX_ASSEMBLY_TRIANGLES), - evas_3d_mesh_frame_material_set(0, data->material_column), - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG), - evas_3d_mesh_frame_material_set(0, data->material_column)); + evas_canvas3d_mesh_from_primitive_set(0, data->cylinder_primitive), + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_DIFFUSE), + evas_canvas3d_mesh_vertex_assembly_set(EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLES), + evas_canvas3d_mesh_frame_material_set(0, data->material_column), + evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG), + evas_canvas3d_mesh_frame_material_set(0, data->material_column)); - data->texture_diffuse_column = eo_add(EVAS_3D_TEXTURE_CLASS, evas); + data->texture_diffuse_column = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, evas); eo_do(data->texture_diffuse_column, - evas_3d_texture_file_set(red_brick_path, NULL), - evas_3d_texture_filter_set(EVAS_3D_TEXTURE_FILTER_NEAREST, - EVAS_3D_TEXTURE_FILTER_NEAREST), - evas_3d_texture_wrap_set(EVAS_3D_WRAP_MODE_REPEAT, EVAS_3D_WRAP_MODE_REPEAT)); + evas_canvas3d_texture_file_set(red_brick_path, NULL), + evas_canvas3d_texture_filter_set(EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST, + EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST), + evas_canvas3d_texture_wrap_set(EVAS_CANVAS3D_WRAP_MODE_REPEAT, EVAS_CANVAS3D_WRAP_MODE_REPEAT)); eo_do(data->material_column, - evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, data->texture_diffuse_column), - evas_3d_material_texture_set(EVAS_3D_MATERIAL_AMBIENT, + evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, data->texture_diffuse_column)); NORMAL_SET(column, column[index], red_brick_n_path) eo_do(data->mesh_node_column[index], - evas_3d_node_scale_set(2.2, 2.2, 19.0), - evas_3d_node_position_set(10 , 0, -45 + 21.25 * index), - evas_3d_node_orientation_angle_axis_set(90, 1.0, 0.0, 0.0)); + evas_canvas3d_node_scale_set(2.2, 2.2, 19.0), + evas_canvas3d_node_position_set(10 , 0, -45 + 21.25 * index), + evas_canvas3d_node_orientation_angle_axis_set(90, 1.0, 0.0, 0.0)); } void @@ -1178,8 +1178,8 @@ _mesh_setup_grass(Scene_Data *data) /* placing of grass carpet on the floor grid */ eo_do(data->mesh_node_grass, - evas_3d_node_scale_set(10.0, 1.0, 12.0), - evas_3d_node_position_set(16, -10.0, -12)); + evas_canvas3d_node_scale_set(10.0, 1.0, 12.0), + evas_canvas3d_node_position_set(16, -10.0, -12)); } void @@ -1195,8 +1195,8 @@ _mesh_setup(Scene_Data *data, float h EINA_UNUSED, float w EINA_UNUSED, float d NORMAL_SET(level[0], level[index], red_brick_n_path) eo_do(data->mesh_node_level[index], - evas_3d_node_scale_set(9.75, 10.0, 1.0), - evas_3d_node_position_set(50, 0, -15)); + evas_canvas3d_node_scale_set(9.75, 10.0, 1.0), + evas_canvas3d_node_position_set(50, 0, -15)); } else { @@ -1207,8 +1207,8 @@ _mesh_setup(Scene_Data *data, float h EINA_UNUSED, float w EINA_UNUSED, float d NORMAL_SET(level[1], level[index], gray_brick_n_path) eo_do(data->mesh_node_level[index], - evas_3d_node_scale_set(1.0, 1.0, 4.0), - evas_3d_node_position_set(40 + (2 * index), -10 + (2 * index), -10)); + evas_canvas3d_node_scale_set(1.0, 1.0, 4.0), + evas_canvas3d_node_position_set(40 + (2 * index), -10 + (2 * index), -10)); } } @@ -1222,8 +1222,8 @@ _mesh_setup_warrior(Scene_Data *data) MATERIAL_TEXTURE_SET(warrior, warrior, warrior_path, warrior_tex_path) eo_do(data->mesh_node_warrior, - evas_3d_node_position_set(57, -10, 0), - evas_3d_node_scale_set(0.15, 0.15, 0.15)); + evas_canvas3d_node_position_set(57, -10, 0), + evas_canvas3d_node_scale_set(0.15, 0.15, 0.15)); } void @@ -1235,8 +1235,8 @@ _mesh_setup_snake(Scene_Data *data) NORMAL_SET(snake, snake, snake_tex_n_path) eo_do(data->mesh_node_snake, - evas_3d_node_position_set(20, -10, 20), - evas_3d_node_scale_set(4.0, 4.0, 4.0)); + evas_canvas3d_node_position_set(20, -10, 20), + evas_canvas3d_node_scale_set(4.0, 4.0, 4.0)); } void @@ -1248,22 +1248,22 @@ _mesh_setup_rocket(Scene_Data *data, int index) SPHERE_SET(rocket[index]) eo_do(data->mesh_node_rocket[index], - evas_3d_node_scale_set(1, 1, 1), - evas_3d_node_position_set(ROCKET_POS_X, ROCKET_POS_Y, ROCKET_POS_Z)); + evas_canvas3d_node_scale_set(1, 1, 1), + evas_canvas3d_node_position_set(ROCKET_POS_X, ROCKET_POS_Y, ROCKET_POS_Z)); } void _scene_setup(Scene_Data *data) { int i = 0; - global_scene = eo_add(EVAS_3D_SCENE_CLASS, evas); + global_scene = eo_add(EVAS_CANVAS3D_SCENE_CLASS, evas); eo_do(global_scene, - evas_3d_scene_size_set(WIDTH, HEIGHT), - evas_3d_scene_background_color_set(0.5, 0.5, 0.9, 0.0)); + evas_canvas3d_scene_size_set(WIDTH, HEIGHT), + evas_canvas3d_scene_background_color_set(0.5, 0.5, 0.9, 0.0)); - data->root_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_NODE)); + data->root_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); _camera_setup(data); _light_setup(data); @@ -1273,12 +1273,12 @@ _scene_setup(Scene_Data *data) for (i = 0; i < 10; i++) _mesh_setup_rocket(data, i); - data->cylinder_primitive = eo_add(EVAS_3D_PRIMITIVE_CLASS, evas); + data->cylinder_primitive = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, evas); eo_do(data->cylinder_primitive, - evas_3d_primitive_mode_set(EVAS_3D_PRIMITIVE_MODE_WITHOUT_BASE), - evas_3d_primitive_form_set(EVAS_3D_MESH_PRIMITIVE_CYLINDER), - evas_3d_primitive_tex_scale_set(1.0, 1.0), - evas_3d_primitive_precision_set(50)); + evas_canvas3d_primitive_mode_set(EVAS_CANVAS3D_PRIMITIVE_MODE_WITHOUT_BASE), + evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_CYLINDER), + evas_canvas3d_primitive_tex_scale_set(1.0, 1.0), + evas_canvas3d_primitive_precision_set(50)); for ( i = 0; i < 4; i++) _mesh_setup_column(data, i); @@ -1300,11 +1300,11 @@ _scene_setup(Scene_Data *data) _mesh_aabb(&data->mesh_cube, data, aabb_index); eo_do(global_scene, - evas_3d_scene_root_node_set(data->root_node), - evas_3d_scene_camera_node_set(data->camera_node)); + evas_canvas3d_scene_root_node_set(data->root_node), + evas_canvas3d_scene_camera_node_set(data->camera_node)); if (data->shadow) - eo_do(global_scene,evas_3d_scene_shadows_enable_set(EINA_TRUE)); + eo_do(global_scene,evas_canvas3d_scene_shadows_enable_set(EINA_TRUE)); if (data->fog) { @@ -1330,40 +1330,40 @@ _scene_setup(Scene_Data *data) } } - data->carp_mediator_node = eo_add(EVAS_3D_NODE_CLASS, evas, - evas_3d_node_constructor(EVAS_3D_NODE_TYPE_MESH)); + data->carp_mediator_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH)); eo_do(data->carp_mediator_node, - evas_3d_node_member_add(data->mesh_node_carpet)); + evas_canvas3d_node_member_add(data->mesh_node_carpet)); eo_do(data->mediator_node, - evas_3d_node_member_add(data->mesh_node_soldier), - evas_3d_node_member_add(data->mesh_node_tommy)); + evas_canvas3d_node_member_add(data->mesh_node_soldier), + evas_canvas3d_node_member_add(data->mesh_node_tommy)); for (i = 0; i < 10; i++) eo_do(data->mediator_node, - evas_3d_node_member_add(data->mesh_node_rocket[i])); + evas_canvas3d_node_member_add(data->mesh_node_rocket[i])); eo_do(data->root_node, - evas_3d_node_member_add(data->carp_mediator_node), - evas_3d_node_member_add(data->mesh_node_world), - evas_3d_node_member_add(data->mesh_node_gazebo), - evas_3d_node_member_add(data->mesh_node_eagle), - evas_3d_node_member_add(data->mesh_node_cube), - evas_3d_node_member_add(data->mesh_node_column_c), - evas_3d_node_member_add(data->mesh_node_ball), - evas_3d_node_member_add(data->mesh_node_grass), - evas_3d_node_member_add(data->mesh_node_warrior), - evas_3d_node_member_add(data->mesh_node_snake)); + evas_canvas3d_node_member_add(data->carp_mediator_node), + evas_canvas3d_node_member_add(data->mesh_node_world), + evas_canvas3d_node_member_add(data->mesh_node_gazebo), + evas_canvas3d_node_member_add(data->mesh_node_eagle), + evas_canvas3d_node_member_add(data->mesh_node_cube), + evas_canvas3d_node_member_add(data->mesh_node_column_c), + evas_canvas3d_node_member_add(data->mesh_node_ball), + evas_canvas3d_node_member_add(data->mesh_node_grass), + evas_canvas3d_node_member_add(data->mesh_node_warrior), + evas_canvas3d_node_member_add(data->mesh_node_snake)); for (i = 0; i < 4; i++) eo_do(data->root_node, - evas_3d_node_member_add(data->mesh_node_wall[i]), - evas_3d_node_member_add(data->mesh_node_column[i])); + evas_canvas3d_node_member_add(data->mesh_node_wall[i]), + evas_canvas3d_node_member_add(data->mesh_node_column[i])); for (i = 0; i < 10; i++) eo_do(data->root_node, - evas_3d_node_member_add(data->mesh_node_level[i])); + evas_canvas3d_node_member_add(data->mesh_node_level[i])); } int diff --git a/src/lib/edje/edje_private.h b/src/lib/edje/edje_private.h index d3507cb581..91662e1834 100644 --- a/src/lib/edje/edje_private.h +++ b/src/lib/edje/edje_private.h @@ -1363,8 +1363,8 @@ struct _Edje_Part_Description_Spec_Mesh_Node Eina_Bool set; - Evas_3D_Mesh_Primitive primitive; - Evas_3D_Vertex_Assembly assembly; + Evas_Canvas3D_Mesh_Primitive primitive; + Evas_Canvas3D_Vertex_Assembly assembly; } mesh; struct { @@ -1376,10 +1376,10 @@ struct _Edje_Part_Description_Spec_Mesh_Node Eina_Bool textured; Eina_Bool set; - Evas_3D_Wrap_Mode wrap1; - Evas_3D_Wrap_Mode wrap2; - Evas_3D_Texture_Filter filter1; - Evas_3D_Texture_Filter filter2; + Evas_Canvas3D_Wrap_Mode wrap1; + Evas_Canvas3D_Wrap_Mode wrap2; + Evas_Canvas3D_Texture_Filter filter1; + Evas_Canvas3D_Texture_Filter filter2; } texture; struct { @@ -1388,16 +1388,16 @@ struct _Edje_Part_Description_Spec_Mesh_Node Edje_Color specular; Eina_Bool normal; FLOAT_T shininess; - Evas_3D_Shade_Mode shade; + Evas_Canvas3D_Shade_Mode shade; - Evas_3D_Material_Attrib material_attrib; + Evas_Canvas3D_Material_Attrib material_attrib; } properties; AABB aabb1; AABB aabb2; struct { - Evas_3D_Node_Orientation_Type type; + Evas_Canvas3D_Node_Orientation_Type type; FLOAT_T data[6]; int look_to; /* -1 = whole part collection, or part ID */ } orientation; @@ -1424,7 +1424,7 @@ struct _Edje_Part_Description_Spec_Light } position; struct { - Evas_3D_Node_Orientation_Type type; + Evas_Canvas3D_Node_Orientation_Type type; FLOAT_T data[6]; int look_to; /* -1 = whole part collection, or part ID */ } orientation; @@ -1445,7 +1445,7 @@ struct _Edje_Part_Description_Spec_Camera } position; struct { - Evas_3D_Node_Orientation_Type type; + Evas_Canvas3D_Node_Orientation_Type type; FLOAT_T data[6]; int look_to; /* -1 = whole part collection, or part ID */ } orientation; diff --git a/src/lib/evas/Evas_Eo.h b/src/lib/evas/Evas_Eo.h index e401a51578..453d85e616 100644 --- a/src/lib/evas/Evas_Eo.h +++ b/src/lib/evas/Evas_Eo.h @@ -170,16 +170,16 @@ EAPI extern const Eo_Event_Description _EVAS_CANVAS_EVENT_VIEWPORT_RESIZE; */ /** - * @page evas_3d_main Evas 3D + * @page evas_canvas3d_main Evas 3D * * @since 1.10 * * @section toc Table of Contents * - * @li @ref evas_3d_intro - * @li @ref evas_3d_example + * @li @ref evas_canvas3d_intro + * @li @ref evas_canvas3d_example * - * @section evas_3d_intro Introduction + * @section evas_canvas3d_intro Introduction * * Evas 3D is an extension to support 3D scene graph rendering into 2D Evas * canvas supporting typicall tree-based scene graph manipulation and other 3D @@ -210,20 +210,20 @@ EAPI extern const Eo_Event_Description _EVAS_CANVAS_EVENT_VIEWPORT_RESIZE; * evas objects. This can make it possible putting 3D things into existing 2D * application layouts. * - * @section evas_3d_example Introductory Example + * @section evas_canvas3d_example Introductory Example * * @include evas-3d-cube.c */ /** - * @defgroup Evas_3D_Types Types & Enums + * @defgroup Evas_Canvas3D_Types Types & Enums * @ingroup Evas_3D * * Primitive type definitions and enumations. */ /** - * @defgroup Evas_3D_Object Generic 3D Object Descriptions + * @defgroup Evas_Canvas3D_Object Generic 3D Object Descriptions * @ingroup Evas_3D * * Evas 3D object is a generic type of all evas 3D objects like scene, node, @@ -241,7 +241,7 @@ EAPI extern const Eo_Event_Description _EVAS_CANVAS_EVENT_VIEWPORT_RESIZE; */ /** - * @defgroup Evas_3D_Scene Scene Object + * @defgroup Evas_Canvas3D_Scene Scene Object * @ingroup Evas_3D * * A scene represents a captured image of a scene graph through its viewing @@ -250,7 +250,7 @@ EAPI extern const Eo_Event_Description _EVAS_CANVAS_EVENT_VIEWPORT_RESIZE; */ /** - * @defgroup Evas_3D_Node Node Object + * @defgroup Evas_Canvas3D_Node Node Object * @ingroup Evas_3D * * A node is used for hierarchical construction of a scene graph. Evas 3D @@ -260,7 +260,7 @@ EAPI extern const Eo_Event_Description _EVAS_CANVAS_EVENT_VIEWPORT_RESIZE; */ /** - * @defgroup Evas_3D_Camera Camera Object + * @defgroup Evas_Canvas3D_Camera Camera Object * @ingroup Evas_3D * * A camera object is used for taking a picture of a scene graph. A camera @@ -271,13 +271,13 @@ EAPI extern const Eo_Event_Description _EVAS_CANVAS_EVENT_VIEWPORT_RESIZE; * camera on a node. If one wants to locate several cameras having same * properties, instead of creating multiple cameras, just create one camera and * multiple nodes containing the camera and locate them at each desired position - * and direction. Just for convinience, use evas_3d_node_position_set() to move - * the camera to desired position and use evas_3d_node_look_at_set() to adjust + * and direction. Just for convinience, use evas_canvas3d_node_position_set() to move + * the camera to desired position and use evas_canvas3d_node_look_at_set() to adjust * the viewing direction of the camera. */ /** - * @defgroup Evas_3D_Light Light Object + * @defgroup Evas_Canvas3D_Light Light Object * @ingroup Evas_3D * * A light object represents a set of properties of a light source. Evas 3D @@ -288,7 +288,7 @@ EAPI extern const Eo_Event_Description _EVAS_CANVAS_EVENT_VIEWPORT_RESIZE; */ /** - * @defgroup Evas_3D_Mesh Mesh Object + * @defgroup Evas_Canvas3D_Mesh Mesh Object * @ingroup Evas_3D * * A mesh object is a set of information on a visible geometrical object like @@ -304,26 +304,26 @@ EAPI extern const Eo_Event_Description _EVAS_CANVAS_EVENT_VIEWPORT_RESIZE; */ /** - * @defgroup Evas_3D_Primitive Primitive Object + * @defgroup Evas_Canvas3D_Primitive Primitive Object * @ingroup Evas_3D * * A primitive object is an object with necessary data for creating meshes with ptimitive shapes. - * Data from a primitive can be set to Evas_3D_Mesh by using evas_3d_mesh_from_primitive_set() + * Data from a primitive can be set to Evas_Canvas3D_Mesh by using evas_canvas3d_mesh_from_primitive_set() * function. */ /** - * @defgroup Evas_3D_Texture Texture Object + * @defgroup Evas_Canvas3D_Texture Texture Object * @ingroup Evas_3D * * A texture object is an image represents material of surfaces. A texture can - * be set to a slot of Evas_3D_Material by using evas_3d_material_texture_set() + * be set to a slot of Evas_Canvas3D_Material by using evas_canvas3d_material_texture_set() * function. The data of a texture can be loaded from memory, file and other * Evas_Object. */ /** - * @defgroup Evas_3D_Material Material Object + * @defgroup Evas_Canvas3D_Material Material Object * @ingroup Evas_3D * * A material object represents properties of surfaces. Evas 3D defines the @@ -342,129 +342,129 @@ EAPI extern const Eo_Event_Description _EVAS_CANVAS_EVENT_VIEWPORT_RESIZE; * precision and fixed-point types will be useful but it's not supported yet. * * @since 1.10 - * @ingroup Evas_3D_Types + * @ingroup Evas_Canvas3D_Types */ typedef double Evas_Real; /** - * @typedef Evas_3D_Object + * @typedef Evas_Canvas3D_Object * * 3D Object object handle * * @since 1.10 - * @ingroup Evas_3D_Object + * @ingroup Evas_Canvas3D_Object */ -typedef Eo Evas_3D_Object; +typedef Eo Evas_Canvas3D_Object; -#define _EVAS_3D_OBJECT_EO_CLASS_TYPE +#define _EVAS_CANVAS3D_OBJECT_EO_CLASS_TYPE /** - * @typedef Evas_3D_Scene + * @typedef Evas_Canvas3D_Scene * * Scene object handle * * @since 1.10 - * @ingroup Evas_3D_Scene + * @ingroup Evas_Canvas3D_Scene */ -typedef Eo Evas_3D_Scene; +typedef Eo Evas_Canvas3D_Scene; -#define _EVAS_3D_SCENE_EO_CLASS_TYPE +#define _EVAS_CANVAS3D_SCENE_EO_CLASS_TYPE /** - * @typedef Evas_3D_Node + * @typedef Evas_Canvas3D_Node * * Node object handle * * @since 1.10 - * @ingroup Evas_3D_Node + * @ingroup Evas_Canvas3D_Node */ -typedef Eo Evas_3D_Node; +typedef Eo Evas_Canvas3D_Node; -#define _EVAS_3D_NODE_EO_CLASS_TYPE +#define _EVAS_CANVAS3D_NODE_EO_CLASS_TYPE /** - * @typedef Evas_3D_Camera + * @typedef Evas_Canvas3D_Camera * * Camera object handle * * @since 1.10 - * @ingroup Evas_3D_Camera + * @ingroup Evas_Canvas3D_Camera */ -typedef Eo Evas_3D_Camera; +typedef Eo Evas_Canvas3D_Camera; -#define _EVAS_3D_CAMERA_EO_CLASS_TYPE +#define _EVAS_CANVAS3D_CAMERA_EO_CLASS_TYPE /** - * @typedef Evas_3D_Light + * @typedef Evas_Canvas3D_Light * * Light object handle * * @since 1.10 - * @ingroup Evas_3D_Light + * @ingroup Evas_Canvas3D_Light */ -typedef Eo Evas_3D_Light; +typedef Eo Evas_Canvas3D_Light; -#define _EVAS_3D_LIGHT_EO_CLASS_TYPE +#define _EVAS_CANVAS3D_LIGHT_EO_CLASS_TYPE /** - * @typedef Evas_3D_Mesh + * @typedef Evas_Canvas3D_Mesh * * Mesh object handle * * @since 1.10 - * @ingroup Evas_3D_Mesh + * @ingroup Evas_Canvas3D_Mesh */ -typedef Eo Evas_3D_Mesh; +typedef Eo Evas_Canvas3D_Mesh; -#define _EVAS_3D_MESH_EO_CLASS_TYPE +#define _EVAS_CANVAS3D_MESH_EO_CLASS_TYPE /** - * @typedef Evas_3D_Texture + * @typedef Evas_Canvas3D_Texture * * Texture object handle * * @since 1.10 - * @ingroup Evas_3D_Texture + * @ingroup Evas_Canvas3D_Texture */ -typedef Eo Evas_3D_Texture; +typedef Eo Evas_Canvas3D_Texture; -#define _EVAS_3D_TEXTURE_EO_CLASS_TYPE +#define _EVAS_CANVAS3D_TEXTURE_EO_CLASS_TYPE /** - * @typedef Evas_3D_Material + * @typedef Evas_Canvas3D_Material * * Material object handle * * @since 1.10 - * @ingroup Evas_3D_Material + * @ingroup Evas_Canvas3D_Material */ -typedef Eo Evas_3D_Material; +typedef Eo Evas_Canvas3D_Material; -#define _EVAS_3D_MATERIAL_EO_CLASS_TYPE +#define _EVAS_CANVAS3D_MATERIAL_EO_CLASS_TYPE /** - * @typedef Evas_3D_Primitive + * @typedef Evas_Canvas3D_Primitive * * Primitive object handle * * @since 1.15 - * @ingroup Evas_3D_Primitive + * @ingroup Evas_Canvas3D_Primitive */ -typedef Eo Evas_3D_Primitive; +typedef Eo Evas_Canvas3D_Primitive; -#define _EVAS_3D_PRIMITIVE_EO_CLASS_TYPE +#define _EVAS_CANVAS3D_PRIMITIVE_EO_CLASS_TYPE /** - * @typedef Evas_3D_Surface_Func + * @typedef Evas_Canvas3D_Surface_Func * * User-defined parametric surface function. * Used for easy creation of custom surfaces as a primitive. * * @since 1.15 - * @ingroup Evas_3D_Primitive + * @ingroup Evas_Canvas3D_Primitive */ -typedef void (Evas_3D_Surface_Func)(Evas_Real *out_x, +typedef void (Evas_Canvas3D_Surface_Func)(Evas_Real *out_x, Evas_Real *out_y, Evas_Real *out_z, Evas_Real a, @@ -474,179 +474,179 @@ typedef void (Evas_3D_Surface_Func)(Evas_Real *out_x, * Type of 3D Object * * @since 1.10 - * @ingroup Evas_3D_Type + * @ingroup Evas_Canvas3D_Type */ -typedef enum _Evas_3D_Object_Type +typedef enum _Evas_Canvas3D_Object_Type { - EVAS_3D_OBJECT_TYPE_INVALID = 0, - EVAS_3D_OBJECT_TYPE_SCENE, - EVAS_3D_OBJECT_TYPE_NODE, - EVAS_3D_OBJECT_TYPE_CAMERA, - EVAS_3D_OBJECT_TYPE_LIGHT, - EVAS_3D_OBJECT_TYPE_MODEL, - EVAS_3D_OBJECT_TYPE_MESH, - EVAS_3D_OBJECT_TYPE_TEXTURE, - EVAS_3D_OBJECT_TYPE_MATERIAL, - EVAS_3D_OBJECT_TYPE_PRIMITIVE, -} Evas_3D_Object_Type; + EVAS_CANVAS3D_OBJECT_TYPE_INVALID = 0, + EVAS_CANVAS3D_OBJECT_TYPE_SCENE, + EVAS_CANVAS3D_OBJECT_TYPE_NODE, + EVAS_CANVAS3D_OBJECT_TYPE_CAMERA, + EVAS_CANVAS3D_OBJECT_TYPE_LIGHT, + EVAS_CANVAS3D_OBJECT_TYPE_MODEL, + EVAS_CANVAS3D_OBJECT_TYPE_MESH, + EVAS_CANVAS3D_OBJECT_TYPE_TEXTURE, + EVAS_CANVAS3D_OBJECT_TYPE_MATERIAL, + EVAS_CANVAS3D_OBJECT_TYPE_PRIMITIVE, +} Evas_Canvas3D_Object_Type; /** * State of the Evas 3D * * @since 1.10 - * @ingroup Evas_3D_Type + * @ingroup Evas_Canvas3D_Type */ -typedef enum _Evas_3D_State +typedef enum _Evas_Canvas3D_State { - EVAS_3D_STATE_MAX = 16, - - EVAS_3D_STATE_ANY = 0, - - EVAS_3D_STATE_SCENE_ROOT_NODE = 1, - EVAS_3D_STATE_SCENE_CAMERA_NODE, - EVAS_3D_STATE_SCENE_BACKGROUND_COLOR, - EVAS_3D_STATE_SCENE_SIZE, - EVAS_3D_STATE_SCENE_SHADOWS_ENABLED, - EVAS_3D_STATE_SCENE_UPDATED, - - EVAS_3D_STATE_TEXTURE_DATA = 1, - EVAS_3D_STATE_TEXTURE_WRAP, - EVAS_3D_STATE_TEXTURE_FILTER, - - EVAS_3D_STATE_MATERIAL_ID = 1, - EVAS_3D_STATE_MATERIAL_COLOR, - EVAS_3D_STATE_MATERIAL_TEXTURE, - - EVAS_3D_STATE_MESH_VERTEX_COUNT = 1, - EVAS_3D_STATE_MESH_FRAME, - EVAS_3D_STATE_MESH_MATERIAL, - EVAS_3D_STATE_MESH_TRANSFORM, - EVAS_3D_STATE_MESH_VERTEX_DATA, - EVAS_3D_STATE_MESH_INDEX_DATA, - EVAS_3D_STATE_MESH_VERTEX_ASSEMBLY, - EVAS_3D_STATE_MESH_SHADE_MODE, - EVAS_3D_STATE_MESH_FOG, - EVAS_3D_STATE_MESH_BLENDING, - EVAS_3D_STATE_MESH_ALPHA_TEST, - EVAS_3D_STATE_MESH_COLOR_PICK, - - EVAS_3D_STATE_CAMERA_PROJECTION = 1, - - EVAS_3D_STATE_LIGHT_AMBIENT = 1, - EVAS_3D_STATE_LIGHT_DIFFUSE, - EVAS_3D_STATE_LIGHT_SPECULAR, - EVAS_3D_STATE_LIGHT_SPOT_DIR, - EVAS_3D_STATE_LIGHT_SPOT_EXP, - EVAS_3D_STATE_LIGHT_SPOT_CUTOFF, - EVAS_3D_STATE_LIGHT_ATTENUATION, - EVAS_3D_STATE_LIGHT_PROJECTION, - - EVAS_3D_STATE_NODE_TRANSFORM_POSITION = 1, - EVAS_3D_STATE_NODE_TRANSFORM_ORIENTATION, - EVAS_3D_STATE_NODE_TRANSFORM_SCALE, - EVAS_3D_STATE_NODE_MESH_GEOMETRY, - EVAS_3D_STATE_NODE_MESH_MATERIAL, - EVAS_3D_STATE_NODE_MESH_FRAME, - EVAS_3D_STATE_NODE_MESH_SHADE_MODE, - EVAS_3D_STATE_NODE_MESH_MATERIAL_ID, - EVAS_3D_STATE_NODE_LIGHT, - EVAS_3D_STATE_NODE_CAMERA, - EVAS_3D_STATE_NODE_PARENT_POSITION, - EVAS_3D_STATE_NODE_PARENT_ORIENTATION, - EVAS_3D_STATE_NODE_PARENT_SCALE, - EVAS_3D_STATE_NODE_MEMBER, - EVAS_3D_STATE_NODE_PARENT_BILLBOARD, -} Evas_3D_State; + EVAS_CANVAS3D_STATE_MAX = 16, + + EVAS_CANVAS3D_STATE_ANY = 0, + + EVAS_CANVAS3D_STATE_SCENE_ROOT_NODE = 1, + EVAS_CANVAS3D_STATE_SCENE_CAMERA_NODE, + EVAS_CANVAS3D_STATE_SCENE_BACKGROUND_COLOR, + EVAS_CANVAS3D_STATE_SCENE_SIZE, + EVAS_CANVAS3D_STATE_SCENE_SHADOWS_ENABLED, + EVAS_CANVAS3D_STATE_SCENE_UPDATED, + + EVAS_CANVAS3D_STATE_TEXTURE_DATA = 1, + EVAS_CANVAS3D_STATE_TEXTURE_WRAP, + EVAS_CANVAS3D_STATE_TEXTURE_FILTER, + + EVAS_CANVAS3D_STATE_MATERIAL_ID = 1, + EVAS_CANVAS3D_STATE_MATERIAL_COLOR, + EVAS_CANVAS3D_STATE_MATERIAL_TEXTURE, + + EVAS_CANVAS3D_STATE_MESH_VERTEX_COUNT = 1, + EVAS_CANVAS3D_STATE_MESH_FRAME, + EVAS_CANVAS3D_STATE_MESH_MATERIAL, + EVAS_CANVAS3D_STATE_MESH_TRANSFORM, + EVAS_CANVAS3D_STATE_MESH_VERTEX_DATA, + EVAS_CANVAS3D_STATE_MESH_INDEX_DATA, + EVAS_CANVAS3D_STATE_MESH_VERTEX_ASSEMBLY, + EVAS_CANVAS3D_STATE_MESH_SHADE_MODE, + EVAS_CANVAS3D_STATE_MESH_FOG, + EVAS_CANVAS3D_STATE_MESH_BLENDING, + EVAS_CANVAS3D_STATE_MESH_ALPHA_TEST, + EVAS_CANVAS3D_STATE_MESH_COLOR_PICK, + + EVAS_CANVAS3D_STATE_CAMERA_PROJECTION = 1, + + EVAS_CANVAS3D_STATE_LIGHT_AMBIENT = 1, + EVAS_CANVAS3D_STATE_LIGHT_DIFFUSE, + EVAS_CANVAS3D_STATE_LIGHT_SPECULAR, + EVAS_CANVAS3D_STATE_LIGHT_SPOT_DIR, + EVAS_CANVAS3D_STATE_LIGHT_SPOT_EXP, + EVAS_CANVAS3D_STATE_LIGHT_SPOT_CUTOFF, + EVAS_CANVAS3D_STATE_LIGHT_ATTENUATION, + EVAS_CANVAS3D_STATE_LIGHT_PROJECTION, + + EVAS_CANVAS3D_STATE_NODE_TRANSFORM_POSITION = 1, + EVAS_CANVAS3D_STATE_NODE_TRANSFORM_ORIENTATION, + EVAS_CANVAS3D_STATE_NODE_TRANSFORM_SCALE, + EVAS_CANVAS3D_STATE_NODE_MESH_GEOMETRY, + EVAS_CANVAS3D_STATE_NODE_MESH_MATERIAL, + EVAS_CANVAS3D_STATE_NODE_MESH_FRAME, + EVAS_CANVAS3D_STATE_NODE_MESH_SHADE_MODE, + EVAS_CANVAS3D_STATE_NODE_MESH_MATERIAL_ID, + EVAS_CANVAS3D_STATE_NODE_LIGHT, + EVAS_CANVAS3D_STATE_NODE_CAMERA, + EVAS_CANVAS3D_STATE_NODE_PARENT_POSITION, + EVAS_CANVAS3D_STATE_NODE_PARENT_ORIENTATION, + EVAS_CANVAS3D_STATE_NODE_PARENT_SCALE, + EVAS_CANVAS3D_STATE_NODE_MEMBER, + EVAS_CANVAS3D_STATE_NODE_PARENT_BILLBOARD, +} Evas_Canvas3D_State; /** * Transform space * * @since 1.10 - * @ingroup Evas_3D_Types + * @ingroup Evas_Canvas3D_Types */ -typedef enum _Evas_3D_Space +typedef enum _Evas_Canvas3D_Space { - EVAS_3D_SPACE_LOCAL = 0, /**< Local coordinate space */ - EVAS_3D_SPACE_PARENT, /**< Parent coordinate space */ - EVAS_3D_SPACE_WORLD, /**< World coordinate space */ -} Evas_3D_Space; + EVAS_CANVAS3D_SPACE_LOCAL = 0, /**< Local coordinate space */ + EVAS_CANVAS3D_SPACE_PARENT, /**< Parent coordinate space */ + EVAS_CANVAS3D_SPACE_WORLD, /**< World coordinate space */ +} Evas_Canvas3D_Space; /** * Types of a node * * @since 1.10 - * @ingroup Evas_3D_Types + * @ingroup Evas_Canvas3D_Types */ -typedef enum _Evas_3D_Node_Type +typedef enum _Evas_Canvas3D_Node_Type { - EVAS_3D_NODE_TYPE_NODE = 0, /**< Node with no items */ - EVAS_3D_NODE_TYPE_CAMERA, /**< Node which can contain camera object */ - EVAS_3D_NODE_TYPE_LIGHT, /**< Node which can contain light object */ - EVAS_3D_NODE_TYPE_MESH, /**< Node which can contain mesh objects */ -} Evas_3D_Node_Type; + EVAS_CANVAS3D_NODE_TYPE_NODE = 0, /**< Node with no items */ + EVAS_CANVAS3D_NODE_TYPE_CAMERA, /**< Node which can contain camera object */ + EVAS_CANVAS3D_NODE_TYPE_LIGHT, /**< Node which can contain light object */ + EVAS_CANVAS3D_NODE_TYPE_MESH, /**< Node which can contain mesh objects */ +} Evas_Canvas3D_Node_Type; /** * Types of node orientation * * @since 1.13 - * @ingroup Evas_3D_Types + * @ingroup Evas_Canvas3D_Types */ -typedef enum _Evas_3D_Node_Orientation_Type +typedef enum _Evas_Canvas3D_Node_Orientation_Type { /**< Node with no orientation properties */ - EVAS_3D_NODE_ORIENTATION_TYPE_NONE = 0, + EVAS_CANVAS3D_NODE_ORIENTATION_TYPE_NONE = 0, /**< Node orientation is given as a point to look at and a vector that indicates the angle at which the subject is looking at the point */ - EVAS_3D_NODE_ORIENTATION_TYPE_LOOK_AT, + EVAS_CANVAS3D_NODE_ORIENTATION_TYPE_LOOK_AT, /**< Node orientation is given as id of another part to look at and a vector that indicates the angle at which the subject is looking at the part */ - EVAS_3D_NODE_ORIENTATION_TYPE_LOOK_TO, + EVAS_CANVAS3D_NODE_ORIENTATION_TYPE_LOOK_TO, /**< Node orientation is given as an angle and an axis to rotate around */ - EVAS_3D_NODE_ORIENTATION_TYPE_ANGLE_AXIS, + EVAS_CANVAS3D_NODE_ORIENTATION_TYPE_ANGLE_AXIS, /**< Node orientation is given as a quaternion */ - EVAS_3D_NODE_ORIENTATION_TYPE_QUATERNION, -} Evas_3D_Node_Orientation_Type; + EVAS_CANVAS3D_NODE_ORIENTATION_TYPE_QUATERNION, +} Evas_Canvas3D_Node_Orientation_Type; /** * Vertex attribute IDs * * @since 1.10 - * @ingroup Evas_3D_Types + * @ingroup Evas_Canvas3D_Types */ -typedef enum _Evas_3D_Vertex_Attrib +typedef enum _Evas_Canvas3D_Vertex_Attrib { - EVAS_3D_VERTEX_POSITION = 0, /**< Vertex position */ - EVAS_3D_VERTEX_NORMAL, /**< Vertex normal */ - EVAS_3D_VERTEX_TANGENT, /**< Vertex tangent (for normal mapping) */ - EVAS_3D_VERTEX_COLOR, /**< Vertex color */ - EVAS_3D_VERTEX_TEXCOORD, /**< Vertex texture coordinate */ -} Evas_3D_Vertex_Attrib; + EVAS_CANVAS3D_VERTEX_POSITION = 0, /**< Vertex position */ + EVAS_CANVAS3D_VERTEX_NORMAL, /**< Vertex normal */ + EVAS_CANVAS3D_VERTEX_TANGENT, /**< Vertex tangent (for normal mapping) */ + EVAS_CANVAS3D_VERTEX_COLOR, /**< Vertex color */ + EVAS_CANVAS3D_VERTEX_TEXCOORD, /**< Vertex texture coordinate */ +} Evas_Canvas3D_Vertex_Attrib; /** * Index formats * * @since 1.10 - * @ingroup Evas_3D_Types + * @ingroup Evas_Canvas3D_Types */ -typedef enum _Evas_3D_Index_Format +typedef enum _Evas_Canvas3D_Index_Format { - EVAS_3D_INDEX_FORMAT_NONE = 0, /**< Indexing is not used */ - EVAS_3D_INDEX_FORMAT_UNSIGNED_BYTE, /**< Index is of type unsigned byte */ - EVAS_3D_INDEX_FORMAT_UNSIGNED_SHORT /**< Index is of type unsigned short */ -} Evas_3D_Index_Format; + EVAS_CANVAS3D_INDEX_FORMAT_NONE = 0, /**< Indexing is not used */ + EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_BYTE, /**< Index is of type unsigned byte */ + EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_SHORT /**< Index is of type unsigned short */ +} Evas_Canvas3D_Index_Format; /** * Frustum modes * * @since 1.12 - * @ingroup Evas_3D_Types + * @ingroup Evas_Canvas3D_Types */ -typedef enum _Evas_3D_Frustum_Mode +typedef enum _Evas_Canvas3D_Frustum_Mode { - EVAS_3D_FRUSTUM_MODE_BSPHERE, - EVAS_3D_FRUSTUM_MODE_AABB, - EVAS_3D_FRUSTUM_MODE_CENTRAL_POINT -} Evas_3D_Frustum_Mode; + EVAS_CANVAS3D_FRUSTUM_MODE_BSPHERE, + EVAS_CANVAS3D_FRUSTUM_MODE_AABB, + EVAS_CANVAS3D_FRUSTUM_MODE_CENTRAL_POINT +} Evas_Canvas3D_Frustum_Mode; /** @@ -656,230 +656,230 @@ typedef enum _Evas_3D_Frustum_Mode * primitives. * * @since 1.10 - * @ingroup Evas_3D_Types + * @ingroup Evas_Canvas3D_Types */ -typedef enum _Evas_3D_Vertex_Assembly +typedef enum _Evas_Canvas3D_Vertex_Assembly { /**< A vertex is rendered as a point */ - EVAS_3D_VERTEX_ASSEMBLY_POINTS = 0, + EVAS_CANVAS3D_VERTEX_ASSEMBLY_POINTS = 0, /**< Two vertices are organized as a line */ - EVAS_3D_VERTEX_ASSEMBLY_LINES, + EVAS_CANVAS3D_VERTEX_ASSEMBLY_LINES, /**< Vertices are organized as a connected line path */ - EVAS_3D_VERTEX_ASSEMBLY_LINE_STRIP, + EVAS_CANVAS3D_VERTEX_ASSEMBLY_LINE_STRIP, /**< Vertices are organized as a closed line path */ - EVAS_3D_VERTEX_ASSEMBLY_LINE_LOOP, + EVAS_CANVAS3D_VERTEX_ASSEMBLY_LINE_LOOP, /**< Three vertices are organized as a triangle */ - EVAS_3D_VERTEX_ASSEMBLY_TRIANGLES, + EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLES, /**< Vertices are organized as connected triangles */ - EVAS_3D_VERTEX_ASSEMBLY_TRIANGLE_STRIP, + EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLE_STRIP, /**< Vertices are organized as a triangle fan */ - EVAS_3D_VERTEX_ASSEMBLY_TRIANGLE_FAN, -} Evas_3D_Vertex_Assembly; + EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLE_FAN, +} Evas_Canvas3D_Vertex_Assembly; -typedef enum _Evas_3D_Blend_Func +typedef enum _Evas_Canvas3D_Blend_Func { /**< The scale factors for color components is (0, 0, 0, 0)*/ - EVAS_3D_BLEND_ZERO = 0, + EVAS_CANVAS3D_BLEND_ZERO = 0, /**< The scale factors for color components is (1, 1, 1, 1)*/ - EVAS_3D_BLEND_ONE, + EVAS_CANVAS3D_BLEND_ONE, /**< The scale factors for color components is (Rs/kR, Gs/kG, Bs/kB, As/kA)*/ - EVAS_3D_BLEND_SRC_COLOR, + EVAS_CANVAS3D_BLEND_SRC_COLOR, /**< The scale factors for color components is (1, 1, 1, 1) - (Rs/kR, Gs/kG, Bs/kB, As/kA)*/ - EVAS_3D_BLEND_ONE_MINUS_SRC_COLOR, + EVAS_CANVAS3D_BLEND_ONE_MINUS_SRC_COLOR, /**< The scale factors for color components is (Rd/kR, Gd/kG, Bd/kB, Ad/kA)*/ - EVAS_3D_BLEND_DST_COLOR, + EVAS_CANVAS3D_BLEND_DST_COLOR, /**< The scale factors for color components is (1, 1, 1, 1) - (Rd/kR, Gd/kG, Bd/kB, Ad/kA)*/ - EVAS_3D_BLEND_ONE_MINUS_DST_COLOR, + EVAS_CANVAS3D_BLEND_ONE_MINUS_DST_COLOR, /**< The scale factors for color components is (As/kA, As/kA, As/kA, As/kA)*/ - EVAS_3D_BLEND_SRC_ALPHA, + EVAS_CANVAS3D_BLEND_SRC_ALPHA, /**< The scale factors for color components is (1, 1, 1, 1) - (As/kA, As/kA, As/kA, As/kA)*/ - EVAS_3D_BLEND_ONE_MINUS_SRC_ALPHA, + EVAS_CANVAS3D_BLEND_ONE_MINUS_SRC_ALPHA, /**< The scale factors for color components is (Ad/kA, Ad/kA, Ad/kA, Ad/kA)*/ - EVAS_3D_BLEND_DST_ALPHA, + EVAS_CANVAS3D_BLEND_DST_ALPHA, /**< The scale factors for color components is (1, 1, 1, 1) - (Ad/kA, Ad/kA, Ad/kA, Ad/kA)*/ - EVAS_3D_BLEND_ONE_MINUS_DST_ALPHA, + EVAS_CANVAS3D_BLEND_ONE_MINUS_DST_ALPHA, /**< The scale factors for color components is (Rc, Gc, Bc, Ac)*/ - EVAS_3D_BLEND_CONSTANT_COLOR, + EVAS_CANVAS3D_BLEND_CONSTANT_COLOR, /**< The scale factors for color components is (1, 1, 1, 1) - (Rc, Gc, Bc, Ac)*/ - EVAS_3D_BLEND_ONE_MINUS_CONSTANT_COLOR, + EVAS_CANVAS3D_BLEND_ONE_MINUS_CONSTANT_COLOR, /**< The scale factors for color components is (Ac, Ac, Ac, Ac)*/ - EVAS_3D_BLEND_CONSTANT_ALPHA, + EVAS_CANVAS3D_BLEND_CONSTANT_ALPHA, /**< The scale factors for color components is (1, 1, 1, 1) - (Ac, Ac, Ac, Ac)*/ - EVAS_3D_BLEND_ONE_MINUS_CONSTANT_ALPHA, + EVAS_CANVAS3D_BLEND_ONE_MINUS_CONSTANT_ALPHA, /**< The scale factors for color components is (i, i, i, 1) where i = min(As, kA, Ad)/kA*/ - EVAS_3D_BLEND_SRC_ALPHA_SATURATE, -} Evas_3D_Blend_Func; + EVAS_CANVAS3D_BLEND_SRC_ALPHA_SATURATE, +} Evas_Canvas3D_Blend_Func; /** * Comparsion functions for testing(alpha, depth, stencil) in fragment shader. * * @since 1.14 - * @ingroup Evas_3D_Types + * @ingroup Evas_Canvas3D_Types */ -typedef enum _Evas_3D_Comparison +typedef enum _Evas_Canvas3D_Comparison { /**< Never passes.*/ - EVAS_3D_COMPARISON_NEVER, + EVAS_CANVAS3D_COMPARISON_NEVER, /**< Passes if the incoming value is less than the reference value.*/ - EVAS_3D_COMPARISON_LESS, + EVAS_CANVAS3D_COMPARISON_LESS, /**< Passes if the incoming value is equal to the reference value.*/ - EVAS_3D_COMPARISON_EQUAL, + EVAS_CANVAS3D_COMPARISON_EQUAL, /**< Passes if the incoming value is less than or equal to the reference value.*/ - EVAS_3D_COMPARISON_LEQUAL, + EVAS_CANVAS3D_COMPARISON_LEQUAL, /**< Passes if the incoming value is greater than the reference value.*/ - EVAS_3D_COMPARISON_GREATER, + EVAS_CANVAS3D_COMPARISON_GREATER, /**< Passes if the incoming value is not equal to the reference value.*/ - EVAS_3D_COMPARISON_NOTEQUAL, + EVAS_CANVAS3D_COMPARISON_NOTEQUAL, /**< Passes if the incoming value is greater than or equal to the reference value.*/ - EVAS_3D_COMPARISON_GEQUAL, + EVAS_CANVAS3D_COMPARISON_GEQUAL, /**< Always passes (initial value).*/ - EVAS_3D_COMPARISON_ALWAYS, -} Evas_3D_Comparison; + EVAS_CANVAS3D_COMPARISON_ALWAYS, +} Evas_Canvas3D_Comparison; /** * Wrap modes * * @since 1.10 - * @ingroup Evas_3D_Types + * @ingroup Evas_Canvas3D_Types */ -typedef enum _Evas_3D_Wrap_Mode +typedef enum _Evas_Canvas3D_Wrap_Mode { /**< Values will be clamped to be in range [min, max] */ - EVAS_3D_WRAP_MODE_CLAMP = 0, + EVAS_CANVAS3D_WRAP_MODE_CLAMP = 0, /**< Values will be repeated */ - EVAS_3D_WRAP_MODE_REPEAT, + EVAS_CANVAS3D_WRAP_MODE_REPEAT, /**< Values will be repeated in a reflected manner */ - EVAS_3D_WRAP_MODE_REFLECT -} Evas_3D_Wrap_Mode; + EVAS_CANVAS3D_WRAP_MODE_REFLECT +} Evas_Canvas3D_Wrap_Mode; /** * Mesh primitive * * @since 1.12 - * @ingroup Evas_3D_Types + * @ingroup Evas_Canvas3D_Types */ -typedef enum _Evas_3D_Mesh_Primitive +typedef enum _Evas_Canvas3D_Mesh_Primitive { /**< An empty space */ - EVAS_3D_MESH_PRIMITIVE_NONE = 0, + EVAS_CANVAS3D_MESH_PRIMITIVE_NONE = 0, /**< One sided square */ - EVAS_3D_MESH_PRIMITIVE_SQUARE, + EVAS_CANVAS3D_MESH_PRIMITIVE_SQUARE, /**< Cube */ - EVAS_3D_MESH_PRIMITIVE_CUBE, + EVAS_CANVAS3D_MESH_PRIMITIVE_CUBE, /**< Cylinder (can use precision and texture scale) */ - EVAS_3D_MESH_PRIMITIVE_CYLINDER, + EVAS_CANVAS3D_MESH_PRIMITIVE_CYLINDER, /**< Cone (can use precision and texture scale) */ - EVAS_3D_MESH_PRIMITIVE_CONE, + EVAS_CANVAS3D_MESH_PRIMITIVE_CONE, /**< Sphere (can use precision and texture scale) */ - EVAS_3D_MESH_PRIMITIVE_SPHERE, + EVAS_CANVAS3D_MESH_PRIMITIVE_SPHERE, /**< Torus (can use ratio, precision and texture scale) */ - EVAS_3D_MESH_PRIMITIVE_TORUS, + EVAS_CANVAS3D_MESH_PRIMITIVE_TORUS, /**< Custom surface (can use pointer to users function, precision and texture scale) */ - EVAS_3D_MESH_PRIMITIVE_SURFACE, + EVAS_CANVAS3D_MESH_PRIMITIVE_SURFACE, /**< Terrain as surface with pointer to Perlin's noise function */ - EVAS_3D_MESH_PRIMITIVE_TERRAIN, + EVAS_CANVAS3D_MESH_PRIMITIVE_TERRAIN, /**< Count of supported primitives */ - EVAS_3D_MESH_PRIMITIVE_COUNT -} Evas_3D_Mesh_Primitive; + EVAS_CANVAS3D_MESH_PRIMITIVE_COUNT +} Evas_Canvas3D_Mesh_Primitive; /** * Mode of mesh primitive * * @since 1.15 - * @ingroup Evas_3D_Types + * @ingroup Evas_Canvas3D_Types */ -typedef enum _Evas_3D_Primitive_Mode +typedef enum _Evas_Canvas3D_Primitive_Mode { /**< Default mode of primitive */ - EVAS_3D_PRIMITIVE_MODE_DEFAULT = 0, + EVAS_CANVAS3D_PRIMITIVE_MODE_DEFAULT = 0, /**< Primitive without base (supported for cylinder and cone) */ - EVAS_3D_PRIMITIVE_MODE_WITHOUT_BASE, + EVAS_CANVAS3D_PRIMITIVE_MODE_WITHOUT_BASE, /**< Ptimitive with alternative UV (supported for sphere)*/ - EVAS_3D_PRIMITIVE_MODE_ALTERNATIVE_UV -} Evas_3D_Primitive_Mode; + EVAS_CANVAS3D_PRIMITIVE_MODE_ALTERNATIVE_UV +} Evas_Canvas3D_Primitive_Mode; /** * Texture filters * * @since 1.10 - * @ingroup Evas_3D_Types + * @ingroup Evas_Canvas3D_Types */ -typedef enum _Evas_3D_Texture_Filter +typedef enum _Evas_Canvas3D_Texture_Filter { /**< Samples nearest texel */ - EVAS_3D_TEXTURE_FILTER_NEAREST = 0, + EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST = 0, /**< Lineary interpolate nearby texels */ - EVAS_3D_TEXTURE_FILTER_LINEAR, + EVAS_CANVAS3D_TEXTURE_FILTER_LINEAR, /**< Nearest sampling mipmap */ - EVAS_3D_TEXTURE_FILTER_NEAREST_MIPMAP_NEAREST, + EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST_MIPMAP_NEAREST, /**< Nearest sampling mipmap and interpolate */ - EVAS_3D_TEXTURE_FILTER_LINEAR_MIPMAP_NEAREST, + EVAS_CANVAS3D_TEXTURE_FILTER_LINEAR_MIPMAP_NEAREST, /**< Linear sampling in nearest mipmap */ - EVAS_3D_TEXTURE_FILTER_NEAREST_MIPMAP_LINEAR, + EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST_MIPMAP_LINEAR, /**< Linear sampling in mipmap and interpolate */ - EVAS_3D_TEXTURE_FILTER_LINEAR_MIPMAP_LINEAR -} Evas_3D_Texture_Filter; + EVAS_CANVAS3D_TEXTURE_FILTER_LINEAR_MIPMAP_LINEAR +} Evas_Canvas3D_Texture_Filter; /** * Shade modes * * @since 1.10 - * @ingroup Evas_3D_Types + * @ingroup Evas_Canvas3D_Types */ -typedef enum _Evas_3D_Shade_Mode +typedef enum _Evas_Canvas3D_Shade_Mode { /**< Shaded using vertex color attribute */ - EVAS_3D_SHADE_MODE_VERTEX_COLOR = 0, + EVAS_CANVAS3D_SHADE_MODE_VERTEX_COLOR = 0, /**< Shaded using material diffuse term */ - EVAS_3D_SHADE_MODE_DIFFUSE, + EVAS_CANVAS3D_SHADE_MODE_DIFFUSE, /**< Per-vertex flat lighting */ - EVAS_3D_SHADE_MODE_FLAT, + EVAS_CANVAS3D_SHADE_MODE_FLAT, /**< Per-pixel phong shading */ - EVAS_3D_SHADE_MODE_PHONG, + EVAS_CANVAS3D_SHADE_MODE_PHONG, /**< Per-pixel normal map shading */ - EVAS_3D_SHADE_MODE_NORMAL_MAP, + EVAS_CANVAS3D_SHADE_MODE_NORMAL_MAP, /**< fragment color is defined by its z-coord*/ - EVAS_3D_SHADE_MODE_SHADOW_MAP_RENDER, + EVAS_CANVAS3D_SHADE_MODE_SHADOW_MAP_RENDER, /**< rendering to additional frame bufer*/ - EVAS_3D_SHADE_MODE_COLOR_PICK, + EVAS_CANVAS3D_SHADE_MODE_COLOR_PICK, /**< Per-pixel parallax occlusion map shading */ - EVAS_3D_SHADE_MODE_PARALLAX_OCCLUSION, -} Evas_3D_Shade_Mode; + EVAS_CANVAS3D_SHADE_MODE_PARALLAX_OCCLUSION, +} Evas_Canvas3D_Shade_Mode; /** * Material attributes * * @since 1.10 - * @ingroup Evas_3D_Types + * @ingroup Evas_Canvas3D_Types */ -typedef enum _Evas_3D_Material_Attrib +typedef enum _Evas_Canvas3D_Material_Attrib { - EVAS_3D_MATERIAL_AMBIENT = 0, /**< Ambient term */ - EVAS_3D_MATERIAL_DIFFUSE, /**< Diffuse term */ - EVAS_3D_MATERIAL_SPECULAR, /**< Specular term */ - EVAS_3D_MATERIAL_EMISSION, /**< Emission term */ - EVAS_3D_MATERIAL_NORMAL, /**< Normal map term */ -} Evas_3D_Material_Attrib; + EVAS_CANVAS3D_MATERIAL_AMBIENT = 0, /**< Ambient term */ + EVAS_CANVAS3D_MATERIAL_DIFFUSE, /**< Diffuse term */ + EVAS_CANVAS3D_MATERIAL_SPECULAR, /**< Specular term */ + EVAS_CANVAS3D_MATERIAL_EMISSION, /**< Emission term */ + EVAS_CANVAS3D_MATERIAL_NORMAL, /**< Normal map term */ +} Evas_Canvas3D_Material_Attrib; #include "canvas/evas_image.eo.h" -#include "canvas/evas_3d_camera.eo.h" +#include "canvas/evas_canvas3d_camera.eo.h" -#include "canvas/evas_3d_texture.eo.h" +#include "canvas/evas_canvas3d_texture.eo.h" -#include "canvas/evas_3d_material.eo.h" +#include "canvas/evas_canvas3d_material.eo.h" -#include "canvas/evas_3d_light.eo.h" +#include "canvas/evas_canvas3d_light.eo.h" -#include "canvas/evas_3d_mesh.eo.h" +#include "canvas/evas_canvas3d_mesh.eo.h" -#include "canvas/evas_3d_primitive.eo.h" +#include "canvas/evas_canvas3d_primitive.eo.h" -#include "canvas/evas_3d_node.eo.h" +#include "canvas/evas_canvas3d_node.eo.h" -#include "canvas/evas_3d_scene.eo.h" +#include "canvas/evas_canvas3d_scene.eo.h" -#include "canvas/evas_3d_object.eo.h" +#include "canvas/evas_canvas3d_object.eo.h" /** * @ingroup Evas_Object_VG diff --git a/src/lib/evas/canvas/evas_3d_material.c b/src/lib/evas/canvas/evas_3d_material.c deleted file mode 100644 index 5d609cab24..0000000000 --- a/src/lib/evas/canvas/evas_3d_material.c +++ /dev/null @@ -1,207 +0,0 @@ -#include "evas_common_private.h" -#include "evas_private.h" - -#define MY_CLASS EVAS_3D_MATERIAL_CLASS - -static Eina_Bool -_material_mesh_change_notify(const Eina_Hash *hash EINA_UNUSED, const void *key, - void *data EINA_UNUSED, void *fdata) -{ - Evas_3D_Mesh *m = *(Evas_3D_Mesh **)key; - eo_do(m, evas_3d_object_change(EVAS_3D_STATE_MESH_MATERIAL, (Evas_3D_Object *)fdata)); - return EINA_TRUE; -} - -EOLIAN static void -_evas_3d_material_evas_3d_object_change_notify(Eo *obj, Evas_3D_Material_Data *pd, Evas_3D_State state EINA_UNUSED, Evas_3D_Object *ref EINA_UNUSED) -{ - if (pd->meshes) - eina_hash_foreach(pd->meshes, _material_mesh_change_notify, obj); -} - -EOLIAN static void -_evas_3d_material_evas_3d_object_update_notify(Eo *obj EINA_UNUSED, Evas_3D_Material_Data *pd) -{ - int i; - for (i = 0; i < EVAS_3D_MATERIAL_ATTRIB_COUNT; i++) - { - if (pd->attribs[i].enable) - { - if (pd->attribs[i].texture) - { - eo_do(pd->attribs[i].texture, evas_3d_object_update()); - } - } - } -} - -void -evas_3d_material_mesh_add(Evas_3D_Material *material, Evas_3D_Mesh *mesh) -{ - int count = 0; - Evas_3D_Material_Data *pd = eo_data_scope_get(material, MY_CLASS); - - if (pd->meshes == NULL) - { - pd->meshes = eina_hash_pointer_new(NULL); - - if (pd->meshes == NULL) - { - ERR("Failed to create hash table."); - return; - } - } - else - count = (int)(uintptr_t)eina_hash_find(pd->meshes, &mesh); - - eina_hash_set(pd->meshes, &mesh, (const void *)(uintptr_t)(count + 1)); -} - -void -evas_3d_material_mesh_del(Evas_3D_Material *material, Evas_3D_Mesh *mesh) -{ - int count = 0; - Evas_3D_Material_Data *pd = eo_data_scope_get(material, MY_CLASS); - - if (pd->meshes == NULL) - { - ERR("No mesh to delete."); - return; - } - - count = (int)(uintptr_t)eina_hash_find(pd->meshes, &mesh); - - if (count == 1) - eina_hash_del(pd->meshes, &mesh, NULL); - else - eina_hash_set(pd->meshes, &mesh, (const void *)(uintptr_t)(count - 1)); -} - - -EAPI Evas_3D_Material * -evas_3d_material_add(Evas *e) -{ - MAGIC_CHECK(e, Evas, MAGIC_EVAS); - return NULL; - MAGIC_CHECK_END(); - Evas_Object *eo_obj = eo_add(MY_CLASS, e); - return eo_obj; -} - -EOLIAN static Eo * -_evas_3d_material_eo_base_constructor(Eo *obj EINA_UNUSED, Evas_3D_Material_Data *pd) -{ - obj = eo_do_super_ret(obj, MY_CLASS, obj, eo_constructor()); - eo_do(obj, evas_3d_object_type_set(EVAS_3D_OBJECT_TYPE_MATERIAL)); - - evas_color_set(&pd->attribs[EVAS_3D_MATERIAL_AMBIENT].color, 0.2, 0.2, 0.2, 1.0); - evas_color_set(&pd->attribs[EVAS_3D_MATERIAL_DIFFUSE].color, 0.8, 0.8, 0.8, 1.0); - evas_color_set(&pd->attribs[EVAS_3D_MATERIAL_SPECULAR].color, 1.0, 1.0, 1.0, 1.0); - evas_color_set(&pd->attribs[EVAS_3D_MATERIAL_EMISSION].color, 0.0, 0.0, 0.0, 1.0); - pd->shininess = 150.0; - - return obj; -} - -EOLIAN static void -_evas_3d_material_eo_base_destructor(Eo *obj, Evas_3D_Material_Data *pd) -{ - int i = 0; - Eina_Iterator *it = NULL; - void *data = NULL; - Evas_3D_Mesh_Data *mesh = NULL; - Eina_List *l = NULL; - Evas_3D_Mesh_Frame *f = NULL; - - if (pd->meshes) - { - it = eina_hash_iterator_key_new(pd->meshes); - while (eina_iterator_next(it, &data)) - { - mesh = eo_data_scope_get(data, EVAS_3D_MESH_CLASS); - if (mesh->frames) - { - EINA_LIST_FOREACH(mesh->frames, l, f) - f->material = NULL; - } - } - eina_iterator_free(it); - eina_hash_free(pd->meshes); - } - - for (i = 0; i < EVAS_3D_MATERIAL_ATTRIB_COUNT; i++) - { - if (pd->attribs[i].texture) - { - evas_3d_texture_material_del(pd->attribs[i].texture, obj); - } - } - eo_do_super(obj, MY_CLASS, eo_destructor()); -} - -EOLIAN static void -_evas_3d_material_enable_set(Eo *obj EINA_UNUSED, Evas_3D_Material_Data *pd, Evas_3D_Material_Attrib attrib, Eina_Bool enable) -{ - pd->attribs[attrib].enable = enable; -} - -EOLIAN static Eina_Bool -_evas_3d_material_enable_get(Eo *obj EINA_UNUSED, Evas_3D_Material_Data *pd, Evas_3D_Material_Attrib attrib) -{ - return pd->attribs[attrib].enable; -} - -EOLIAN static void -_evas_3d_material_color_set(Eo *obj, Evas_3D_Material_Data *pd, Evas_3D_Material_Attrib attrib, Evas_Real r, Evas_Real g, Evas_Real b, Evas_Real a) -{ - evas_color_set(&pd->attribs[attrib].color, r, g, b, a); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_MATERIAL_COLOR, NULL)); -} - -EOLIAN static void -_evas_3d_material_color_get(Eo *obj EINA_UNUSED, Evas_3D_Material_Data *pd, Evas_3D_Material_Attrib attrib, Evas_Real *r, Evas_Real *g, Evas_Real *b, Evas_Real *a) -{ - if (r) *r = pd->attribs[attrib].color.r; - if (g) *g = pd->attribs[attrib].color.g; - if (b) *b = pd->attribs[attrib].color.b; - if (a) *a = pd->attribs[attrib].color.a; -} - -EOLIAN static void -_evas_3d_material_shininess_set(Eo *obj EINA_UNUSED, Evas_3D_Material_Data *pd, Evas_Real shininess) -{ - pd->shininess = shininess; -} - -EOLIAN static Evas_Real -_evas_3d_material_shininess_get(Eo *obj EINA_UNUSED, Evas_3D_Material_Data *pd) -{ - return pd->shininess; -} - -EOLIAN static void -_evas_3d_material_texture_set(Eo *obj, Evas_3D_Material_Data *pd, Evas_3D_Material_Attrib attrib, Evas_3D_Texture *texture) -{ - if (pd->attribs[attrib].texture != texture) - { - if (pd->attribs[attrib].texture) - { - evas_3d_texture_material_del(pd->attribs[attrib].texture, obj); - eo_unref(pd->attribs[attrib].texture); - } - - pd->attribs[attrib].texture = texture; - evas_3d_texture_material_add(texture, obj); - eo_ref(texture); - } - - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_MATERIAL_TEXTURE, NULL)); -} - -EOLIAN static Evas_3D_Texture * -_evas_3d_material_texture_get(Eo *obj EINA_UNUSED, Evas_3D_Material_Data *pd, Evas_3D_Material_Attrib attrib) -{ - return pd->attribs[attrib].texture; -} - -#include "canvas/evas_3d_material.eo.c" diff --git a/src/lib/evas/canvas/evas_3d_object.c b/src/lib/evas/canvas/evas_3d_object.c deleted file mode 100644 index 5776fde511..0000000000 --- a/src/lib/evas/canvas/evas_3d_object.c +++ /dev/null @@ -1,89 +0,0 @@ -#include "evas_common_private.h" -#include "evas_private.h" - -#define MY_CLASS EVAS_3D_OBJECT_CLASS - -EOLIAN static Eo * -_evas_3d_object_eo_base_constructor(Eo *obj, Evas_3D_Object_Data *pd) -{ - Eo *e = NULL; - obj = eo_do_super_ret(obj, MY_CLASS, obj, eo_constructor()); - eo_do(obj, e = eo_parent_get()); - pd->evas = e; - pd->type = EVAS_3D_OBJECT_TYPE_INVALID; - memset(&pd->dirty[0], 0x00, sizeof(Eina_Bool) * EVAS_3D_STATE_MAX); - - return obj; -} - -EOLIAN static Evas * - _evas_3d_object_evas_common_interface_evas_get(Eo *obj EINA_UNUSED, Evas_3D_Object_Data *pd) -{ - return pd->evas; -} - -EOLIAN static void -_evas_3d_object_type_set(Eo *obj EINA_UNUSED, Evas_3D_Object_Data *pd, Evas_3D_Object_Type type) -{ - pd->type = type; -} - -EOLIAN static Evas_3D_Object_Type -_evas_3d_object_type_get(Eo *obj EINA_UNUSED, Evas_3D_Object_Data *pd) -{ - return pd->type; -} - -EOLIAN static Eina_Bool -_evas_3d_object_dirty_get(Eo *obj EINA_UNUSED, Evas_3D_Object_Data *pd, Evas_3D_State state) -{ - return pd->dirty[state]; -} - -EOLIAN static void -_evas_3d_object_change(Eo *obj, Evas_3D_Object_Data *pd, Evas_3D_State state, Evas_3D_Object *ref) -{ - /* Skip already dirty properties. */ - if (pd->dirty[state]) - return; - - pd->dirty[state] = EINA_TRUE; - pd->dirty[EVAS_3D_STATE_ANY] = EINA_TRUE; - - eo_do(obj, evas_3d_object_change_notify(state, ref)); -} - -EOLIAN static void -_evas_3d_object_update(Eo *obj, Evas_3D_Object_Data *pd) -{ - if (!pd->dirty[EVAS_3D_STATE_ANY]) - return; - - eo_do(obj, evas_3d_object_update_notify()); - - memset(&pd->dirty[0], 0x00, sizeof(Eina_Bool) * EVAS_3D_STATE_MAX); -} - -EOLIAN static void -_evas_3d_object_eo_base_event_callback_priority_add(Eo *obj, - Evas_3D_Object_Data *pd EINA_UNUSED, - const Eo_Event_Description *desc, - Eo_Callback_Priority priority, - Eo_Event_Cb func, - const void *user_data) -{ - eo_do_super(obj, MY_CLASS, eo_event_callback_priority_add(desc, priority, func, user_data)); - eo_do(obj, evas_3d_object_callback_register(desc->name, user_data)); -} - -EOLIAN static void -_evas_3d_object_eo_base_event_callback_del(Eo *obj, Evas_3D_Object_Data *pd EINA_UNUSED, - const Eo_Event_Description *desc, - Eo_Event_Cb func, - const void *user_data) -{ - eo_do_super(obj, MY_CLASS, eo_event_callback_del(desc, func, user_data)); - eo_do(obj, evas_3d_object_callback_unregister(desc->name)); -} - -#include "canvas/evas_3d_object.eo.c" diff --git a/src/lib/evas/canvas/evas_3d_primitive.c b/src/lib/evas/canvas/evas_3d_primitive.c deleted file mode 100644 index bc5bf1bd87..0000000000 --- a/src/lib/evas/canvas/evas_3d_primitive.c +++ /dev/null @@ -1,153 +0,0 @@ -#include "evas_common_private.h" -#include "evas_private.h" - -#define MY_CLASS EVAS_3D_PRIMITIVE_CLASS - -static inline void -_primitive_init(Evas_3D_Primitive_Data *pd) -{ - pd->form = EVAS_3D_MESH_PRIMITIVE_NONE; - pd->ratio = 3.0; - pd->precision = 10; - pd->surface = NULL; - pd->tex_scale.x = 1.0; - pd->tex_scale.y = 1.0; -} - -EAPI Evas_3D_Primitive * -evas_3d_primitive_add(Evas *e) -{ - MAGIC_CHECK(e, Evas, MAGIC_EVAS); - return NULL; - MAGIC_CHECK_END(); - Evas_Object *eo_obj = eo_add(MY_CLASS, e); - return eo_obj; -} - -EOLIAN static Eo * -_evas_3d_primitive_eo_base_constructor(Eo *obj, Evas_3D_Primitive_Data *pd) -{ - obj = eo_do_super_ret(obj, MY_CLASS, obj, eo_constructor()); - eo_do(obj, evas_3d_object_type_set(EVAS_3D_OBJECT_TYPE_PRIMITIVE)); - _primitive_init(pd); - - return obj; -} - -EOLIAN static void -_evas_3d_primitive_eo_base_destructor(Eo *obj, Evas_3D_Primitive_Data *pd EINA_UNUSED) -{ - eo_do_super(obj, MY_CLASS, eo_destructor()); -} - -EOLIAN static void -_evas_3d_primitive_form_set(Eo *obj EINA_UNUSED, - Evas_3D_Primitive_Data *pd, - Evas_3D_Mesh_Primitive form) -{ - if (form >= EVAS_3D_MESH_PRIMITIVE_COUNT) - { - ERR("Wrong form of primitive."); - return; - } - - if (pd->form != form) - pd->form = form; -} - -EOLIAN static Evas_3D_Mesh_Primitive -_evas_3d_primitive_form_get(Eo *obj EINA_UNUSED, - Evas_3D_Primitive_Data *pd) -{ - return pd->form; -} - -EOLIAN static void -_evas_3d_primitive_mode_set(Eo *obj EINA_UNUSED, - Evas_3D_Primitive_Data *pd, - Evas_3D_Primitive_Mode mode) -{ - if (pd->mode != mode) - pd->mode = mode; -} - -EOLIAN static Evas_3D_Primitive_Mode -_evas_3d_primitive_mode_get(Eo *obj EINA_UNUSED, - Evas_3D_Primitive_Data *pd) -{ - return pd->mode; -} - -EOLIAN static void -_evas_3d_primitive_ratio_set(Eo *obj EINA_UNUSED, - Evas_3D_Primitive_Data *pd, - Evas_Real ratio) -{ - pd->ratio = ratio; -} - -EOLIAN static Evas_Real -_evas_3d_primitive_ratio_get(Eo *obj EINA_UNUSED, - Evas_3D_Primitive_Data *pd) -{ - return pd->ratio; -} - -EOLIAN static void -_evas_3d_primitive_precision_set(Eo *obj EINA_UNUSED, - Evas_3D_Primitive_Data *pd, - int precision) -{ - if ((precision < 3)) - { - ERR("Precision of Evas_3D_Primitive cannot be less than 3."); - return; - } - - if ((precision >= 100)) - { - ERR("%s\n%s", - "Be careful with precision of Evas_3D_Primitive more than 100.", - "It can give unacceptable result."); - } - - if (pd->precision != precision) - pd->precision = precision; -} - -EOLIAN static int -_evas_3d_primitive_precision_get(Eo *obj EINA_UNUSED, - Evas_3D_Primitive_Data *pd) -{ - return pd->precision; -} - -EOLIAN static void -_evas_3d_primitive_surface_set(Eo *obj EINA_UNUSED, - Evas_3D_Primitive_Data *pd, - Evas_3D_Surface_Func surface_func) -{ - pd->surface = surface_func; -} - -EOLIAN static void -_evas_3d_primitive_tex_scale_set(Eo *obj EINA_UNUSED, - Evas_3D_Primitive_Data *pd, - Evas_Real x, - Evas_Real y) -{ - if (x) pd->tex_scale.x = x; - if (y) pd->tex_scale.y = y; -} - -EOLIAN static void -_evas_3d_primitive_tex_scale_get(Eo *obj EINA_UNUSED, - Evas_3D_Primitive_Data *pd, - Evas_Real *x, - Evas_Real *y) -{ - if (x) *x = pd->tex_scale.x; - if (y) *y = pd->tex_scale.y; -} - -#include "canvas/evas_3d_primitive.eo.c" diff --git a/src/lib/evas/canvas/evas_3d_camera.c b/src/lib/evas/canvas/evas_canvas3d_camera.c index 8467f8e0b0..f6b85af8b7 100644 --- a/src/lib/evas/canvas/evas_3d_camera.c +++ b/src/lib/evas/canvas/evas_canvas3d_camera.c @@ -1,34 +1,34 @@ #include "evas_common_private.h" #include "evas_private.h" -#define MY_CLASS EVAS_3D_CAMERA_CLASS +#define MY_CLASS EVAS_CANVAS3D_CAMERA_CLASS static Eina_Bool _camera_node_change_notify(const Eina_Hash *hash EINA_UNUSED, const void *key, void *data EINA_UNUSED, void *fdata) { - Evas_3D_Node *n = *(Evas_3D_Node **)key; - eo_do(n, evas_3d_object_change(EVAS_3D_STATE_NODE_CAMERA, (Evas_3D_Object *)fdata)); + Evas_Canvas3D_Node *n = *(Evas_Canvas3D_Node **)key; + eo_do(n, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_CAMERA, (Evas_Canvas3D_Object *)fdata)); return EINA_TRUE; } EOLIAN static void -_evas_3d_camera_evas_3d_object_change_notify(Eo *obj,Evas_3D_Camera_Data *pd, Evas_3D_State state EINA_UNUSED, Evas_3D_Object *ref EINA_UNUSED) +_evas_canvas3d_camera_evas_canvas3d_object_change_notify(Eo *obj,Evas_Canvas3D_Camera_Data *pd, Evas_Canvas3D_State state EINA_UNUSED, Evas_Canvas3D_Object *ref EINA_UNUSED) { if (pd->nodes) eina_hash_foreach(pd->nodes, _camera_node_change_notify, obj); } EOLIAN static void -_evas_3d_camera_evas_3d_object_update_notify(Eo *obj EINA_UNUSED, - Evas_3D_Camera_Data *pd EINA_UNUSED) +_evas_canvas3d_camera_evas_canvas3d_object_update_notify(Eo *obj EINA_UNUSED, + Evas_Canvas3D_Camera_Data *pd EINA_UNUSED) { } void -evas_3d_camera_node_add(Evas_3D_Camera *camera, Evas_3D_Node *node) +evas_canvas3d_camera_node_add(Evas_Canvas3D_Camera *camera, Evas_Canvas3D_Node *node) { - Evas_3D_Camera_Data *pd = eo_data_scope_get(camera, MY_CLASS); + Evas_Canvas3D_Camera_Data *pd = eo_data_scope_get(camera, MY_CLASS); int count = 0; if (!pd->nodes) @@ -46,9 +46,9 @@ evas_3d_camera_node_add(Evas_3D_Camera *camera, Evas_3D_Node *node) } void -evas_3d_camera_node_del(Evas_3D_Camera *camera, Evas_3D_Node *node) +evas_canvas3d_camera_node_del(Evas_Canvas3D_Camera *camera, Evas_Canvas3D_Node *node) { - Evas_3D_Camera_Data *pd = eo_data_scope_get(camera, MY_CLASS); + Evas_Canvas3D_Camera_Data *pd = eo_data_scope_get(camera, MY_CLASS); int count = 0; if (!pd->nodes) @@ -63,29 +63,29 @@ evas_3d_camera_node_del(Evas_3D_Camera *camera, Evas_3D_Node *node) } EOLIAN static Eo * -_evas_3d_camera_eo_base_constructor(Eo *obj, - Evas_3D_Camera_Data *pd EINA_UNUSED) +_evas_canvas3d_camera_eo_base_constructor(Eo *obj, + Evas_Canvas3D_Camera_Data *pd EINA_UNUSED) { obj = eo_do_super_ret(obj, MY_CLASS, obj, eo_constructor()); - eo_do(obj, evas_3d_object_type_set(EVAS_3D_OBJECT_TYPE_CAMERA)); + eo_do(obj, evas_canvas3d_object_type_set(EVAS_CANVAS3D_OBJECT_TYPE_CAMERA)); return obj; } EOLIAN static void -_evas_3d_camera_eo_base_destructor(Eo *obj, - Evas_3D_Camera_Data *pd) +_evas_canvas3d_camera_eo_base_destructor(Eo *obj, + Evas_Canvas3D_Camera_Data *pd) { Eina_Iterator *it = NULL; void *data = NULL; - Evas_3D_Node_Data *node = NULL; + Evas_Canvas3D_Node_Data *node = NULL; if (pd->nodes) { it = eina_hash_iterator_key_new(pd->nodes); while (eina_iterator_next(it, &data)) { - node = eo_data_scope_get(data, EVAS_3D_NODE_CLASS); + node = eo_data_scope_get(data, EVAS_CANVAS3D_NODE_CLASS); node->data.camera.camera = NULL; } @@ -95,8 +95,8 @@ _evas_3d_camera_eo_base_destructor(Eo *obj, eo_do_super(obj, MY_CLASS, eo_destructor()); } -EAPI Evas_3D_Camera * -evas_3d_camera_add(Evas *e) +EAPI Evas_Canvas3D_Camera * +evas_canvas3d_camera_add(Evas *e) { MAGIC_CHECK(e, Evas, MAGIC_EVAS); return NULL; @@ -106,23 +106,23 @@ evas_3d_camera_add(Evas *e) } EOLIAN static void -_evas_3d_camera_projection_matrix_set(Eo *obj, Evas_3D_Camera_Data *pd, +_evas_canvas3d_camera_projection_matrix_set(Eo *obj, Evas_Canvas3D_Camera_Data *pd, const Evas_Real *matrix) { evas_mat4_array_set(&pd->projection, matrix); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_CAMERA_PROJECTION, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_CAMERA_PROJECTION, NULL)); } EOLIAN static void -_evas_3d_camera_projection_matrix_get(Eo *obj EINA_UNUSED, - Evas_3D_Camera_Data *pd, +_evas_canvas3d_camera_projection_matrix_get(Eo *obj EINA_UNUSED, + Evas_Canvas3D_Camera_Data *pd, Evas_Real *matrix) { memcpy(matrix, &pd->projection.m[0], sizeof(Evas_Real) * 16); } EOLIAN static void -_evas_3d_camera_projection_perspective_set(Eo *obj, Evas_3D_Camera_Data *pd, +_evas_canvas3d_camera_projection_perspective_set(Eo *obj, Evas_Canvas3D_Camera_Data *pd, Evas_Real fovy, Evas_Real aspect, Evas_Real dnear, Evas_Real dfar) { @@ -133,45 +133,45 @@ _evas_3d_camera_projection_perspective_set(Eo *obj, Evas_3D_Camera_Data *pd, xmax = ymax * aspect; evas_mat4_frustum_set(&pd->projection, -xmax, xmax, -ymax, ymax, dnear, dfar); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_CAMERA_PROJECTION, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_CAMERA_PROJECTION, NULL)); } EOLIAN static void -_evas_3d_camera_projection_frustum_set(Eo *obj, Evas_3D_Camera_Data *pd, +_evas_canvas3d_camera_projection_frustum_set(Eo *obj, Evas_Canvas3D_Camera_Data *pd, Evas_Real left, Evas_Real right, Evas_Real bottom, Evas_Real top, Evas_Real dnear, Evas_Real dfar) { evas_mat4_frustum_set(&pd->projection, left, right, bottom, top, dnear, dfar); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_CAMERA_PROJECTION, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_CAMERA_PROJECTION, NULL)); } EOLIAN static void -_evas_3d_camera_projection_ortho_set(Eo *obj, Evas_3D_Camera_Data *pd, +_evas_canvas3d_camera_projection_ortho_set(Eo *obj, Evas_Canvas3D_Camera_Data *pd, Evas_Real left, Evas_Real right, Evas_Real bottom, Evas_Real top, Evas_Real dnear, Evas_Real dfar) { evas_mat4_ortho_set(&pd->projection, left, right, bottom, top, dnear, dfar); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_CAMERA_PROJECTION, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_CAMERA_PROJECTION, NULL)); } EOLIAN static Eina_Bool -_evas_3d_camera_node_visible_get(Eo *obj EINA_UNUSED, Evas_3D_Camera_Data *pd, Evas_3D_Node *camera_node, Evas_3D_Node *node, Evas_3D_Frustum_Mode key) +_evas_canvas3d_camera_node_visible_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Camera_Data *pd, Evas_Canvas3D_Node *camera_node, Evas_Canvas3D_Node *node, Evas_Canvas3D_Frustum_Mode key) { Evas_Mat4 matrix_vp; Evas_Vec4 planes[6]; - Evas_3D_Node_Data *pd_node = eo_data_scope_get(node, EVAS_3D_NODE_CLASS); - Evas_3D_Node_Data *pd_camera = eo_data_scope_get(camera_node, EVAS_3D_NODE_CLASS); + Evas_Canvas3D_Node_Data *pd_node = eo_data_scope_get(node, EVAS_CANVAS3D_NODE_CLASS); + Evas_Canvas3D_Node_Data *pd_camera = eo_data_scope_get(camera_node, EVAS_CANVAS3D_NODE_CLASS); Evas_Vec3 central_point; - if (!node || pd_node->type != EVAS_3D_NODE_TYPE_MESH) + if (!node || pd_node->type != EVAS_CANVAS3D_NODE_TYPE_MESH) { ERR("Mesh node %p type mismatch.", node); return EINA_FALSE; } - if (!camera_node || pd_camera->type != EVAS_3D_NODE_TYPE_CAMERA) + if (!camera_node || pd_camera->type != EVAS_CANVAS3D_NODE_TYPE_CAMERA) { ERR("Camera node %p type mismatch.", camera_node); return EINA_FALSE; @@ -182,11 +182,11 @@ _evas_3d_camera_node_visible_get(Eo *obj EINA_UNUSED, Evas_3D_Camera_Data *pd, E evas_frustum_calculate(planes, &matrix_vp); - if (key == EVAS_3D_FRUSTUM_MODE_BSPHERE) + if (key == EVAS_CANVAS3D_FRUSTUM_MODE_BSPHERE) return evas_is_sphere_in_frustum(&pd_node->bsphere, planes); - else if (key == EVAS_3D_FRUSTUM_MODE_AABB) + else if (key == EVAS_CANVAS3D_FRUSTUM_MODE_AABB) return evas_is_box_in_frustum(&pd_node->aabb, planes); - else if (key == EVAS_3D_FRUSTUM_MODE_CENTRAL_POINT) + else if (key == EVAS_CANVAS3D_FRUSTUM_MODE_CENTRAL_POINT) { central_point.x = (pd_node->aabb.p0.x + pd_node->aabb.p1.x) / 2; central_point.y = (pd_node->aabb.p0.y + pd_node->aabb.p1.y) / 2; @@ -200,5 +200,5 @@ _evas_3d_camera_node_visible_get(Eo *obj EINA_UNUSED, Evas_3D_Camera_Data *pd, E } } -#include "canvas/evas_3d_camera.eo.c" +#include "canvas/evas_canvas3d_camera.eo.c" diff --git a/src/lib/evas/canvas/evas_3d_camera.eo b/src/lib/evas/canvas/evas_canvas3d_camera.eo index eb2a01f4bf..8510a443b7 100644 --- a/src/lib/evas/canvas/evas_3d_camera.eo +++ b/src/lib/evas/canvas/evas_canvas3d_camera.eo @@ -1,7 +1,7 @@ -class Evas_3D_Camera (Evas_3D_Object, Evas.Common_Interface) +class Evas_Canvas3D_Camera (Evas_Canvas3D_Object, Evas.Common_Interface) { legacy_prefix: null; - data: Evas_3D_Camera_Data; + data: Evas_Canvas3D_Camera_Data; methods { projection_matrix_set { /*@ @@ -12,11 +12,11 @@ class Evas_3D_Camera (Evas_3D_Object, Evas.Common_Interface) Default projection matrix is identity matrix. - @see evas_3d_camera_projection_perspective_set() - @see evas_3d_camera_projection_ortho_set() - @see evas_3d_camera_projection_frustum_set() + @see evas_canvas3d_camera_projection_perspective_set() + @see evas_canvas3d_camera_projection_ortho_set() + @see evas_canvas3d_camera_projection_frustum_set() - @ingroup Evas_3D_Camera + @ingroup Evas_Canvas3D_Camera */ params { @in matrix: const(Evas_Real)*; /*@ Projection Matrix */ @@ -30,9 +30,9 @@ class Evas_3D_Camera (Evas_3D_Object, Evas.Common_Interface) @param camera The given camera. @param matrix Pointer to receive the 16 Evas_Real values in column major order. - @see evas_3d_camera_projection_matrix_set() + @see evas_canvas3d_camera_projection_matrix_set() - @ingroup Evas_3D_Camera + @ingroup Evas_Canvas3D_Camera */ params { @out matrix: Evas_Real; /*@ Projection Matrix */ @@ -49,9 +49,9 @@ class Evas_3D_Camera (Evas_3D_Object, Evas.Common_Interface) @param dnear Distance to near clipping plane. @param dfar Distance to far clipping plane. - @see evas_3d_camera_projection_matrix_set() + @see evas_canvas3d_camera_projection_matrix_set() - @ingroup Evas_3D_Camera + @ingroup Evas_Canvas3D_Camera */ params { @@ -66,9 +66,9 @@ class Evas_3D_Camera (Evas_3D_Object, Evas.Common_Interface) /*@ Set the projection matrix of the given camera with frustum projection. - @see evas_3d_camera_projection_matrix_set() + @see evas_canvas3d_camera_projection_matrix_set() - @ingroup Evas_3D_Camera + @ingroup Evas_Canvas3D_Camera */ params { left: Evas_Real; /*@ Left X coordinate of the near clipping plane. */ @@ -83,9 +83,9 @@ class Evas_3D_Camera (Evas_3D_Object, Evas.Common_Interface) /*@ Set the projection matrix of the given camera with orthogonal projection. - @see evas_3d_camera_projection_matrix_set() + @see evas_canvas3d_camera_projection_matrix_set() - @ingroup Evas_3D_Camera + @ingroup Evas_Canvas3D_Camera */ params { left: Evas_Real; /*@ Left X coordinate of the near clipping plane. */ @@ -106,13 +106,13 @@ class Evas_3D_Camera (Evas_3D_Object, Evas.Common_Interface) * If the nodes are @ NULL or nodes type mismatch error wrong type of nodes will be generated and returned @ EINA_FALSE. - * @ingroup Evas_3D_Camera + * @ingroup Evas_Canvas3D_Camera */ return: bool; params { - @in camera_node: Evas_3D_Node *; - @in node: Evas_3D_Node *; - @in key: Evas_3D_Frustum_Mode; + @in camera_node: Evas_Canvas3D_Node *; + @in node: Evas_Canvas3D_Node *; + @in key: Evas_Canvas3D_Frustum_Mode; } } } @@ -120,8 +120,8 @@ class Evas_3D_Camera (Evas_3D_Object, Evas.Common_Interface) implements { Eo.Base.constructor; Eo.Base.destructor; - Evas_3D_Object.update_notify; - Evas_3D_Object.change_notify; + Evas_Canvas3D_Object.update_notify; + Evas_Canvas3D_Object.change_notify; } } diff --git a/src/lib/evas/canvas/evas_3d_eet.c b/src/lib/evas/canvas/evas_canvas3d_eet.c index 7209433d2b..281f69da82 100644 --- a/src/lib/evas/canvas/evas_3d_eet.c +++ b/src/lib/evas/canvas/evas_canvas3d_eet.c @@ -2,8 +2,8 @@ #include "evas_common_private.h" #include "evas_private.h" -Evas_3D_File_Eet* eet_file; -const char EVAS_3D_FILE_CACHE_FILE_ENTRY[] = "evas_3d file"; +Evas_Canvas3D_File_Eet* eet_file; +const char EVAS_CANVAS3D_FILE_CACHE_FILE_ENTRY[] = "evas_3d file"; Eet_Data_Descriptor *_vec2_descriptor; Eet_Data_Descriptor *_vec3_descriptor; Eet_Data_Descriptor *_vertex_descriptor; @@ -15,14 +15,14 @@ Eet_Data_Descriptor *_mesh_descriptor; Eet_Data_Descriptor *_header_descriptor; Eet_Data_Descriptor *_file_descriptor; -Evas_3D_File_Eet * -_evas_3d_eet_file_new(void) +Evas_Canvas3D_File_Eet * +_evas_canvas3d_eet_file_new(void) { - Evas_3D_File_Eet *creating_file = calloc(1, sizeof(Evas_3D_File_Eet)); + Evas_Canvas3D_File_Eet *creating_file = calloc(1, sizeof(Evas_Canvas3D_File_Eet)); if (!creating_file) { - ERR("Could not calloc Evas_3D_File_Eet"); + ERR("Could not calloc Evas_Canvas3D_File_Eet"); return NULL; } @@ -30,70 +30,70 @@ _evas_3d_eet_file_new(void) } void -_evas_3d_eet_file_init(void) +_evas_canvas3d_eet_file_init(void) { eina_init(); eet_init(); /* initialization of bonding between structure units in eet file */ Eet_Data_Descriptor_Class eddc; - EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Evas_3D_Vec2_Eet); + EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Evas_Canvas3D_Vec2_Eet); _vec2_descriptor = eet_data_descriptor_file_new(&eddc); - EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Evas_3D_Vec3_Eet); + EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Evas_Canvas3D_Vec3_Eet); _vec3_descriptor = eet_data_descriptor_file_new(&eddc); - EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Evas_3D_Vertex_Eet); + EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Evas_Canvas3D_Vertex_Eet); _vertex_descriptor = eet_data_descriptor_file_new(&eddc); - EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Evas_3D_Geometry_Eet); + EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Evas_Canvas3D_Geometry_Eet); _geometry_descriptor = eet_data_descriptor_file_new(&eddc); - EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Evas_3D_Color_Eet); + EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Evas_Canvas3D_Color_Eet); _color_descriptor = eet_data_descriptor_file_new(&eddc); - EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Evas_3D_Frame_Eet); + EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Evas_Canvas3D_Frame_Eet); _frame_descriptor = eet_data_descriptor_file_new(&eddc); - EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Evas_3D_Material_Eet); + EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Evas_Canvas3D_Material_Eet); _material_descriptor = eet_data_descriptor_file_new(&eddc); - EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Evas_3D_Mesh_Eet); + EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Evas_Canvas3D_Mesh_Eet); _mesh_descriptor = eet_data_descriptor_file_new(&eddc); - EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Evas_3D_Header_Eet); + EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Evas_Canvas3D_Header_Eet); _header_descriptor = eet_data_descriptor_file_new(&eddc); - EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Evas_3D_File_Eet); + EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Evas_Canvas3D_File_Eet); _file_descriptor = eet_data_descriptor_file_new(&eddc); /* Vec_2 */ #define ADD_BASIC(member, eet_type) EET_DATA_DESCRIPTOR_ADD_BASIC \ - (_vec2_descriptor, Evas_3D_Vec3_Eet, # member, member, eet_type); + (_vec2_descriptor, Evas_Canvas3D_Vec3_Eet, # member, member, eet_type); ADD_BASIC(x, EET_T_FLOAT); ADD_BASIC(y, EET_T_FLOAT); #undef ADD_BASIC /* Vec_3 */ #define ADD_BASIC(member, eet_type) EET_DATA_DESCRIPTOR_ADD_BASIC \ - (_vec3_descriptor, Evas_3D_Vec3_Eet, # member, member, eet_type); + (_vec3_descriptor, Evas_Canvas3D_Vec3_Eet, # member, member, eet_type); ADD_BASIC(x, EET_T_FLOAT); ADD_BASIC(y, EET_T_FLOAT); ADD_BASIC(z, EET_T_FLOAT); #undef ADD_BASIC /* Vertex */ - EET_DATA_DESCRIPTOR_ADD_SUB_NESTED(_vertex_descriptor, Evas_3D_Vertex_Eet, + EET_DATA_DESCRIPTOR_ADD_SUB_NESTED(_vertex_descriptor, Evas_Canvas3D_Vertex_Eet, "position", position, _vec3_descriptor); - EET_DATA_DESCRIPTOR_ADD_SUB_NESTED(_vertex_descriptor, Evas_3D_Vertex_Eet, + EET_DATA_DESCRIPTOR_ADD_SUB_NESTED(_vertex_descriptor, Evas_Canvas3D_Vertex_Eet, "normal", normal, _vec3_descriptor); - EET_DATA_DESCRIPTOR_ADD_SUB_NESTED(_vertex_descriptor, Evas_3D_Vertex_Eet, + EET_DATA_DESCRIPTOR_ADD_SUB_NESTED(_vertex_descriptor, Evas_Canvas3D_Vertex_Eet, "texcoord", texcoord, _vec2_descriptor); /* Geometry */ - EET_DATA_DESCRIPTOR_ADD_VAR_ARRAY(_geometry_descriptor, Evas_3D_Geometry_Eet, + EET_DATA_DESCRIPTOR_ADD_VAR_ARRAY(_geometry_descriptor, Evas_Canvas3D_Geometry_Eet, "vertices", vertices, _vertex_descriptor); #define ADD_BASIC(member, eet_type) \ EET_DATA_DESCRIPTOR_ADD_BASIC \ - (_geometry_descriptor, Evas_3D_Geometry_Eet, # member, member, eet_type); + (_geometry_descriptor, Evas_Canvas3D_Geometry_Eet, # member, member, eet_type); ADD_BASIC(vertices_count, EET_T_UINT); ADD_BASIC(id, EET_T_UINT); #undef ADD_BASIC /* Color */ #define ADD_BASIC(member, eet_type) EET_DATA_DESCRIPTOR_ADD_BASIC \ - (_color_descriptor, Evas_3D_Color_Eet, # member, member, eet_type); + (_color_descriptor, Evas_Canvas3D_Color_Eet, # member, member, eet_type); ADD_BASIC(r, EET_T_FLOAT); ADD_BASIC(g, EET_T_FLOAT); ADD_BASIC(b, EET_T_FLOAT); @@ -101,11 +101,11 @@ _evas_3d_eet_file_init(void) #undef ADD_BASIC /* Material */ - EET_DATA_DESCRIPTOR_ADD_VAR_ARRAY(_material_descriptor, Evas_3D_Material_Eet, + EET_DATA_DESCRIPTOR_ADD_VAR_ARRAY(_material_descriptor, Evas_Canvas3D_Material_Eet, "colors", colors, _color_descriptor); #define ADD_BASIC(member, eet_type) \ EET_DATA_DESCRIPTOR_ADD_BASIC \ - (_material_descriptor, Evas_3D_Material_Eet, # member, member, eet_type); + (_material_descriptor, Evas_Canvas3D_Material_Eet, # member, member, eet_type); ADD_BASIC(id, EET_T_UINT); ADD_BASIC(colors_count, EET_T_UINT); ADD_BASIC(shininess, EET_T_FLOAT); @@ -113,35 +113,35 @@ _evas_3d_eet_file_init(void) /* Frame */ #define ADD_BASIC(member, eet_type) EET_DATA_DESCRIPTOR_ADD_BASIC \ - (_frame_descriptor, Evas_3D_Frame_Eet, # member, member, eet_type); + (_frame_descriptor, Evas_Canvas3D_Frame_Eet, # member, member, eet_type); ADD_BASIC(id, EET_T_UINT); ADD_BASIC(geometry_id, EET_T_UINT); ADD_BASIC(material_id, EET_T_UINT); #undef ADD_BASIC /* Mesh */ - EET_DATA_DESCRIPTOR_ADD_VAR_ARRAY(_mesh_descriptor, Evas_3D_Mesh_Eet, + EET_DATA_DESCRIPTOR_ADD_VAR_ARRAY(_mesh_descriptor, Evas_Canvas3D_Mesh_Eet, "frames", frames, _frame_descriptor); - EET_DATA_DESCRIPTOR_ADD_VAR_ARRAY(_mesh_descriptor, Evas_3D_Mesh_Eet, + EET_DATA_DESCRIPTOR_ADD_VAR_ARRAY(_mesh_descriptor, Evas_Canvas3D_Mesh_Eet, "geometries", geometries, _geometry_descriptor); - EET_DATA_DESCRIPTOR_ADD_VAR_ARRAY(_mesh_descriptor, Evas_3D_Mesh_Eet, + EET_DATA_DESCRIPTOR_ADD_VAR_ARRAY(_mesh_descriptor, Evas_Canvas3D_Mesh_Eet, "materials", materials, _material_descriptor); #define ADD_BASIC(member, eet_type) \ EET_DATA_DESCRIPTOR_ADD_BASIC \ - (_mesh_descriptor, Evas_3D_Mesh_Eet, # member, member, eet_type); + (_mesh_descriptor, Evas_Canvas3D_Mesh_Eet, # member, member, eet_type); ADD_BASIC(materials_count, EET_T_UINT); ADD_BASIC(frames_count, EET_T_UINT); ADD_BASIC(geometries_count, EET_T_UINT); #undef ADD_BASIC /* Header */ - EET_DATA_DESCRIPTOR_ADD_BASIC_VAR_ARRAY(_header_descriptor, Evas_3D_Header_Eet, + EET_DATA_DESCRIPTOR_ADD_BASIC_VAR_ARRAY(_header_descriptor, Evas_Canvas3D_Header_Eet, "materials", materials, EET_T_UINT); - EET_DATA_DESCRIPTOR_ADD_BASIC_VAR_ARRAY(_header_descriptor, Evas_3D_Header_Eet, + EET_DATA_DESCRIPTOR_ADD_BASIC_VAR_ARRAY(_header_descriptor, Evas_Canvas3D_Header_Eet, "geometries", geometries, EET_T_UINT); #define ADD_BASIC(member, eet_type) \ EET_DATA_DESCRIPTOR_ADD_BASIC \ - (_header_descriptor, Evas_3D_Header_Eet, # member, member, eet_type); + (_header_descriptor, Evas_Canvas3D_Header_Eet, # member, member, eet_type); ADD_BASIC(version, EET_T_UINT); ADD_BASIC(materials_count, EET_T_UINT); ADD_BASIC(frames, EET_T_UINT); @@ -149,15 +149,15 @@ _evas_3d_eet_file_init(void) #undef ADD_BASIC /* File */ - EET_DATA_DESCRIPTOR_ADD_SUB(_file_descriptor, Evas_3D_File_Eet, + EET_DATA_DESCRIPTOR_ADD_SUB(_file_descriptor, Evas_Canvas3D_File_Eet, "mesh", mesh, _mesh_descriptor); - EET_DATA_DESCRIPTOR_ADD_SUB(_file_descriptor, Evas_3D_File_Eet, + EET_DATA_DESCRIPTOR_ADD_SUB(_file_descriptor, Evas_Canvas3D_File_Eet, "header", header, _header_descriptor); } void -_evas_3d_eet_descriptor_shutdown(void) +_evas_canvas3d_eet_descriptor_shutdown(void) { eet_data_descriptor_free(_geometry_descriptor); eet_data_descriptor_free(_vertex_descriptor); @@ -172,7 +172,7 @@ _evas_3d_eet_descriptor_shutdown(void) } void -_evas_3d_eet_file_free(void) +_evas_canvas3d_eet_file_free(void) { free(eet_file->mesh->geometries[0].vertices); free(eet_file->mesh->geometries); @@ -185,7 +185,7 @@ _evas_3d_eet_file_free(void) free(eet_file->header); free(eet_file); - _evas_3d_eet_descriptor_shutdown(); + _evas_canvas3d_eet_descriptor_shutdown(); eet_shutdown(); eina_shutdown(); } diff --git a/src/lib/evas/canvas/evas_3d_light.c b/src/lib/evas/canvas/evas_canvas3d_light.c index 455ded65e9..6861652a6c 100644 --- a/src/lib/evas/canvas/evas_3d_light.c +++ b/src/lib/evas/canvas/evas_canvas3d_light.c @@ -1,35 +1,35 @@ #include "evas_common_private.h" #include "evas_private.h" -#define MY_CLASS EVAS_3D_LIGHT_CLASS +#define MY_CLASS EVAS_CANVAS3D_LIGHT_CLASS static Eina_Bool _light_node_change_notify(const Eina_Hash *hash EINA_UNUSED, const void *key, void *data EINA_UNUSED, void *fdata) { - Evas_3D_Node *n = *(Evas_3D_Node **)key; - eo_do(n, evas_3d_object_change(EVAS_3D_STATE_NODE_LIGHT, (Evas_3D_Object *)fdata)); + Evas_Canvas3D_Node *n = *(Evas_Canvas3D_Node **)key; + eo_do(n, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_LIGHT, (Evas_Canvas3D_Object *)fdata)); return EINA_TRUE; } EOLIAN static void -_evas_3d_light_evas_3d_object_change_notify(Eo *obj, Evas_3D_Light_Data *pd, Evas_3D_State state EINA_UNUSED, Evas_3D_Object *ref EINA_UNUSED) +_evas_canvas3d_light_evas_canvas3d_object_change_notify(Eo *obj, Evas_Canvas3D_Light_Data *pd, Evas_Canvas3D_State state EINA_UNUSED, Evas_Canvas3D_Object *ref EINA_UNUSED) { if (pd->nodes) eina_hash_foreach(pd->nodes, _light_node_change_notify, obj); } EOLIAN static void -_evas_3d_light_evas_3d_object_update_notify(Eo *obj EINA_UNUSED, Evas_3D_Light_Data *pd EINA_UNUSED) +_evas_canvas3d_light_evas_canvas3d_object_update_notify(Eo *obj EINA_UNUSED, Evas_Canvas3D_Light_Data *pd EINA_UNUSED) { } void -evas_3d_light_node_add(Evas_3D_Light *light, Evas_3D_Node *node) +evas_canvas3d_light_node_add(Evas_Canvas3D_Light *light, Evas_Canvas3D_Node *node) { int count = 0; - Evas_3D_Light_Data *pd = eo_data_scope_get(light, MY_CLASS); + Evas_Canvas3D_Light_Data *pd = eo_data_scope_get(light, MY_CLASS); if (pd->nodes == NULL) { pd->nodes = eina_hash_pointer_new(NULL); @@ -47,10 +47,10 @@ evas_3d_light_node_add(Evas_3D_Light *light, Evas_3D_Node *node) } void -evas_3d_light_node_del(Evas_3D_Light *light, Evas_3D_Node *node) +evas_canvas3d_light_node_del(Evas_Canvas3D_Light *light, Evas_Canvas3D_Node *node) { int count = 0; - Evas_3D_Light_Data *pd = eo_data_scope_get(light, MY_CLASS); + Evas_Canvas3D_Light_Data *pd = eo_data_scope_get(light, MY_CLASS); if (pd->nodes == NULL) { ERR("No node to delete."); @@ -66,8 +66,8 @@ evas_3d_light_node_del(Evas_3D_Light *light, Evas_3D_Node *node) } -EAPI Evas_3D_Light * -evas_3d_light_add(Evas *e) +EAPI Evas_Canvas3D_Light * +evas_canvas3d_light_add(Evas *e) { MAGIC_CHECK(e, Evas, MAGIC_EVAS); return NULL; @@ -77,10 +77,10 @@ evas_3d_light_add(Evas *e) } EOLIAN static Eo * -_evas_3d_light_eo_base_constructor(Eo *obj, Evas_3D_Light_Data *pd) +_evas_canvas3d_light_eo_base_constructor(Eo *obj, Evas_Canvas3D_Light_Data *pd) { obj = eo_do_super_ret(obj, MY_CLASS, obj, eo_constructor()); - eo_do(obj, evas_3d_object_type_set(EVAS_3D_OBJECT_TYPE_LIGHT)); + eo_do(obj, evas_canvas3d_object_type_set(EVAS_CANVAS3D_OBJECT_TYPE_LIGHT)); evas_color_set(&pd->ambient, 0.0, 0.0, 0.0, 1.0); evas_color_set(&pd->diffuse, 1.0, 1.0, 1.0, 1.0); evas_color_set(&pd->specular, 1.0, 1.0, 1.0, 1.0); @@ -97,18 +97,18 @@ _evas_3d_light_eo_base_constructor(Eo *obj, Evas_3D_Light_Data *pd) } EOLIAN static void -_evas_3d_light_eo_base_destructor(Eo *obj, Evas_3D_Light_Data *pd) +_evas_canvas3d_light_eo_base_destructor(Eo *obj, Evas_Canvas3D_Light_Data *pd) { Eina_Iterator *it = NULL; void *data = NULL; - Evas_3D_Node_Data *node = NULL; + Evas_Canvas3D_Node_Data *node = NULL; if (pd->nodes) { it = eina_hash_iterator_key_new(pd->nodes); while (eina_iterator_next(it, &data)) { - node = eo_data_scope_get(data, EVAS_3D_NODE_CLASS); + node = eo_data_scope_get(data, EVAS_CANVAS3D_NODE_CLASS); node->data.light.light = NULL; } @@ -120,34 +120,34 @@ _evas_3d_light_eo_base_destructor(Eo *obj, Evas_3D_Light_Data *pd) EOLIAN static void -_evas_3d_light_directional_set(Eo *obj, Evas_3D_Light_Data *pd, Eina_Bool directional) +_evas_canvas3d_light_directional_set(Eo *obj, Evas_Canvas3D_Light_Data *pd, Eina_Bool directional) { if (pd->directional != directional) { pd->directional = directional; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_ANY, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_ANY, NULL)); } } EOLIAN static Eina_Bool -_evas_3d_light_directional_get(Eo *obj EINA_UNUSED, Evas_3D_Light_Data *pd) +_evas_canvas3d_light_directional_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Light_Data *pd) { return pd->directional; } EOLIAN static void -_evas_3d_light_ambient_set(Eo *obj, Evas_3D_Light_Data *pd, Evas_Real r, Evas_Real g, Evas_Real b, Evas_Real a) +_evas_canvas3d_light_ambient_set(Eo *obj, Evas_Canvas3D_Light_Data *pd, Evas_Real r, Evas_Real g, Evas_Real b, Evas_Real a) { pd->ambient.r = r; pd->ambient.g = g; pd->ambient.b = b; pd->ambient.a = a; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_LIGHT_AMBIENT, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_LIGHT_AMBIENT, NULL)); } EOLIAN static void -_evas_3d_light_ambient_get(Eo *obj EINA_UNUSED, Evas_3D_Light_Data *pd, Evas_Real *r, Evas_Real *g, Evas_Real *b, Evas_Real *a) +_evas_canvas3d_light_ambient_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Light_Data *pd, Evas_Real *r, Evas_Real *g, Evas_Real *b, Evas_Real *a) { if (r) *r = pd->ambient.r; if (g) *g = pd->ambient.g; @@ -156,18 +156,18 @@ _evas_3d_light_ambient_get(Eo *obj EINA_UNUSED, Evas_3D_Light_Data *pd, Evas_Rea } EOLIAN static void -_evas_3d_light_diffuse_set(Eo *obj, Evas_3D_Light_Data *pd, Evas_Real r, Evas_Real g, Evas_Real b, Evas_Real a) +_evas_canvas3d_light_diffuse_set(Eo *obj, Evas_Canvas3D_Light_Data *pd, Evas_Real r, Evas_Real g, Evas_Real b, Evas_Real a) { pd->diffuse.r = r; pd->diffuse.g = g; pd->diffuse.b = b; pd->diffuse.a = a; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_LIGHT_DIFFUSE, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_LIGHT_DIFFUSE, NULL)); } EOLIAN static void -_evas_3d_light_diffuse_get(Eo *obj EINA_UNUSED, Evas_3D_Light_Data *pd, Evas_Real *r, Evas_Real *g, Evas_Real *b, Evas_Real *a) +_evas_canvas3d_light_diffuse_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Light_Data *pd, Evas_Real *r, Evas_Real *g, Evas_Real *b, Evas_Real *a) { if (r) *r = pd->diffuse.r; if (g) *g = pd->diffuse.g; @@ -176,18 +176,18 @@ _evas_3d_light_diffuse_get(Eo *obj EINA_UNUSED, Evas_3D_Light_Data *pd, Evas_Rea } EOLIAN static void -_evas_3d_light_specular_set(Eo *obj, Evas_3D_Light_Data *pd, Evas_Real r, Evas_Real g, Evas_Real b, Evas_Real a) +_evas_canvas3d_light_specular_set(Eo *obj, Evas_Canvas3D_Light_Data *pd, Evas_Real r, Evas_Real g, Evas_Real b, Evas_Real a) { pd->specular.r = r; pd->specular.g = g; pd->specular.b = b; pd->specular.a = a; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_LIGHT_SPECULAR, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_LIGHT_SPECULAR, NULL)); } EOLIAN static void -_evas_3d_light_specular_get(Eo *obj EINA_UNUSED, Evas_3D_Light_Data *pd, Evas_Real *r, Evas_Real *g, Evas_Real *b, Evas_Real *a) +_evas_canvas3d_light_specular_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Light_Data *pd, Evas_Real *r, Evas_Real *g, Evas_Real *b, Evas_Real *a) { if (r) *r = pd->specular.r; if (g) *g = pd->specular.g; @@ -196,43 +196,43 @@ _evas_3d_light_specular_get(Eo *obj EINA_UNUSED, Evas_3D_Light_Data *pd, Evas_Re } EOLIAN static void -_evas_3d_light_spot_exponent_set(Eo *obj, Evas_3D_Light_Data *pd, Evas_Real exponent) +_evas_canvas3d_light_spot_exponent_set(Eo *obj, Evas_Canvas3D_Light_Data *pd, Evas_Real exponent) { pd->spot_exp = exponent; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_LIGHT_SPOT_EXP, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_LIGHT_SPOT_EXP, NULL)); } EOLIAN static Evas_Real -_evas_3d_light_spot_exponent_get(Eo *obj EINA_UNUSED, Evas_3D_Light_Data *pd) +_evas_canvas3d_light_spot_exponent_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Light_Data *pd) { return pd->spot_exp; } EOLIAN static void -_evas_3d_light_spot_cutoff_set(Eo *obj, Evas_3D_Light_Data *pd, Evas_Real cutoff) +_evas_canvas3d_light_spot_cutoff_set(Eo *obj, Evas_Canvas3D_Light_Data *pd, Evas_Real cutoff) { pd->spot_cutoff = cutoff; pd->spot_cutoff_cos = cos(cutoff * M_PI / 180.0); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_LIGHT_SPOT_CUTOFF, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_LIGHT_SPOT_CUTOFF, NULL)); } EOLIAN static Evas_Real -_evas_3d_light_spot_cutoff_get(Eo *obj EINA_UNUSED, Evas_3D_Light_Data *pd) +_evas_canvas3d_light_spot_cutoff_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Light_Data *pd) { return pd->spot_cutoff; } EOLIAN static void -_evas_3d_light_attenuation_set(Eo *obj, Evas_3D_Light_Data *pd, Evas_Real constant, Evas_Real linear, Evas_Real quadratic) +_evas_canvas3d_light_attenuation_set(Eo *obj, Evas_Canvas3D_Light_Data *pd, Evas_Real constant, Evas_Real linear, Evas_Real quadratic) { pd->atten_const = constant; pd->atten_linear = linear; pd->atten_quad = quadratic; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_LIGHT_ATTENUATION, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_LIGHT_ATTENUATION, NULL)); } EOLIAN static void -_evas_3d_light_attenuation_get(Eo *obj EINA_UNUSED, Evas_3D_Light_Data *pd, Evas_Real *constant, Evas_Real *linear, Evas_Real *quadratic) +_evas_canvas3d_light_attenuation_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Light_Data *pd, Evas_Real *constant, Evas_Real *linear, Evas_Real *quadratic) { if (constant) *constant = pd->atten_const; if (linear) *linear = pd->atten_linear; @@ -240,39 +240,39 @@ _evas_3d_light_attenuation_get(Eo *obj EINA_UNUSED, Evas_3D_Light_Data *pd, Evas } EOLIAN static void -_evas_3d_light_attenuation_enable_set(Eo *obj, Evas_3D_Light_Data *pd, Eina_Bool enable) +_evas_canvas3d_light_attenuation_enable_set(Eo *obj, Evas_Canvas3D_Light_Data *pd, Eina_Bool enable) { if (pd->enable_attenuation != enable) { pd->enable_attenuation = enable; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_LIGHT_ATTENUATION, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_LIGHT_ATTENUATION, NULL)); } } EOLIAN static Eina_Bool -_evas_3d_light_attenuation_enable_get(Eo *obj EINA_UNUSED, Evas_3D_Light_Data *pd) +_evas_canvas3d_light_attenuation_enable_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Light_Data *pd) { return pd->enable_attenuation; } EOLIAN static void -_evas_3d_light_projection_matrix_set(Eo *obj, Evas_3D_Light_Data *pd, +_evas_canvas3d_light_projection_matrix_set(Eo *obj, Evas_Canvas3D_Light_Data *pd, const Evas_Real *matrix) { evas_mat4_array_set(&pd->projection, matrix); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_LIGHT_PROJECTION, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_LIGHT_PROJECTION, NULL)); } EOLIAN static void -_evas_3d_light_projection_matrix_get(Eo *obj EINA_UNUSED, - Evas_3D_Light_Data *pd, +_evas_canvas3d_light_projection_matrix_get(Eo *obj EINA_UNUSED, + Evas_Canvas3D_Light_Data *pd, Evas_Real *matrix) { memcpy(matrix, &pd->projection.m[0], sizeof(Evas_Real) * 16); } EOLIAN static void -_evas_3d_light_projection_perspective_set(Eo *obj, Evas_3D_Light_Data *pd, +_evas_canvas3d_light_projection_perspective_set(Eo *obj, Evas_Canvas3D_Light_Data *pd, Evas_Real fovy, Evas_Real aspect, Evas_Real dnear, Evas_Real dfar) { @@ -283,28 +283,28 @@ _evas_3d_light_projection_perspective_set(Eo *obj, Evas_3D_Light_Data *pd, xmax = ymax * aspect; evas_mat4_frustum_set(&pd->projection, -xmax, xmax, -ymax, ymax, dnear, dfar); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_LIGHT_PROJECTION, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_LIGHT_PROJECTION, NULL)); } EOLIAN static void -_evas_3d_light_projection_frustum_set(Eo *obj, Evas_3D_Light_Data *pd, +_evas_canvas3d_light_projection_frustum_set(Eo *obj, Evas_Canvas3D_Light_Data *pd, Evas_Real left, Evas_Real right, Evas_Real bottom, Evas_Real top, Evas_Real dnear, Evas_Real dfar) { evas_mat4_frustum_set(&pd->projection, left, right, bottom, top, dnear, dfar); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_LIGHT_PROJECTION, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_LIGHT_PROJECTION, NULL)); } EOLIAN static void -_evas_3d_light_projection_ortho_set(Eo *obj, Evas_3D_Light_Data *pd, +_evas_canvas3d_light_projection_ortho_set(Eo *obj, Evas_Canvas3D_Light_Data *pd, Evas_Real left, Evas_Real right, Evas_Real bottom, Evas_Real top, Evas_Real dnear, Evas_Real dfar) { evas_mat4_ortho_set(&pd->projection, left, right, bottom, top, dnear, dfar); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_LIGHT_PROJECTION, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_LIGHT_PROJECTION, NULL)); } -#include "canvas/evas_3d_light.eo.c" +#include "canvas/evas_canvas3d_light.eo.c" diff --git a/src/lib/evas/canvas/evas_3d_light.eo b/src/lib/evas/canvas/evas_canvas3d_light.eo index b263d3d4b1..169113f962 100644 --- a/src/lib/evas/canvas/evas_3d_light.eo +++ b/src/lib/evas/canvas/evas_canvas3d_light.eo @@ -1,7 +1,7 @@ -class Evas_3D_Light (Evas_3D_Object, Evas.Common_Interface) +class Evas_Canvas3D_Light (Evas_Canvas3D_Object, Evas.Common_Interface) { legacy_prefix: null; - data: Evas_3D_Light_Data; + data: Evas_Canvas3D_Light_Data; methods { @property directional { @@ -15,18 +15,18 @@ class Evas_3D_Light (Evas_3D_Object, Evas.Common_Interface) By default, directional is not enabled. - @see evas_3d_node_look_at_set() + @see evas_canvas3d_node_look_at_set() - @ingroup Evas_3D_Light + @ingroup Evas_Canvas3D_Light */ } get { /*@ Get the directional flag of the given light. - @see evas_3d_light_directional_set() + @see evas_canvas3d_light_directional_set() - @ingroup Evas_3D_Light + @ingroup Evas_Canvas3D_Light */ } values { @@ -46,18 +46,18 @@ class Evas_3D_Light (Evas_3D_Object, Evas.Common_Interface) Default spot exponent is 0. - @see evas_3d_light_spot_cutoff_set() + @see evas_canvas3d_light_spot_cutoff_set() - @ingroup Evas_3D_Light + @ingroup Evas_Canvas3D_Light */ } get { /*@ Get the spot exponent of the given light. - @see evas_3d_light_spot_exponent_set() + @see evas_canvas3d_light_spot_exponent_set() - @ingroup Evas_3D_Light + @ingroup Evas_Canvas3D_Light */ } values { @@ -75,16 +75,16 @@ class Evas_3D_Light (Evas_3D_Object, Evas.Common_Interface) Default spot cutoff angle is 180. - @ingroup Evas_3D_Light + @ingroup Evas_Canvas3D_Light */ } get { /*@ Get the spot cutoff angle of the given light. - @see evas_3d_light_spot_cutoff_set() + @see evas_canvas3d_light_spot_cutoff_set() - @ingroup Evas_3D_Light + @ingroup Evas_Canvas3D_Light */ } values { @@ -99,18 +99,18 @@ class Evas_3D_Light (Evas_3D_Object, Evas.Common_Interface) By default, light attenuation is not enabled. - @see evas_3d_light_attenuation_set() + @see evas_canvas3d_light_attenuation_set() - @ingroup Evas_3D_Light + @ingroup Evas_Canvas3D_Light */ } get { /*@ Get the attenuation enable flag of the given light. - @see evas_3d_light_attenuation_enable_set() + @see evas_canvas3d_light_attenuation_enable_set() - @ingroup Evas_3D_Light + @ingroup Evas_Canvas3D_Light */ } values { @@ -124,7 +124,7 @@ class Evas_3D_Light (Evas_3D_Object, Evas.Common_Interface) Default ambient color is (0.0, 0.0, 0.0, 1.0). - @ingroup Evas_3D_Light + @ingroup Evas_Canvas3D_Light */ params { @in r: Evas_Real; /*@ Red component of the ambient color between [0.0, 1.0]. */ @@ -137,9 +137,9 @@ class Evas_3D_Light (Evas_3D_Object, Evas.Common_Interface) /*@ Get the ambient color of the given light. - @see evas_3d_light_ambient_set() + @see evas_canvas3d_light_ambient_set() - @ingroup Evas_3D_Light + @ingroup Evas_Canvas3D_Light */ params { @out r: Evas_Real; /*@ Red component of the ambient color between [0.0, 1.0]. */ @@ -155,7 +155,7 @@ class Evas_3D_Light (Evas_3D_Object, Evas.Common_Interface) Default diffuse color is (1.0, 1.0, 1.0, 1.0). - @ingroup Evas_3D_Light + @ingroup Evas_Canvas3D_Light */ params { @in r: Evas_Real; /*@ Red component of the diffuse color between [0.0, 1.0]. */ @@ -168,9 +168,9 @@ class Evas_3D_Light (Evas_3D_Object, Evas.Common_Interface) /*@ Get the diffuse color of the given light. - @see evas_3d_light_diffuse_set() + @see evas_canvas3d_light_diffuse_set() - @ingroup Evas_3D_Light + @ingroup Evas_Canvas3D_Light */ params { @out r: Evas_Real; /*@ Red component of the diffuse color between [0.0, 1.0]. */ @@ -186,7 +186,7 @@ class Evas_3D_Light (Evas_3D_Object, Evas.Common_Interface) Default specular color is (1.0, 1.0, 1.0, 1.0). - @ingroup Evas_3D_Light + @ingroup Evas_Canvas3D_Light */ params { @in r: Evas_Real; /*@ Red component of the specular color between [0.0, 1.0]. */ @@ -199,9 +199,9 @@ class Evas_3D_Light (Evas_3D_Object, Evas.Common_Interface) /*@ Get the specular color of the given light. - @see evas_3d_light_specular_set() + @see evas_canvas3d_light_specular_set() - @ingroup Evas_3D_Light + @ingroup Evas_Canvas3D_Light */ params { @out r: Evas_Real; /*@ Red component of the specular color between [0.0, 1.0]. */ @@ -223,9 +223,9 @@ class Evas_3D_Light (Evas_3D_Object, Evas.Common_Interface) Default attenuation is constant = 1.0, linear = 0.0, quadratic = 0.0. - @see evas_3d_light_attenuation_enable_set() + @see evas_canvas3d_light_attenuation_enable_set() - @ingroup Evas_3D_Light + @ingroup Evas_Canvas3D_Light */ params { @in constant: Evas_Real; /*@ Constant attenuation term..*/ @@ -238,9 +238,9 @@ class Evas_3D_Light (Evas_3D_Object, Evas.Common_Interface) /*@ Get the attenuation of the given light. - @see evas_3d_light_attenuation_set() + @see evas_canvas3d_light_attenuation_set() - @ingroup Evas_3D_Light + @ingroup Evas_Canvas3D_Light */ params { @out constant: Evas_Real; /*@ Constant attenuation term..*/ @@ -258,11 +258,11 @@ class Evas_3D_Light (Evas_3D_Object, Evas.Common_Interface) Default projection matrix is identity matrix. - @see evas_3d_light_projection_perspective_set() - @see evas_3d_light_projection_ortho_set() - @see evas_3d_light_projection_frustum_set() + @see evas_canvas3d_light_projection_perspective_set() + @see evas_canvas3d_light_projection_ortho_set() + @see evas_canvas3d_light_projection_frustum_set() - @ingroup Evas_3D_Light + @ingroup Evas_Canvas3D_Light */ params { @in matrix: const(Evas_Real) *; /*@ Projection Matrix */ @@ -276,9 +276,9 @@ class Evas_3D_Light (Evas_3D_Object, Evas.Common_Interface) @param light The given light source. @param matrix Pointer to receive the 16 Evas_Real values in column major order. - @see evas_3d_light_projection_matrix_set() + @see evas_canvas3d_light_projection_matrix_set() - @ingroup Evas_3D_Light + @ingroup Evas_Canvas3D_Light */ params { @out matrix: Evas_Real; /*@ Projection Matrix */ @@ -295,9 +295,9 @@ class Evas_3D_Light (Evas_3D_Object, Evas.Common_Interface) @param dnear Distance to near clipping plane. @param dfar Distance to far clipping plane. - @see evas_3d_light_projection_matrix_set() + @see evas_canvas3d_light_projection_matrix_set() - @ingroup Evas_3D_Light + @ingroup Evas_Canvas3D_Light */ params { @@ -312,9 +312,9 @@ class Evas_3D_Light (Evas_3D_Object, Evas.Common_Interface) /*@ Set the projection matrix of the given light source with frustum projection. - @see evas_3d_Light_projection_matrix_set() + @see evas_canvas3d_Light_projection_matrix_set() - @ingroup Evas_3D_Light + @ingroup Evas_Canvas3D_Light */ params { left: Evas_Real; /*@ Left X coordinate of the near clipping plane. */ @@ -329,9 +329,9 @@ class Evas_3D_Light (Evas_3D_Object, Evas.Common_Interface) /*@ Set the projection matrix of the given light source with orthogonal projection. - @see evas_3d_light_projection_matrix_set() + @see evas_canvas3d_light_projection_matrix_set() - @ingroup Evas_3D_Light + @ingroup Evas_Canvas3D_Light */ params { left: Evas_Real; /*@ Left X coordinate of the near clipping plane. */ @@ -347,8 +347,8 @@ class Evas_3D_Light (Evas_3D_Object, Evas.Common_Interface) implements { Eo.Base.constructor; Eo.Base.destructor; - Evas_3D_Object.update_notify; - Evas_3D_Object.change_notify; + Evas_Canvas3D_Object.update_notify; + Evas_Canvas3D_Object.change_notify; } } diff --git a/src/lib/evas/canvas/evas_canvas3d_material.c b/src/lib/evas/canvas/evas_canvas3d_material.c new file mode 100644 index 0000000000..ab0fe732ba --- /dev/null +++ b/src/lib/evas/canvas/evas_canvas3d_material.c @@ -0,0 +1,207 @@ +#include "evas_common_private.h" +#include "evas_private.h" + +#define MY_CLASS EVAS_CANVAS3D_MATERIAL_CLASS + +static Eina_Bool +_material_mesh_change_notify(const Eina_Hash *hash EINA_UNUSED, const void *key, + void *data EINA_UNUSED, void *fdata) +{ + Evas_Canvas3D_Mesh *m = *(Evas_Canvas3D_Mesh **)key; + eo_do(m, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_MESH_MATERIAL, (Evas_Canvas3D_Object *)fdata)); + return EINA_TRUE; +} + +EOLIAN static void +_evas_canvas3d_material_evas_canvas3d_object_change_notify(Eo *obj, Evas_Canvas3D_Material_Data *pd, Evas_Canvas3D_State state EINA_UNUSED, Evas_Canvas3D_Object *ref EINA_UNUSED) +{ + if (pd->meshes) + eina_hash_foreach(pd->meshes, _material_mesh_change_notify, obj); +} + +EOLIAN static void +_evas_canvas3d_material_evas_canvas3d_object_update_notify(Eo *obj EINA_UNUSED, Evas_Canvas3D_Material_Data *pd) +{ + int i; + for (i = 0; i < EVAS_CANVAS3D_MATERIAL_ATTRIB_COUNT; i++) + { + if (pd->attribs[i].enable) + { + if (pd->attribs[i].texture) + { + eo_do(pd->attribs[i].texture, evas_canvas3d_object_update()); + } + } + } +} + +void +evas_canvas3d_material_mesh_add(Evas_Canvas3D_Material *material, Evas_Canvas3D_Mesh *mesh) +{ + int count = 0; + Evas_Canvas3D_Material_Data *pd = eo_data_scope_get(material, MY_CLASS); + + if (pd->meshes == NULL) + { + pd->meshes = eina_hash_pointer_new(NULL); + + if (pd->meshes == NULL) + { + ERR("Failed to create hash table."); + return; + } + } + else + count = (int)(uintptr_t)eina_hash_find(pd->meshes, &mesh); + + eina_hash_set(pd->meshes, &mesh, (const void *)(uintptr_t)(count + 1)); +} + +void +evas_canvas3d_material_mesh_del(Evas_Canvas3D_Material *material, Evas_Canvas3D_Mesh *mesh) +{ + int count = 0; + Evas_Canvas3D_Material_Data *pd = eo_data_scope_get(material, MY_CLASS); + + if (pd->meshes == NULL) + { + ERR("No mesh to delete."); + return; + } + + count = (int)(uintptr_t)eina_hash_find(pd->meshes, &mesh); + + if (count == 1) + eina_hash_del(pd->meshes, &mesh, NULL); + else + eina_hash_set(pd->meshes, &mesh, (const void *)(uintptr_t)(count - 1)); +} + + +EAPI Evas_Canvas3D_Material * +evas_canvas3d_material_add(Evas *e) +{ + MAGIC_CHECK(e, Evas, MAGIC_EVAS); + return NULL; + MAGIC_CHECK_END(); + Evas_Object *eo_obj = eo_add(MY_CLASS, e); + return eo_obj; +} + +EOLIAN static Eo * +_evas_canvas3d_material_eo_base_constructor(Eo *obj EINA_UNUSED, Evas_Canvas3D_Material_Data *pd) +{ + obj = eo_do_super_ret(obj, MY_CLASS, obj, eo_constructor()); + eo_do(obj, evas_canvas3d_object_type_set(EVAS_CANVAS3D_OBJECT_TYPE_MATERIAL)); + + evas_color_set(&pd->attribs[EVAS_CANVAS3D_MATERIAL_AMBIENT].color, 0.2, 0.2, 0.2, 1.0); + evas_color_set(&pd->attribs[EVAS_CANVAS3D_MATERIAL_DIFFUSE].color, 0.8, 0.8, 0.8, 1.0); + evas_color_set(&pd->attribs[EVAS_CANVAS3D_MATERIAL_SPECULAR].color, 1.0, 1.0, 1.0, 1.0); + evas_color_set(&pd->attribs[EVAS_CANVAS3D_MATERIAL_EMISSION].color, 0.0, 0.0, 0.0, 1.0); + pd->shininess = 150.0; + + return obj; +} + +EOLIAN static void +_evas_canvas3d_material_eo_base_destructor(Eo *obj, Evas_Canvas3D_Material_Data *pd) +{ + int i = 0; + Eina_Iterator *it = NULL; + void *data = NULL; + Evas_Canvas3D_Mesh_Data *mesh = NULL; + Eina_List *l = NULL; + Evas_Canvas3D_Mesh_Frame *f = NULL; + + if (pd->meshes) + { + it = eina_hash_iterator_key_new(pd->meshes); + while (eina_iterator_next(it, &data)) + { + mesh = eo_data_scope_get(data, EVAS_CANVAS3D_MESH_CLASS); + if (mesh->frames) + { + EINA_LIST_FOREACH(mesh->frames, l, f) + f->material = NULL; + } + } + eina_iterator_free(it); + eina_hash_free(pd->meshes); + } + + for (i = 0; i < EVAS_CANVAS3D_MATERIAL_ATTRIB_COUNT; i++) + { + if (pd->attribs[i].texture) + { + evas_canvas3d_texture_material_del(pd->attribs[i].texture, obj); + } + } + eo_do_super(obj, MY_CLASS, eo_destructor()); +} + +EOLIAN static void +_evas_canvas3d_material_enable_set(Eo *obj EINA_UNUSED, Evas_Canvas3D_Material_Data *pd, Evas_Canvas3D_Material_Attrib attrib, Eina_Bool enable) +{ + pd->attribs[attrib].enable = enable; +} + +EOLIAN static Eina_Bool +_evas_canvas3d_material_enable_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Material_Data *pd, Evas_Canvas3D_Material_Attrib attrib) +{ + return pd->attribs[attrib].enable; +} + +EOLIAN static void +_evas_canvas3d_material_color_set(Eo *obj, Evas_Canvas3D_Material_Data *pd, Evas_Canvas3D_Material_Attrib attrib, Evas_Real r, Evas_Real g, Evas_Real b, Evas_Real a) +{ + evas_color_set(&pd->attribs[attrib].color, r, g, b, a); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_MATERIAL_COLOR, NULL)); +} + +EOLIAN static void +_evas_canvas3d_material_color_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Material_Data *pd, Evas_Canvas3D_Material_Attrib attrib, Evas_Real *r, Evas_Real *g, Evas_Real *b, Evas_Real *a) +{ + if (r) *r = pd->attribs[attrib].color.r; + if (g) *g = pd->attribs[attrib].color.g; + if (b) *b = pd->attribs[attrib].color.b; + if (a) *a = pd->attribs[attrib].color.a; +} + +EOLIAN static void +_evas_canvas3d_material_shininess_set(Eo *obj EINA_UNUSED, Evas_Canvas3D_Material_Data *pd, Evas_Real shininess) +{ + pd->shininess = shininess; +} + +EOLIAN static Evas_Real +_evas_canvas3d_material_shininess_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Material_Data *pd) +{ + return pd->shininess; +} + +EOLIAN static void +_evas_canvas3d_material_texture_set(Eo *obj, Evas_Canvas3D_Material_Data *pd, Evas_Canvas3D_Material_Attrib attrib, Evas_Canvas3D_Texture *texture) +{ + if (pd->attribs[attrib].texture != texture) + { + if (pd->attribs[attrib].texture) + { + evas_canvas3d_texture_material_del(pd->attribs[attrib].texture, obj); + eo_unref(pd->attribs[attrib].texture); + } + + pd->attribs[attrib].texture = texture; + evas_canvas3d_texture_material_add(texture, obj); + eo_ref(texture); + } + + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_MATERIAL_TEXTURE, NULL)); +} + +EOLIAN static Evas_Canvas3D_Texture * +_evas_canvas3d_material_texture_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Material_Data *pd, Evas_Canvas3D_Material_Attrib attrib) +{ + return pd->attribs[attrib].texture; +} + +#include "canvas/evas_canvas3d_material.eo.c" diff --git a/src/lib/evas/canvas/evas_3d_material.eo b/src/lib/evas/canvas/evas_canvas3d_material.eo index e9ce961cb9..f465a1b8ac 100644 --- a/src/lib/evas/canvas/evas_3d_material.eo +++ b/src/lib/evas/canvas/evas_canvas3d_material.eo @@ -1,7 +1,7 @@ -class Evas_3D_Material (Evas_3D_Object, Evas.Common_Interface) +class Evas_Canvas3D_Material (Evas_Canvas3D_Object, Evas.Common_Interface) { legacy_prefix: null; - data: Evas_3D_Material_Data; + data: Evas_Canvas3D_Material_Data; methods { color_set { /*@ @@ -20,11 +20,11 @@ class Evas_3D_Material (Evas_3D_Object, Evas.Common_Interface) Emission : (0.0, 0.0, 0.0, 1.0) Normal : Not used - @ingroup Evas_3D_Material + @ingroup Evas_Canvas3D_Material */ params { - @in attrib: Evas_3D_Material_Attrib; /*@ Material attribute ID. */ + @in attrib: Evas_Canvas3D_Material_Attrib; /*@ Material attribute ID. */ @in r: Evas_Real; /*@ Red component of the color. */ @in g: Evas_Real; /*@ Green component of the color. */ @in b: Evas_Real; /*@ Blue component of the color. */ @@ -36,12 +36,12 @@ class Evas_3D_Material (Evas_3D_Object, Evas.Common_Interface) /*@ Get the material attribute color of the given material. - @see evas_3d_material_color_set() + @see evas_canvas3d_material_color_set() - @ingroup Evas_3D_Material + @ingroup Evas_Canvas3D_Material */ params { - @in attrib: Evas_3D_Material_Attrib; /*@ Material attribute ID. */ + @in attrib: Evas_Canvas3D_Material_Attrib; /*@ Material attribute ID. */ @out r: Evas_Real; /*@ Pointer to receive red component of the color. */ @out g: Evas_Real; /*@ Pointer to receive green component of the color. */ @out b: Evas_Real; /*@ Pointer to receive blue component of the color. */ @@ -60,21 +60,21 @@ class Evas_3D_Material (Evas_3D_Object, Evas.Common_Interface) By default, diffuse and specular is enabled. - @ingroup Evas_3D_Material + @ingroup Evas_Canvas3D_Material */ } get { /*@ Get the material attribute enable flag of the given material. - @see evas_3d_material_enable_set() + @see evas_canvas3d_material_enable_set() @return @c EINA_TRUE if enabled, or @c EINA_FALSE if not. - @ingroup Evas_3D_Material + @ingroup Evas_Canvas3D_Material */ } keys { - attrib: Evas_3D_Material_Attrib; /*@ Material attribute ID. */ + attrib: Evas_Canvas3D_Material_Attrib; /*@ Material attribute ID. */ } values { enable: bool; /*@ Whether to enable the attribute (@c EINA_TRUE), or not (@c EINA_FALSE). */ @@ -91,19 +91,19 @@ class Evas_3D_Material (Evas_3D_Object, Evas.Common_Interface) Default shininess value is 150.0. - @see evas_3d_material_enable_set() + @see evas_canvas3d_material_enable_set() - @ingroup Evas_3D_Material + @ingroup Evas_Canvas3D_Material */ } get { /*@ Get the shininess of the given material. - @see evas_3d_material_shininess_set() + @see evas_canvas3d_material_shininess_set() @return The shininess value. - @ingroup Evas_3D_Material + @ingroup Evas_Canvas3D_Material */ } values { @@ -118,36 +118,36 @@ class Evas_3D_Material (Evas_3D_Object, Evas.Common_Interface) You have to enable the desired attribute first. - @see evas_3d_material_enable_set() + @see evas_canvas3d_material_enable_set() - @ingroup Evas_3D_Material + @ingroup Evas_Canvas3D_Material */ } get { /*@ Get the texture of the given material. - @see evas_3d_material_texture_set() + @see evas_canvas3d_material_texture_set() @return The texture that is set to the given material attribute. - @ingroup Evas_3D_Material + @ingroup Evas_Canvas3D_Material */ } keys { - attrib: Evas_3D_Material_Attrib; /*@ Material attribute ID. */ + attrib: Evas_Canvas3D_Material_Attrib; /*@ Material attribute ID. */ } values { - texture: Evas_3D_Texture *; + texture: Evas_Canvas3D_Texture *; } } } implements { Eo.Base.constructor; Eo.Base.destructor; - Evas_3D_Object.update_notify; - Evas_3D_Object.change_notify; + Evas_Canvas3D_Object.update_notify; + Evas_Canvas3D_Object.change_notify; } } diff --git a/src/lib/evas/canvas/evas_3d_mesh.c b/src/lib/evas/canvas/evas_canvas3d_mesh.c index 506e942483..fb20da7b25 100644 --- a/src/lib/evas/canvas/evas_3d_mesh.c +++ b/src/lib/evas/canvas/evas_canvas3d_mesh.c @@ -1,13 +1,13 @@ #include "evas_common_private.h" #include "evas_private.h" -#define MY_CLASS EVAS_3D_MESH_CLASS +#define MY_CLASS EVAS_CANVAS3D_MESH_CLASS -static Evas_3D_Mesh_Frame * -evas_3d_mesh_frame_new(Evas_3D_Mesh *mesh) +static Evas_Canvas3D_Mesh_Frame * +evas_canvas3d_mesh_frame_new(Evas_Canvas3D_Mesh *mesh) { - Evas_3D_Mesh_Frame *frame = NULL; - frame = (Evas_3D_Mesh_Frame *)calloc(1, sizeof(Evas_3D_Mesh_Frame)); + Evas_Canvas3D_Mesh_Frame *frame = NULL; + frame = (Evas_Canvas3D_Mesh_Frame *)calloc(1, sizeof(Evas_Canvas3D_Mesh_Frame)); if (frame == NULL) { @@ -22,14 +22,14 @@ evas_3d_mesh_frame_new(Evas_3D_Mesh *mesh) } static void -evas_3d_mesh_frame_free(Evas_3D_Mesh_Frame *frame) +evas_canvas3d_mesh_frame_free(Evas_Canvas3D_Mesh_Frame *frame) { int i; if (frame->material) - evas_3d_material_mesh_del(frame->material, frame->mesh); + evas_canvas3d_material_mesh_del(frame->material, frame->mesh); - for (i = 0; i < EVAS_3D_VERTEX_ATTRIB_COUNT; i++) + for (i = 0; i < EVAS_CANVAS3D_VERTEX_ATTRIB_COUNT; i++) { if (frame->vertices[i].owns_data) free(frame->vertices[i].data); @@ -38,11 +38,11 @@ evas_3d_mesh_frame_free(Evas_3D_Mesh_Frame *frame) free(frame); } -Evas_3D_Mesh_Frame * -evas_3d_mesh_frame_find(Evas_3D_Mesh_Data *pd, int frame) +Evas_Canvas3D_Mesh_Frame * +evas_canvas3d_mesh_frame_find(Evas_Canvas3D_Mesh_Data *pd, int frame) { Eina_List *l; - Evas_3D_Mesh_Frame *f; + Evas_Canvas3D_Mesh_Frame *f; EINA_LIST_FOREACH(pd->frames, l, f) { @@ -54,9 +54,9 @@ evas_3d_mesh_frame_find(Evas_3D_Mesh_Data *pd, int frame) } Eina_Bool -evas_3d_mesh_aabb_add_to_frame(Evas_3D_Mesh_Data *pd, int frame, int stride) +evas_canvas3d_mesh_aabb_add_to_frame(Evas_Canvas3D_Mesh_Data *pd, int frame, int stride) { - Evas_3D_Mesh_Frame *curframe = evas_3d_mesh_frame_find(pd, frame); + Evas_Canvas3D_Mesh_Frame *curframe = evas_canvas3d_mesh_frame_find(pd, frame); int i = 0, j = 0, step = 0, size = 0, max; float vxmin, vymin, vzmin, vxmax, vymax, vzmax; float *minmaxdata = NULL; @@ -70,9 +70,9 @@ evas_3d_mesh_aabb_add_to_frame(Evas_3D_Mesh_Data *pd, int frame, int stride) return EINA_FALSE; } - step = curframe->vertices[EVAS_3D_VERTEX_POSITION].element_count; - size = curframe->vertices[EVAS_3D_VERTEX_POSITION].size; - minmaxdata = (float *)curframe->vertices[EVAS_3D_VERTEX_POSITION].data; + step = curframe->vertices[EVAS_CANVAS3D_VERTEX_POSITION].element_count; + size = curframe->vertices[EVAS_CANVAS3D_VERTEX_POSITION].size; + minmaxdata = (float *)curframe->vertices[EVAS_CANVAS3D_VERTEX_POSITION].data; if (!minmaxdata) { @@ -104,24 +104,24 @@ evas_3d_mesh_aabb_add_to_frame(Evas_3D_Mesh_Data *pd, int frame, int stride) } static inline void -_mesh_init(Evas_3D_Mesh_Data *pd) +_mesh_init(Evas_Canvas3D_Mesh_Data *pd) { pd->vertex_count = 0; pd->frame_count = 0; pd->frames = NULL; - pd->index_format = EVAS_3D_INDEX_FORMAT_NONE; + pd->index_format = EVAS_CANVAS3D_INDEX_FORMAT_NONE; pd->index_count = 0; pd->indices = NULL; pd->owns_indices = EINA_FALSE; - pd->assembly = EVAS_3D_VERTEX_ASSEMBLY_TRIANGLES; + pd->assembly = EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLES; pd->nodes = NULL; - pd->blend_sfactor = EVAS_3D_BLEND_ONE; - pd->blend_dfactor = EVAS_3D_BLEND_ZERO; + pd->blend_sfactor = EVAS_CANVAS3D_BLEND_ONE; + pd->blend_dfactor = EVAS_CANVAS3D_BLEND_ZERO; pd->blending = EINA_FALSE; - pd->alpha_comparison = EVAS_3D_COMPARISON_ALWAYS; + pd->alpha_comparison = EVAS_CANVAS3D_COMPARISON_ALWAYS; pd->alpha_ref_value = 0.0f; pd->alpha_test_enabled = EINA_FALSE; #ifndef GL_GLES @@ -135,16 +135,16 @@ _mesh_init(Evas_3D_Mesh_Data *pd) } static inline void -_mesh_fini(Evas_3D_Mesh_Data *pd) +_mesh_fini(Evas_Canvas3D_Mesh_Data *pd) { Eina_List *l; - Evas_3D_Mesh_Frame *f; + Evas_Canvas3D_Mesh_Frame *f; if (pd->frames) { EINA_LIST_FOREACH(pd->frames, l, f) { - evas_3d_mesh_frame_free(f); + evas_canvas3d_mesh_frame_free(f); } eina_list_free(pd->frames); @@ -161,8 +161,8 @@ static Eina_Bool _mesh_node_geometry_change_notify(const Eina_Hash *hash EINA_UNUSED, const void *key, void *data EINA_UNUSED, void *fdata) { - Evas_3D_Node *n = *(Evas_3D_Node **)key; - eo_do(n, evas_3d_object_change(EVAS_3D_STATE_NODE_MESH_GEOMETRY, (Evas_3D_Object *)fdata)); + Evas_Canvas3D_Node *n = *(Evas_Canvas3D_Node **)key; + eo_do(n, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_MESH_GEOMETRY, (Evas_Canvas3D_Object *)fdata)); return EINA_TRUE; } @@ -170,15 +170,15 @@ static Eina_Bool _mesh_node_material_change_notify(const Eina_Hash *hash EINA_UNUSED, const void *key, void *data EINA_UNUSED, void *fdata) { - Evas_3D_Node *n = *(Evas_3D_Node **)key; - eo_do(n, evas_3d_object_change(EVAS_3D_STATE_NODE_MESH_MATERIAL, (Evas_3D_Object *)fdata)); + Evas_Canvas3D_Node *n = *(Evas_Canvas3D_Node **)key; + eo_do(n, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_MESH_MATERIAL, (Evas_Canvas3D_Object *)fdata)); return EINA_TRUE; } static void -_evas_3d_mesh_evas_3d_object_change_notify(Eo *obj, Evas_3D_Mesh_Data *pd, Evas_3D_State state, Evas_3D_Object *ref EINA_UNUSED) +_evas_canvas3d_mesh_evas_canvas3d_object_change_notify(Eo *obj, Evas_Canvas3D_Mesh_Data *pd, Evas_Canvas3D_State state, Evas_Canvas3D_Object *ref EINA_UNUSED) { - if (state == EVAS_3D_STATE_MESH_MATERIAL) + if (state == EVAS_CANVAS3D_STATE_MESH_MATERIAL) { if (pd->nodes) eina_hash_foreach(pd->nodes, _mesh_node_material_change_notify, obj); @@ -191,26 +191,26 @@ _evas_3d_mesh_evas_3d_object_change_notify(Eo *obj, Evas_3D_Mesh_Data *pd, Evas_ } EOLIAN static void -_evas_3d_mesh_evas_3d_object_update_notify(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd) +_evas_canvas3d_mesh_evas_canvas3d_object_update_notify(Eo *obj EINA_UNUSED, Evas_Canvas3D_Mesh_Data *pd) { Eina_List *l; - Evas_3D_Mesh_Frame *f; + Evas_Canvas3D_Mesh_Frame *f; EINA_LIST_FOREACH(pd->frames, l, f) { if (f->material) { - eo_do(f->material, evas_3d_object_update()); + eo_do(f->material, evas_canvas3d_object_update()); } } } void -evas_3d_mesh_node_add(Evas_3D_Mesh *mesh, Evas_3D_Node *node) +evas_canvas3d_mesh_node_add(Evas_Canvas3D_Mesh *mesh, Evas_Canvas3D_Node *node) { int count = 0; - Evas_3D_Mesh_Data *pd = eo_data_scope_get(mesh, MY_CLASS); + Evas_Canvas3D_Mesh_Data *pd = eo_data_scope_get(mesh, MY_CLASS); if (pd->nodes == NULL) { pd->nodes = eina_hash_pointer_new(NULL); @@ -228,10 +228,10 @@ evas_3d_mesh_node_add(Evas_3D_Mesh *mesh, Evas_3D_Node *node) } void -evas_3d_mesh_node_del(Evas_3D_Mesh *mesh, Evas_3D_Node *node) +evas_canvas3d_mesh_node_del(Evas_Canvas3D_Mesh *mesh, Evas_Canvas3D_Node *node) { int count = 0; - Evas_3D_Mesh_Data *pd = eo_data_scope_get(mesh, MY_CLASS); + Evas_Canvas3D_Mesh_Data *pd = eo_data_scope_get(mesh, MY_CLASS); if (pd->nodes == NULL) { ERR("No node to delete."); @@ -247,8 +247,8 @@ evas_3d_mesh_node_del(Evas_3D_Mesh *mesh, Evas_3D_Node *node) } -EAPI Evas_3D_Mesh * -evas_3d_mesh_add(Evas *e) +EAPI Evas_Canvas3D_Mesh * +evas_canvas3d_mesh_add(Evas *e) { MAGIC_CHECK(e, Evas, MAGIC_EVAS); return NULL; @@ -258,55 +258,55 @@ evas_3d_mesh_add(Evas *e) } EOLIAN static Eo * -_evas_3d_mesh_eo_base_constructor(Eo *obj, Evas_3D_Mesh_Data *pd) +_evas_canvas3d_mesh_eo_base_constructor(Eo *obj, Evas_Canvas3D_Mesh_Data *pd) { obj = eo_do_super_ret(obj, MY_CLASS, obj, eo_constructor()); - eo_do (obj, evas_3d_object_type_set(EVAS_3D_OBJECT_TYPE_MESH)); + eo_do (obj, evas_canvas3d_object_type_set(EVAS_CANVAS3D_OBJECT_TYPE_MESH)); _mesh_init(pd); return obj; } EOLIAN static void -_evas_3d_mesh_eo_base_destructor(Eo *obj, Evas_3D_Mesh_Data *pd) +_evas_canvas3d_mesh_eo_base_destructor(Eo *obj, Evas_Canvas3D_Mesh_Data *pd) { _mesh_fini(pd); eo_do_super(obj, MY_CLASS, eo_destructor()); } EOLIAN static void -_evas_3d_mesh_shade_mode_set(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd, Evas_3D_Shade_Mode mode) +_evas_canvas3d_mesh_shade_mode_set(Eo *obj EINA_UNUSED, Evas_Canvas3D_Mesh_Data *pd, Evas_Canvas3D_Shade_Mode mode) { if (pd->shade_mode != mode) { pd->shade_mode = mode; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_MESH_SHADE_MODE, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_MESH_SHADE_MODE, NULL)); } } -EOLIAN static Evas_3D_Shade_Mode -_evas_3d_mesh_shade_mode_get(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd) +EOLIAN static Evas_Canvas3D_Shade_Mode +_evas_canvas3d_mesh_shade_mode_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Mesh_Data *pd) { return pd->shade_mode; } EOLIAN static void -_evas_3d_mesh_vertex_count_set(Eo *obj, Evas_3D_Mesh_Data *pd, unsigned int count) +_evas_canvas3d_mesh_vertex_count_set(Eo *obj, Evas_Canvas3D_Mesh_Data *pd, unsigned int count) { pd->vertex_count = count; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_MESH_VERTEX_COUNT, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_MESH_VERTEX_COUNT, NULL)); } EOLIAN static unsigned int -_evas_3d_mesh_vertex_count_get(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd) +_evas_canvas3d_mesh_vertex_count_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Mesh_Data *pd) { return pd->vertex_count; } EOLIAN static void -_evas_3d_mesh_frame_add(Eo *obj, Evas_3D_Mesh_Data *pd, int frame) +_evas_canvas3d_mesh_frame_add(Eo *obj, Evas_Canvas3D_Mesh_Data *pd, int frame) { - Evas_3D_Mesh_Frame *f = evas_3d_mesh_frame_find(pd, frame); + Evas_Canvas3D_Mesh_Frame *f = evas_canvas3d_mesh_frame_find(pd, frame); if (f != NULL) { @@ -314,20 +314,20 @@ _evas_3d_mesh_frame_add(Eo *obj, Evas_3D_Mesh_Data *pd, int frame) return; } - f = evas_3d_mesh_frame_new(obj); + f = evas_canvas3d_mesh_frame_new(obj); if (f == NULL) return; f->frame = frame; pd->frames = eina_list_append(pd->frames, f); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_MESH_FRAME, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_MESH_FRAME, NULL)); } EOLIAN static void -_evas_3d_mesh_frame_del(Eo *obj, Evas_3D_Mesh_Data *pd, int frame) +_evas_canvas3d_mesh_frame_del(Eo *obj, Evas_Canvas3D_Mesh_Data *pd, int frame) { - Evas_3D_Mesh_Frame *f = evas_3d_mesh_frame_find(pd, frame); + Evas_Canvas3D_Mesh_Frame *f = evas_canvas3d_mesh_frame_find(pd, frame); if (f == NULL) { @@ -336,14 +336,14 @@ _evas_3d_mesh_frame_del(Eo *obj, Evas_3D_Mesh_Data *pd, int frame) } pd->frames = eina_list_remove(pd->frames, f); - evas_3d_mesh_frame_free(f); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_MESH_FRAME, NULL)); + evas_canvas3d_mesh_frame_free(f); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_MESH_FRAME, NULL)); } EOLIAN static void -_evas_3d_mesh_frame_material_set(Eo *obj, Evas_3D_Mesh_Data *pd, int frame, Evas_3D_Material *material) +_evas_canvas3d_mesh_frame_material_set(Eo *obj, Evas_Canvas3D_Mesh_Data *pd, int frame, Evas_Canvas3D_Material *material) { - Evas_3D_Mesh_Frame *f = evas_3d_mesh_frame_find(pd, frame); + Evas_Canvas3D_Mesh_Frame *f = evas_canvas3d_mesh_frame_find(pd, frame); if (f == NULL) { @@ -356,20 +356,20 @@ _evas_3d_mesh_frame_material_set(Eo *obj, Evas_3D_Mesh_Data *pd, int frame, Evas if (f->material) { - evas_3d_material_mesh_del(f->material, obj); + evas_canvas3d_material_mesh_del(f->material, obj); eo_unref(f->material); } f->material = material; eo_ref(material); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_MESH_MATERIAL, NULL)); - evas_3d_material_mesh_add(material, obj); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_MESH_MATERIAL, NULL)); + evas_canvas3d_material_mesh_add(material, obj); } -EOLIAN static Evas_3D_Material * -_evas_3d_mesh_frame_material_get(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd, int frame) +EOLIAN static Evas_Canvas3D_Material * +_evas_canvas3d_mesh_frame_material_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Mesh_Data *pd, int frame) { - Evas_3D_Mesh_Frame *f = evas_3d_mesh_frame_find(pd, frame); + Evas_Canvas3D_Mesh_Frame *f = evas_canvas3d_mesh_frame_find(pd, frame); if (f == NULL) { @@ -381,9 +381,9 @@ _evas_3d_mesh_frame_material_get(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd, int } EOLIAN static void -_evas_3d_mesh_frame_vertex_data_set(Eo *obj, Evas_3D_Mesh_Data *pd, int frame, Evas_3D_Vertex_Attrib attrib, int stride, const void *data) +_evas_canvas3d_mesh_frame_vertex_data_set(Eo *obj, Evas_Canvas3D_Mesh_Data *pd, int frame, Evas_Canvas3D_Vertex_Attrib attrib, int stride, const void *data) { - Evas_3D_Mesh_Frame *f = evas_3d_mesh_frame_find(pd, frame); + Evas_Canvas3D_Mesh_Frame *f = evas_canvas3d_mesh_frame_find(pd, frame); int element_count; if (f == NULL) @@ -398,7 +398,7 @@ _evas_3d_mesh_frame_vertex_data_set(Eo *obj, Evas_3D_Mesh_Data *pd, int frame, E return; } - if (attrib == EVAS_3D_VERTEX_POSITION) + if (attrib == EVAS_CANVAS3D_VERTEX_POSITION) { int i = 0, j = 0, size = stride/sizeof(float); float vxmin, vymin, vzmin, vxmax, vymax, vzmax; @@ -434,19 +434,19 @@ _evas_3d_mesh_frame_vertex_data_set(Eo *obj, Evas_3D_Mesh_Data *pd, int frame, E ERR("Axis-Aligned Bounding Box wasn't added in frame %d ", frame); } } - else if (attrib == EVAS_3D_VERTEX_NORMAL) + else if (attrib == EVAS_CANVAS3D_VERTEX_NORMAL) { element_count = 3; } - else if (attrib == EVAS_3D_VERTEX_TANGENT) + else if (attrib == EVAS_CANVAS3D_VERTEX_TANGENT) { element_count = 3; } - else if (attrib == EVAS_3D_VERTEX_COLOR) + else if (attrib == EVAS_CANVAS3D_VERTEX_COLOR) { element_count = 4; } - else if (attrib == EVAS_3D_VERTEX_TEXCOORD) + else if (attrib == EVAS_CANVAS3D_VERTEX_TEXCOORD) { element_count = 2; } @@ -465,14 +465,14 @@ _evas_3d_mesh_frame_vertex_data_set(Eo *obj, Evas_3D_Mesh_Data *pd, int frame, E f->vertices[attrib].owns_data = EINA_FALSE; f->vertices[attrib].element_count = element_count; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_MESH_VERTEX_DATA, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_MESH_VERTEX_DATA, NULL)); } EOLIAN static void -_evas_3d_mesh_frame_vertex_data_copy_set(Eo *obj, Evas_3D_Mesh_Data *pd, int frame, Evas_3D_Vertex_Attrib attrib, int stride, const void *data) +_evas_canvas3d_mesh_frame_vertex_data_copy_set(Eo *obj, Evas_Canvas3D_Mesh_Data *pd, int frame, Evas_Canvas3D_Vertex_Attrib attrib, int stride, const void *data) { - Evas_3D_Mesh_Frame *f = evas_3d_mesh_frame_find(pd, frame); - Evas_3D_Vertex_Buffer *vb; + Evas_Canvas3D_Mesh_Frame *f = evas_canvas3d_mesh_frame_find(pd, frame); + Evas_Canvas3D_Vertex_Buffer *vb; int size, element_count; if (f == NULL) @@ -481,23 +481,23 @@ _evas_3d_mesh_frame_vertex_data_copy_set(Eo *obj, Evas_3D_Mesh_Data *pd, int fra return; } - if (attrib == EVAS_3D_VERTEX_POSITION) + if (attrib == EVAS_CANVAS3D_VERTEX_POSITION) { element_count = 3; } - else if (attrib == EVAS_3D_VERTEX_NORMAL) + else if (attrib == EVAS_CANVAS3D_VERTEX_NORMAL) { element_count = 3; } - else if (attrib == EVAS_3D_VERTEX_TANGENT) + else if (attrib == EVAS_CANVAS3D_VERTEX_TANGENT) { element_count = 3; } - else if (attrib == EVAS_3D_VERTEX_COLOR) + else if (attrib == EVAS_CANVAS3D_VERTEX_COLOR) { element_count = 4; } - else if (attrib == EVAS_3D_VERTEX_TEXCOORD) + else if (attrib == EVAS_CANVAS3D_VERTEX_TEXCOORD) { element_count = 2; } @@ -583,19 +583,19 @@ _evas_3d_mesh_frame_vertex_data_copy_set(Eo *obj, Evas_3D_Mesh_Data *pd, int fra } } - if (attrib == EVAS_3D_VERTEX_POSITION && - !evas_3d_mesh_aabb_add_to_frame(pd, frame, stride)) + if (attrib == EVAS_CANVAS3D_VERTEX_POSITION && + !evas_canvas3d_mesh_aabb_add_to_frame(pd, frame, stride)) { ERR("Axis-Aligned Bounding Box wasn't added in frame %d ", frame); } - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_MESH_VERTEX_DATA, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_MESH_VERTEX_DATA, NULL)); } EOLIAN static void * -_evas_3d_mesh_frame_vertex_data_map(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd, int frame, Evas_3D_Vertex_Attrib attrib) +_evas_canvas3d_mesh_frame_vertex_data_map(Eo *obj EINA_UNUSED, Evas_Canvas3D_Mesh_Data *pd, int frame, Evas_Canvas3D_Vertex_Attrib attrib) { - Evas_3D_Mesh_Frame *f = evas_3d_mesh_frame_find(pd, frame); + Evas_Canvas3D_Mesh_Frame *f = evas_canvas3d_mesh_frame_find(pd, frame); if (f == NULL) { @@ -614,9 +614,9 @@ _evas_3d_mesh_frame_vertex_data_map(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd, } EOLIAN static void -_evas_3d_mesh_frame_vertex_data_unmap(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd, int frame, Evas_3D_Vertex_Attrib attrib) +_evas_canvas3d_mesh_frame_vertex_data_unmap(Eo *obj EINA_UNUSED, Evas_Canvas3D_Mesh_Data *pd, int frame, Evas_Canvas3D_Vertex_Attrib attrib) { - Evas_3D_Mesh_Frame *f = evas_3d_mesh_frame_find(pd, frame); + Evas_Canvas3D_Mesh_Frame *f = evas_canvas3d_mesh_frame_find(pd, frame); if (f == NULL) { @@ -634,9 +634,9 @@ _evas_3d_mesh_frame_vertex_data_unmap(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd } EOLIAN static int -_evas_3d_mesh_frame_vertex_stride_get(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd, int frame, Evas_3D_Vertex_Attrib attrib) +_evas_canvas3d_mesh_frame_vertex_stride_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Mesh_Data *pd, int frame, Evas_Canvas3D_Vertex_Attrib attrib) { - Evas_3D_Mesh_Frame *f = evas_3d_mesh_frame_find(pd, frame); + Evas_Canvas3D_Mesh_Frame *f = evas_canvas3d_mesh_frame_find(pd, frame); if (f == NULL) { @@ -648,7 +648,7 @@ _evas_3d_mesh_frame_vertex_stride_get(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd } EOLIAN static void -_evas_3d_mesh_index_data_set(Eo *obj, Evas_3D_Mesh_Data *pd, Evas_3D_Index_Format format, int count, const void *indices) +_evas_canvas3d_mesh_index_data_set(Eo *obj, Evas_Canvas3D_Mesh_Data *pd, Evas_Canvas3D_Index_Format format, int count, const void *indices) { if (pd->owns_indices && pd->indices) free(pd->indices); @@ -659,19 +659,19 @@ _evas_3d_mesh_index_data_set(Eo *obj, Evas_3D_Mesh_Data *pd, Evas_3D_Index_Forma pd->indices = (void *)indices; pd->owns_indices = EINA_FALSE; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_MESH_INDEX_DATA, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_MESH_INDEX_DATA, NULL)); } EOLIAN static void -_evas_3d_mesh_index_data_copy_set(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd, Evas_3D_Index_Format format, int count, const void *indices) +_evas_canvas3d_mesh_index_data_copy_set(Eo *obj EINA_UNUSED, Evas_Canvas3D_Mesh_Data *pd, Evas_Canvas3D_Index_Format format, int count, const void *indices) { int size; - if (format == EVAS_3D_INDEX_FORMAT_UNSIGNED_BYTE) + if (format == EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_BYTE) { size = count * sizeof(unsigned char); } - else if (format == EVAS_3D_INDEX_FORMAT_UNSIGNED_SHORT) + else if (format == EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_SHORT) { size = count * sizeof(unsigned short); } @@ -705,20 +705,20 @@ _evas_3d_mesh_index_data_copy_set(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd, Ev memcpy(pd->indices, indices, size); } -EOLIAN static Evas_3D_Index_Format -_evas_3d_mesh_index_format_get(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd) +EOLIAN static Evas_Canvas3D_Index_Format +_evas_canvas3d_mesh_index_format_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Mesh_Data *pd) { return pd->index_format; } EOLIAN static int -_evas_3d_mesh_index_count_get(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd) +_evas_canvas3d_mesh_index_count_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Mesh_Data *pd) { return pd->index_count; } EOLIAN static void * -_evas_3d_mesh_index_data_map(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd) +_evas_canvas3d_mesh_index_data_map(Eo *obj EINA_UNUSED, Evas_Canvas3D_Mesh_Data *pd) { if (pd->index_mapped) { @@ -731,7 +731,7 @@ _evas_3d_mesh_index_data_map(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd) } EOLIAN static void -_evas_3d_mesh_index_data_unmap(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd) +_evas_canvas3d_mesh_index_data_unmap(Eo *obj EINA_UNUSED, Evas_Canvas3D_Mesh_Data *pd) { if (!pd->index_mapped) { @@ -743,27 +743,27 @@ _evas_3d_mesh_index_data_unmap(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd) } EOLIAN static void -_evas_3d_mesh_vertex_assembly_set(Eo *obj, Evas_3D_Mesh_Data *pd, Evas_3D_Vertex_Assembly assembly) +_evas_canvas3d_mesh_vertex_assembly_set(Eo *obj, Evas_Canvas3D_Mesh_Data *pd, Evas_Canvas3D_Vertex_Assembly assembly) { pd->assembly = assembly; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_MESH_VERTEX_ASSEMBLY, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_MESH_VERTEX_ASSEMBLY, NULL)); } -EOLIAN static Evas_3D_Vertex_Assembly -_evas_3d_mesh_vertex_assembly_get(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd) +EOLIAN static Evas_Canvas3D_Vertex_Assembly +_evas_canvas3d_mesh_vertex_assembly_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Mesh_Data *pd) { return pd->assembly; } EOLIAN static void -_evas_3d_mesh_fog_color_set(Eo *obj, Evas_3D_Mesh_Data *pd, Evas_Real r, Evas_Real g, Evas_Real b, Evas_Real a) +_evas_canvas3d_mesh_fog_color_set(Eo *obj, Evas_Canvas3D_Mesh_Data *pd, Evas_Real r, Evas_Real g, Evas_Real b, Evas_Real a) { evas_color_set(&pd->fog_color, r, g, b, a); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_MESH_FOG, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_MESH_FOG, NULL)); } EOLIAN static void -_evas_3d_mesh_fog_color_get(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd, +_evas_canvas3d_mesh_fog_color_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Mesh_Data *pd, Evas_Real *r, Evas_Real *g, Evas_Real *b, Evas_Real *a) { if (r) *r = pd->fog_color.r; @@ -773,61 +773,61 @@ _evas_3d_mesh_fog_color_get(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd, } EOLIAN static void -_evas_3d_mesh_fog_enable_set(Eo *obj, Evas_3D_Mesh_Data *pd, Eina_Bool enabled) +_evas_canvas3d_mesh_fog_enable_set(Eo *obj, Evas_Canvas3D_Mesh_Data *pd, Eina_Bool enabled) { pd->fog_enabled = enabled; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_MESH_FOG, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_MESH_FOG, NULL)); } EOLIAN static Eina_Bool -_evas_3d_mesh_fog_enable_get(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd) +_evas_canvas3d_mesh_fog_enable_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Mesh_Data *pd) { return pd->fog_enabled; } EOLIAN static void -_evas_3d_mesh_blending_enable_set(Eo *obj, Evas_3D_Mesh_Data *pd, Eina_Bool blending) +_evas_canvas3d_mesh_blending_enable_set(Eo *obj, Evas_Canvas3D_Mesh_Data *pd, Eina_Bool blending) { pd->blending = blending; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_MESH_BLENDING, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_MESH_BLENDING, NULL)); } EOLIAN static Eina_Bool -_evas_3d_mesh_blending_enable_get(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd) +_evas_canvas3d_mesh_blending_enable_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Mesh_Data *pd) { return pd->blending; } EOLIAN static void -_evas_3d_mesh_blending_func_set(Eo *obj, Evas_3D_Mesh_Data *pd, Evas_3D_Blend_Func sfactor, Evas_3D_Blend_Func dfactor) +_evas_canvas3d_mesh_blending_func_set(Eo *obj, Evas_Canvas3D_Mesh_Data *pd, Evas_Canvas3D_Blend_Func sfactor, Evas_Canvas3D_Blend_Func dfactor) { pd->blend_sfactor = sfactor; pd->blend_dfactor = dfactor; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_MESH_BLENDING, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_MESH_BLENDING, NULL)); } EOLIAN static void -_evas_3d_mesh_blending_func_get(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd, - Evas_3D_Blend_Func *sfactor, Evas_3D_Blend_Func *dfactor) +_evas_canvas3d_mesh_blending_func_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Mesh_Data *pd, + Evas_Canvas3D_Blend_Func *sfactor, Evas_Canvas3D_Blend_Func *dfactor) { if (sfactor) *sfactor = pd->blend_sfactor; if (dfactor) *dfactor = pd->blend_dfactor; } EOLIAN static void -_evas_3d_mesh_alpha_func_set(Eo *obj, Evas_3D_Mesh_Data *pd, Evas_3D_Comparison comparison, +_evas_canvas3d_mesh_alpha_func_set(Eo *obj, Evas_Canvas3D_Mesh_Data *pd, Evas_Canvas3D_Comparison comparison, Evas_Real ref_value) { if (pd->alpha_comparison == comparison && pd->alpha_ref_value == ref_value) return; pd->alpha_comparison = comparison; pd->alpha_ref_value = ref_value; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_MESH_ALPHA_TEST, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_MESH_ALPHA_TEST, NULL)); } EOLIAN static void -_evas_3d_mesh_alpha_func_get(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd, - Evas_3D_Comparison *comparison, +_evas_canvas3d_mesh_alpha_func_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Mesh_Data *pd, + Evas_Canvas3D_Comparison *comparison, Evas_Real *ref_value) { if (comparison) *comparison = pd->alpha_comparison; @@ -835,21 +835,21 @@ _evas_3d_mesh_alpha_func_get(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd, } EOLIAN static void -_evas_3d_mesh_alpha_test_enable_set(Eo *obj, Evas_3D_Mesh_Data *pd, Eina_Bool enabled) +_evas_canvas3d_mesh_alpha_test_enable_set(Eo *obj, Evas_Canvas3D_Mesh_Data *pd, Eina_Bool enabled) { pd->alpha_test_enabled = enabled; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_MESH_ALPHA_TEST, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_MESH_ALPHA_TEST, NULL)); } EOLIAN static Eina_Bool -_evas_3d_mesh_alpha_test_enable_get(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd) +_evas_canvas3d_mesh_alpha_test_enable_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Mesh_Data *pd) { return pd->alpha_test_enabled; } EOLIAN static Eina_Bool -_evas_3d_mesh_efl_file_mmap_set(Eo *obj, - Evas_3D_Mesh_Data *pd, +_evas_canvas3d_mesh_efl_file_mmap_set(Eo *obj, + Evas_Canvas3D_Mesh_Data *pd, const Eina_File *f, const char *key EINA_UNUSED) { _mesh_fini(pd); @@ -865,7 +865,7 @@ _evas_3d_mesh_efl_file_mmap_set(Eo *obj, /* FIXME: Imelemnt mmap_get and file_get. */ EOLIAN static Eina_Bool -_evas_3d_mesh_efl_file_file_set(Eo *obj, Evas_3D_Mesh_Data *pd, +_evas_canvas3d_mesh_efl_file_file_set(Eo *obj, Evas_Canvas3D_Mesh_Data *pd, const char *file, const char *key EINA_UNUSED) { @@ -879,14 +879,14 @@ _evas_3d_mesh_efl_file_file_set(Eo *obj, Evas_3D_Mesh_Data *pd, } EOLIAN static Eina_Bool -_evas_3d_mesh_efl_file_save(Eo *obj, Evas_3D_Mesh_Data *pd, +_evas_canvas3d_mesh_efl_file_save(Eo *obj, Evas_Canvas3D_Mesh_Data *pd, const char *file, const char *key EINA_UNUSED, const char *flags EINA_UNUSED) { if ((file == NULL) || (obj == NULL) || (pd == NULL)) return EINA_FALSE; - Evas_3D_Mesh_Frame *f = evas_3d_mesh_frame_find(pd, 0); + Evas_Canvas3D_Mesh_Frame *f = evas_canvas3d_mesh_frame_find(pd, 0); if (f == NULL) { @@ -899,20 +899,20 @@ _evas_3d_mesh_efl_file_save(Eo *obj, Evas_3D_Mesh_Data *pd, } EOLIAN static void -_evas_3d_mesh_from_primitive_set(Eo *obj, - Evas_3D_Mesh_Data *pd EINA_UNUSED, +_evas_canvas3d_mesh_from_primitive_set(Eo *obj, + Evas_Canvas3D_Mesh_Data *pd EINA_UNUSED, int frame, Eo *primitive) { if ((primitive == NULL) || (obj == NULL)) return; - Evas_3D_Primitive_Data *ppd = eo_data_scope_get(primitive, EVAS_3D_PRIMITIVE_CLASS); + Evas_Canvas3D_Primitive_Data *ppd = eo_data_scope_get(primitive, EVAS_CANVAS3D_PRIMITIVE_CLASS); evas_common_set_model_from_primitive(obj, frame, ppd); } void -evas_3d_mesh_interpolate_position_get(Evas_Vec3 *out, const Evas_3D_Vertex_Buffer *pos0, const Evas_3D_Vertex_Buffer *pos1, +evas_canvas3d_mesh_interpolate_position_get(Evas_Vec3 *out, const Evas_Canvas3D_Vertex_Buffer *pos0, const Evas_Canvas3D_Vertex_Buffer *pos1, Evas_Real weight, int index) { if (pos1->data == NULL) @@ -949,20 +949,20 @@ evas_3d_mesh_interpolate_position_get(Evas_Vec3 *out, const Evas_3D_Vertex_Buffe } static inline void -_mesh_frame_find(Evas_3D_Mesh *mesh, int frame, +_mesh_frame_find(Evas_Canvas3D_Mesh *mesh, int frame, Eina_List **l, Eina_List **r) { Eina_List *left, *right; - Evas_3D_Mesh_Frame *f0 = NULL, *f1; - Evas_3D_Mesh_Data *pdmesh = eo_data_scope_get(mesh, EVAS_3D_MESH_CLASS); + Evas_Canvas3D_Mesh_Frame *f0 = NULL, *f1; + Evas_Canvas3D_Mesh_Data *pdmesh = eo_data_scope_get(mesh, EVAS_CANVAS3D_MESH_CLASS); left = pdmesh->frames; right = eina_list_next(left); while (right) { - f0 = (Evas_3D_Mesh_Frame *)eina_list_data_get(left); - f1 = (Evas_3D_Mesh_Frame *)eina_list_data_get(right); + f0 = (Evas_Canvas3D_Mesh_Frame *)eina_list_data_get(left); + f1 = (Evas_Canvas3D_Mesh_Frame *)eina_list_data_get(right); if (frame >= f0->frame && frame <= f1->frame) break; @@ -991,19 +991,19 @@ _mesh_frame_find(Evas_3D_Mesh *mesh, int frame, } void -evas_3d_mesh_interpolate_vertex_buffer_get(Evas_3D_Mesh *mesh, int frame, - Evas_3D_Vertex_Attrib attrib, - Evas_3D_Vertex_Buffer *buf0, - Evas_3D_Vertex_Buffer *buf1, +evas_canvas3d_mesh_interpolate_vertex_buffer_get(Evas_Canvas3D_Mesh *mesh, int frame, + Evas_Canvas3D_Vertex_Attrib attrib, + Evas_Canvas3D_Vertex_Buffer *buf0, + Evas_Canvas3D_Vertex_Buffer *buf1, Evas_Real *weight) { Eina_List *l, *r; - const Evas_3D_Mesh_Frame *f0 = NULL, *f1 = NULL; + const Evas_Canvas3D_Mesh_Frame *f0 = NULL, *f1 = NULL; _mesh_frame_find(mesh, frame, &l, &r); while (l) { - f0 = (const Evas_3D_Mesh_Frame *)eina_list_data_get(l); + f0 = (const Evas_Canvas3D_Mesh_Frame *)eina_list_data_get(l); if (f0->vertices[attrib].data != NULL) break; @@ -1014,7 +1014,7 @@ evas_3d_mesh_interpolate_vertex_buffer_get(Evas_3D_Mesh *mesh, int frame, while (r) { - f1 = (const Evas_3D_Mesh_Frame *)eina_list_data_get(r); + f1 = (const Evas_Canvas3D_Mesh_Frame *)eina_list_data_get(r); if (f1->vertices[attrib].data != NULL) break; @@ -1066,16 +1066,16 @@ evas_3d_mesh_interpolate_vertex_buffer_get(Evas_3D_Mesh *mesh, int frame, } EOLIAN static Eina_Bool -_evas_3d_mesh_color_pick_enable_get(Eo *obj EINA_UNUSED, Evas_3D_Mesh_Data *pd) +_evas_canvas3d_mesh_color_pick_enable_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Mesh_Data *pd) { return pd->color_pick_enabled; } EOLIAN static void -_evas_3d_mesh_color_pick_enable_set(Eo *obj, Evas_3D_Mesh_Data *pd, Eina_Bool enabled) +_evas_canvas3d_mesh_color_pick_enable_set(Eo *obj, Evas_Canvas3D_Mesh_Data *pd, Eina_Bool enabled) { if (pd->color_pick_enabled != enabled) pd->color_pick_enabled = enabled; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_MESH_COLOR_PICK, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_MESH_COLOR_PICK, NULL)); } -#include "canvas/evas_3d_mesh.eo.c" +#include "canvas/evas_canvas3d_mesh.eo.c" diff --git a/src/lib/evas/canvas/evas_3d_mesh.eo b/src/lib/evas/canvas/evas_canvas3d_mesh.eo index db0f895df4..cd7010dc16 100644 --- a/src/lib/evas/canvas/evas_3d_mesh.eo +++ b/src/lib/evas/canvas/evas_canvas3d_mesh.eo @@ -1,7 +1,7 @@ -class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) +class Evas_Canvas3D_Mesh (Evas_Canvas3D_Object, Evas.Common_Interface, Efl.File) { legacy_prefix: null; - data: Evas_3D_Mesh_Data; + data: Evas_Canvas3D_Mesh_Data; methods { frame_vertex_data_set { @@ -10,20 +10,20 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) This function make evas read from the given buffer whenever it requires. If you want to release the buffer after calling this functions, use - evas_3d_mesh_frame_vertex_data_copy_set() instead. + evas_canvas3d_mesh_frame_vertex_data_copy_set() instead. After setting the vertex data, further modifications should be protected by map/unmap pair. - @see evas_3d_mesh_frame_vertex_data_copy_set() - @see evas_3d_mesh_frame_vertex_data_map() - @see evas_3d_mesh_frame_vertex_data_unmap() + @see evas_canvas3d_mesh_frame_vertex_data_copy_set() + @see evas_canvas3d_mesh_frame_vertex_data_map() + @see evas_canvas3d_mesh_frame_vertex_data_unmap() - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ params { @in frame: int; /*@ The number of the key frame. */ - @in attrib: Evas_3D_Vertex_Attrib; /*@ Vertex attribute ID. */ + @in attrib: Evas_Canvas3D_Vertex_Attrib; /*@ Vertex attribute ID. */ @in stride: int; /*@ Stride to go to the next vertex (in bytes). */ @in data: const(void)*; /*@ Pointer to the vertex data buffer. */ } @@ -34,18 +34,18 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) Set the vertex data of the key frame of the given mesh by copying from a buffer. This function allocates internal vertex buffer and copy from the given buffer. So you can release the buffer. If you want to modify the vertex data - use evas_3d_mesh_frame_vertex_data_map(). After finishing the modifications, - you should call evas_3d_mesh_frame_vertex_data_unmap(). + use evas_canvas3d_mesh_frame_vertex_data_map(). After finishing the modifications, + you should call evas_canvas3d_mesh_frame_vertex_data_unmap(). - @see evas_3d_mesh_frame_vertex_data_set() - @see evas_3d_mesh_frame_vertex_data_map() - @see evas_3d_mesh_frame_vertex_data_unmap() + @see evas_canvas3d_mesh_frame_vertex_data_set() + @see evas_canvas3d_mesh_frame_vertex_data_map() + @see evas_canvas3d_mesh_frame_vertex_data_unmap() - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ params { @in frame: int; /*@ The number of the key frame. */ - @in attrib: Evas_3D_Vertex_Attrib; /*@ Vertex attribute ID. */ + @in attrib: Evas_Canvas3D_Vertex_Attrib; /*@ Vertex attribute ID. */ @in stride: int; /*@ Stride to go to the next vertex (in bytes). */ @in data: const(void)*; /*@ Pointer to the vertex data buffer. */ } @@ -55,22 +55,22 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) /*@ Map the vertex buffer of the key frame of the given mesh. - After manipulating the mapped buffer, evas_3d_mesh_frame_vertex_data_unmap() + After manipulating the mapped buffer, evas_canvas3d_mesh_frame_vertex_data_unmap() should be called to properly download the data to the engine. If the data - was set using evas_3d_mesh_frame_vertex_data_set(), pointer to the original + was set using evas_canvas3d_mesh_frame_vertex_data_set(), pointer to the original buffer will be returned. Otherwise, the returned pointer can differ every time calling this function. - @see evas_3d_mesh_frame_vertex_data_unmap() + @see evas_canvas3d_mesh_frame_vertex_data_unmap() @return Starting address of the mapped vertex buffer. - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ return: void *; params { @in frame: int; /*@ The number of the key frame. */ - @in attrib: Evas_3D_Vertex_Attrib; /*@ Vertex attribute ID. */ + @in attrib: Evas_Canvas3D_Vertex_Attrib; /*@ Vertex attribute ID. */ } } @@ -78,14 +78,14 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) /*@ Unmap the vertex buffer of the key frame of the given mesh. - @see evas_3d_mesh_frame_vertex_data_map() + @see evas_canvas3d_mesh_frame_vertex_data_map() - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ params { @in frame: int; /*@ The number of the key frame. */ - @in attrib: Evas_3D_Vertex_Attrib; /*@ Vertex attribute ID. */ + @in attrib: Evas_Canvas3D_Vertex_Attrib; /*@ Vertex attribute ID. */ } } @@ -94,19 +94,19 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) Get the vertex buffer stride of the key frame of the given mesh. This function returns valid stride only when the vertex buffer is mapped. - If the data was set with evas_3d_mesh_frame_vertex_data_set(), the original + If the data was set with evas_canvas3d_mesh_frame_vertex_data_set(), the original stride will be returned unchanged. - @see evas_3d_mesh_frame_vertex_data_map() + @see evas_canvas3d_mesh_frame_vertex_data_map() @return Stride to go to the next vertex (in bytes). - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ return: int; params { @in frame: int; /*@ The number of the key frame. */ - @in attrib: Evas_3D_Vertex_Attrib; /*@ Vertex attribute ID. */ + @in attrib: Evas_Canvas3D_Vertex_Attrib; /*@ Vertex attribute ID. */ } } @@ -115,17 +115,17 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) Set the vertex index data of the given mesh. When the index data is set, Evas 3D assembles vertices using the index data. - If you want to free the data buffer, use evas_3d_mesh_index_data_copy_set(). + If you want to free the data buffer, use evas_canvas3d_mesh_index_data_copy_set(). Further modifications should be made within map/unmap pair. - @see evas_3d_mesh_index_data_copy_set() - @see evas_3d_mesh_index_data_map() - @see evas_3d_mesh_index_data_unmap() + @see evas_canvas3d_mesh_index_data_copy_set() + @see evas_canvas3d_mesh_index_data_map() + @see evas_canvas3d_mesh_index_data_unmap() - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ params { - @in format: Evas_3D_Index_Format; /*@ Vertex index data format. */ + @in format: Evas_Canvas3D_Index_Format; /*@ Vertex index data format. */ @in count: int; /*@ Vertex index count. */ @in indices: const(void)*; /*@ Pointer to the index data. */ } @@ -139,12 +139,12 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) This function allocates internal index buffer any copy data from the given buffer. Futher modifications can be made within map/unmap pair. - @see evas_3d_mesh_index_data_set() + @see evas_canvas3d_mesh_index_data_set() - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ params { - @in format: Evas_3D_Index_Format; /*@ Vertex index data format. */ + @in format: Evas_Canvas3D_Index_Format; /*@ Vertex index data format. */ @in count: int; /*@ Vertex index count. */ @in indices: const(void)*; /*@ Pointer to the index data. */ } @@ -157,17 +157,17 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) Returns valid format only when the index buffer is mapped. First map the index buffer and then query the properties of the mapped buffer. If the index - data was set by evas_3d_mesh_index_data_set(), the original format will be + data was set by evas_canvas3d_mesh_index_data_set(), the original format will be returned. Otherwise the format can differ every time you call the - evas_3d_mesh_index_data_map() function. + evas_canvas3d_mesh_index_data_map() function. - @see evas_3d_mesh_index_data_map() + @see evas_canvas3d_mesh_index_data_map() @return Format of the index data. - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ - return: Evas_3D_Index_Format; + return: Evas_Canvas3D_Index_Format; } index_count_get @const { @@ -176,12 +176,12 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) This function returns the index count of the last called data_set function. - @see evas_3d_mesh_index_data_set() - @see evas_3d_mesh_index_data_copy_set() + @see evas_canvas3d_mesh_index_data_set() + @see evas_canvas3d_mesh_index_data_copy_set() @return Index data count. - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ return: int; } @@ -190,16 +190,16 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) /*@ Map the index buffer of the given mesh. - evas_3d_mesh_index_data_unmap() should be called after modifications. If the - data was set using evas_3d_mesh_index_data_set(), the original pointer will + evas_canvas3d_mesh_index_data_unmap() should be called after modifications. If the + data was set using evas_canvas3d_mesh_index_data_set(), the original pointer will be returned, otherwise, the returned pointer may differ every time you call this function. - @see evas_3d_mesh_index_data_unmap() + @see evas_canvas3d_mesh_index_data_unmap() @return Pointer to the mapped buffer. - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ return: void *; } @@ -208,9 +208,9 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) /*@ Unmap the index buffer of the given mesh. - @see evas_3d_mesh_index_data_map() + @see evas_canvas3d_mesh_index_data_map() - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ } @@ -223,7 +223,7 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) If specified frame is already exist, error message will be generated. - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ params { @in frame: int; /*@ The number of the key frame to be added. */ @@ -237,9 +237,9 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) @param mesh The given mesh. @param frame The number of the key frame to be deleted. - @see evas_3d_mesh_frame_add() + @see evas_canvas3d_mesh_frame_add() - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ params { @in frame: int; /*@ The number of the key frame to be added. */ @@ -249,7 +249,7 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) fog_color_set { /*@ Set the fog color and density for the given mesh. - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ params { @in r: Evas_Real; /*@ The red component of the fog color.*/ @@ -261,7 +261,7 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) fog_color_get { /*@ Set the fog color and density for the given mesh. - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ params { @out r: Evas_Real; /*@ Pointer to receive red component of the fog color.*/ @@ -273,32 +273,32 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) blending_func_set { /*@ Set the blending function for given mesh - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ params { - @in sfactor: Evas_3D_Blend_Func; /*@ Specifies how the red, green, blue, and alpha source blending factors are computed.*/ - @in dfactor: Evas_3D_Blend_Func; /*@ Specifies how the red, green, blue, and alpha destination blending factors are computed.*/ + @in sfactor: Evas_Canvas3D_Blend_Func; /*@ Specifies how the red, green, blue, and alpha source blending factors are computed.*/ + @in dfactor: Evas_Canvas3D_Blend_Func; /*@ Specifies how the red, green, blue, and alpha destination blending factors are computed.*/ } } blending_func_get { /*@ Get blending blending function for given mesh @see eavs_3d_mesh_blending_func_set() - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ params { - @out sfactor: Evas_3D_Blend_Func; /*@ Pointer to receive source blendin factors key.*/ - @out dfactor: Evas_3D_Blend_Func; /*@ Pointer to receive destination blendin factors key.*/ + @out sfactor: Evas_Canvas3D_Blend_Func; /*@ Pointer to receive source blendin factors key.*/ + @out dfactor: Evas_Canvas3D_Blend_Func; /*@ Pointer to receive destination blendin factors key.*/ } } from_primitive_set { /*@ Set the data of given mesh frame from the given primitive - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ params { @in frame: int; /*@ Specifies data of which frame of given mesh will be set.*/ - @in primitive: Evas_3D_Primitive *; /*@ Specifies which data will be set.*/ + @in primitive: Evas_Canvas3D_Primitive *; /*@ Specifies which data will be set.*/ } } @property shade_mode { @@ -306,9 +306,9 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) /*@ * Set the shade mode of the given mesh. * - * Default shade mode is EVAS_3D_SHADE_MODE_VERTEX_COLOR. + * Default shade mode is EVAS_CANVAS3D_SHADE_MODE_VERTEX_COLOR. * - * @ingroup Evas_3D_Mesh + * @ingroup Evas_Canvas3D_Mesh */ } get { @@ -317,11 +317,11 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) * * @see eavs_3d_mesh_shade_mode_set() * - * @ingroup Evas_3D_Mesh + * @ingroup Evas_Canvas3D_Mesh */ } values { - mode: Evas_3D_Shade_Mode; /*@ The shade mode.*/ + mode: Evas_Canvas3D_Shade_Mode; /*@ The shade mode.*/ } } @property color_pick_enable { @@ -329,7 +329,7 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) /*@ * Set posibility color picking. * - * @ingroup Evas_3D_Mesh + * @ingroup Evas_Canvas3D_Mesh */ } get { @@ -338,7 +338,7 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) * * @see color_pick_enable_set() * - * @ingroup Evas_3D_Mesh + * @ingroup Evas_Canvas3D_Mesh */ } values { @@ -356,16 +356,16 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) * Default vertex count is 0. - * @ingroup Evas_3D_Mesh + * @ingroup Evas_Canvas3D_Mesh */ } get { /*@ * Get the vertex count of the given mesh. * - * @see evas_3d_mesh_vertex_count_set() + * @see evas_canvas3d_mesh_vertex_count_set() * - * @ingroup Evas_3D_Mesh + * @ingroup Evas_Canvas3D_Mesh */ } values { @@ -379,7 +379,7 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) * * Default fog is disabled. * - * @ingroup Evas_3D_Mesh + * @ingroup Evas_Canvas3D_Mesh */ } get { @@ -388,7 +388,7 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) * * @see fog_enable_set() * - * @ingroup Evas_3D_Mesh + * @ingroup Evas_Canvas3D_Mesh */ } values { @@ -403,7 +403,7 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) * * Default alpha test disabled. * - * @ingroup Evas_3D_Mesh + * @ingroup Evas_Canvas3D_Mesh */ } get { @@ -412,7 +412,7 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) * * @see alpha_test_enable_set() * - * @ingroup Evas_3D_Mesh + * @ingroup Evas_Canvas3D_Mesh */ } values { @@ -427,7 +427,7 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) * between an incoming fragment's alpha value and a constant reference value * This func specifies the reference value and the comparison function. * - * @ingroup Evas_3D_Mesh + * @ingroup Evas_Canvas3D_Mesh */ } get { @@ -436,11 +436,11 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) * * @see eavs_3d_mesh_alpha_test_param_set() * - * @ingroup Evas_3D_Mesh + * @ingroup Evas_Canvas3D_Mesh */ } values { - comparison_func: Evas_3D_Comparison; /*@ Specifies the alpha comparison function.*/ + comparison_func: Evas_Canvas3D_Comparison; /*@ Specifies the alpha comparison function.*/ ref_value: Evas_Real; /*@ Specifies the reference value that incoming alpha values are compared to.*/ } } @@ -452,7 +452,7 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) * * Default blending disabled. * - * @ingroup Evas_3D_Mesh + * @ingroup Evas_Canvas3D_Mesh */ } get { @@ -461,7 +461,7 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) * * @see eavs_3d_mesh_blending_enable_set() * - * @ingroup Evas_3D_Mesh + * @ingroup Evas_Canvas3D_Mesh */ } values { @@ -477,23 +477,23 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) Setting different materials for each key frame is useful for doing animations like GIF images or color changing animationas. - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ } get { /*@ Get the material of the key frame of the given mesh. - @see evas_3d_mesh_frame_material_set() + @see evas_canvas3d_mesh_frame_material_set() - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ } keys { frame: int; /*@ The number of the key frame.*/ } values { - material: Evas_3D_Material *; /*@ The material to be set to the key frame.*/ + material: Evas_Canvas3D_Material *; /*@ The material to be set to the key frame.*/ } } @@ -505,24 +505,24 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) Vertex assembly defines how the engine organizes vertices into geometric primitives. - Default vertex assembly is EVAS_3D_VERTEX_ASSEMBLY_TRIANGLES. + Default vertex assembly is EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLES. - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ } get { /*@ Get the vertex assembly of the given mesh. - @see evas_3d_mesh_vertex_assembly_set() + @see evas_canvas3d_mesh_vertex_assembly_set() @return The vertex assembly. - @ingroup Evas_3D_Mesh + @ingroup Evas_Canvas3D_Mesh */ } values { - assembly: Evas_3D_Vertex_Assembly; /*@ Vertex assembly.*/ + assembly: Evas_Canvas3D_Vertex_Assembly; /*@ Vertex assembly.*/ } } @@ -530,8 +530,8 @@ class Evas_3D_Mesh (Evas_3D_Object, Evas.Common_Interface, Efl.File) implements { Eo.Base.constructor; Eo.Base.destructor; - Evas_3D_Object.update_notify; - Evas_3D_Object.change_notify; + Evas_Canvas3D_Object.update_notify; + Evas_Canvas3D_Object.change_notify; Efl.File.file.set; Efl.File.mmap.set; Efl.File.save; diff --git a/src/lib/evas/canvas/evas_3d_node.c b/src/lib/evas/canvas/evas_canvas3d_node.c index b355e5e5e0..461ce3bcb2 100644 --- a/src/lib/evas/canvas/evas_3d_node.c +++ b/src/lib/evas/canvas/evas_canvas3d_node.c @@ -1,17 +1,17 @@ #include "evas_common_private.h" #include "evas_private.h" -#include "evas_3d_node_callback.h" +#include "evas_canvas3d_node_callback.h" -#define MY_CLASS EVAS_3D_NODE_CLASS -#define MY_CLASS_NAME "Evas_3D_Node" +#define MY_CLASS EVAS_CANVAS3D_NODE_CLASS +#define MY_CLASS_NAME "Evas_Canvas3D_Node" -Evas_3D_Mesh_Frame *evas_3d_mesh_frame_find(Evas_3D_Mesh_Data *pd, int frame); +Evas_Canvas3D_Mesh_Frame *evas_canvas3d_mesh_frame_find(Evas_Canvas3D_Mesh_Data *pd, int frame); static void -_look_at_set(Evas_3D_Node_Data *pd, Evas_Vec3 *target, Evas_Vec3 *up); +_look_at_set(Evas_Canvas3D_Node_Data *pd, Evas_Vec3 *target, Evas_Vec3 *up); static Eina_Stringshare * -_generate_unic_color_key(Evas_Color *color, Evas_Color *bg_color, Evas_3D_Node *node, Evas_3D_Mesh *mesh, +_generate_unic_color_key(Evas_Color *color, Evas_Color *bg_color, Evas_Canvas3D_Node *node, Evas_Canvas3D_Mesh *mesh, Eina_Bool init) { #ifndef GL_GLES @@ -77,18 +77,18 @@ _generate_unic_color_key(Evas_Color *color, Evas_Color *bg_color, Evas_3D_Node * } static Eina_Bool -_evas_3d_node_private_callback_collision(void *data, Eo *obj EINA_UNUSED, +_evas_canvas3d_node_private_callback_collision(void *data, Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void *event_info) { Eina_List *collision_list = NULL, *l = NULL; - Evas_3D_Node *target_node = NULL, *n = NULL; - Evas_3D_Node_Data *pd_target = NULL, *pd = NULL; + Evas_Canvas3D_Node *target_node = NULL, *n = NULL; + Evas_Canvas3D_Node_Data *pd_target = NULL, *pd = NULL; const Eo_Event_Description *eo_desc = NULL; Eina_Bool ret = EINA_FALSE; - target_node = (Evas_3D_Node *)event_info; - pd_target = eo_data_scope_get(target_node, EVAS_3D_NODE_CLASS); + target_node = (Evas_Canvas3D_Node *)event_info; + pd_target = eo_data_scope_get(target_node, EVAS_CANVAS3D_NODE_CLASS); collision_list = (Eina_List *)data; eo_desc = eo_base_legacy_only_event_description_get("collision"); @@ -96,7 +96,7 @@ _evas_3d_node_private_callback_collision(void *data, Eo *obj EINA_UNUSED, { EINA_LIST_FOREACH(collision_list, l, n) { - pd = eo_data_scope_get(n, EVAS_3D_NODE_CLASS); + pd = eo_data_scope_get(n, EVAS_CANVAS3D_NODE_CLASS); if (box_intersection_box(&pd_target->aabb, &pd->aabb)) eo_do(target_node, ret = eo_event_callback_call(eo_desc, n)); } @@ -105,7 +105,7 @@ _evas_3d_node_private_callback_collision(void *data, Eo *obj EINA_UNUSED, return ret; } static Eina_Bool -_evas_3d_node_private_callback_clicked(void *data EINA_UNUSED, Eo *obj EINA_UNUSED, +_evas_canvas3d_node_private_callback_clicked(void *data EINA_UNUSED, Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void *event_info) { @@ -116,10 +116,10 @@ _evas_3d_node_private_callback_clicked(void *data EINA_UNUSED, Eo *obj EINA_UNUS return ret; } -static inline Evas_3D_Node_Mesh * -_node_mesh_new(Evas_3D_Node *node, Evas_3D_Mesh *mesh) +static inline Evas_Canvas3D_Node_Mesh * +_node_mesh_new(Evas_Canvas3D_Node *node, Evas_Canvas3D_Mesh *mesh) { - Evas_3D_Node_Mesh *nm = (Evas_3D_Node_Mesh *)malloc(sizeof(Evas_3D_Node_Mesh)); + Evas_Canvas3D_Node_Mesh *nm = (Evas_Canvas3D_Node_Mesh *)malloc(sizeof(Evas_Canvas3D_Node_Mesh)); if (nm == NULL) { @@ -135,7 +135,7 @@ _node_mesh_new(Evas_3D_Node *node, Evas_3D_Mesh *mesh) } static inline void -_node_mesh_free(Evas_3D_Node_Mesh *nm) +_node_mesh_free(Evas_Canvas3D_Node_Mesh *nm) { free(nm); } @@ -143,15 +143,15 @@ _node_mesh_free(Evas_3D_Node_Mesh *nm) static void _node_mesh_free_func(void *data) { - _node_mesh_free((Evas_3D_Node_Mesh *)data); + _node_mesh_free((Evas_Canvas3D_Node_Mesh *)data); } static Eina_Bool _node_scene_root_change_notify(const Eina_Hash *hash EINA_UNUSED, const void *key, void *data EINA_UNUSED, void *fdata) { - Evas_3D_Scene *s = *(Evas_3D_Scene **)key; - eo_do(s, evas_3d_object_change(EVAS_3D_STATE_SCENE_ROOT_NODE, (Evas_3D_Object *)fdata)); + Evas_Canvas3D_Scene *s = *(Evas_Canvas3D_Scene **)key; + eo_do(s, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_SCENE_ROOT_NODE, (Evas_Canvas3D_Object *)fdata)); return EINA_TRUE; } @@ -159,16 +159,16 @@ static Eina_Bool _node_scene_camera_change_notify(const Eina_Hash *hash EINA_UNUSED, const void *key, void *data EINA_UNUSED, void *fdata) { - Evas_3D_Scene *s = *(Evas_3D_Scene **)key; - eo_do(s, evas_3d_object_change(EVAS_3D_STATE_SCENE_CAMERA_NODE, (Evas_3D_Object *)fdata)); + Evas_Canvas3D_Scene *s = *(Evas_Canvas3D_Scene **)key; + eo_do(s, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_SCENE_CAMERA_NODE, (Evas_Canvas3D_Object *)fdata)); return EINA_TRUE; } EOLIAN static void -_evas_3d_node_evas_3d_object_change_notify(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_State state EINA_UNUSED , Evas_3D_Object *ref EINA_UNUSED) +_evas_canvas3d_node_evas_canvas3d_object_change_notify(Eo *obj, Evas_Canvas3D_Node_Data *pd, Evas_Canvas3D_State state EINA_UNUSED , Evas_Canvas3D_Object *ref EINA_UNUSED) { Eina_List *l; - Evas_3D_Node *n; + Evas_Canvas3D_Node *n; Eina_Bool orientation; Eina_Bool position; Eina_Bool scale; @@ -181,91 +181,91 @@ _evas_3d_node_evas_3d_object_change_notify(Eo *obj, Evas_3D_Node_Data *pd, Evas_ if (pd->scenes_camera) eina_hash_foreach(pd->scenes_camera, _node_scene_camera_change_notify, obj); - parent_change = (state == EVAS_3D_STATE_NODE_PARENT_ORIENTATION) - || (state == EVAS_3D_STATE_NODE_PARENT_POSITION) - || (state == EVAS_3D_STATE_NODE_PARENT_SCALE); + parent_change = (state == EVAS_CANVAS3D_STATE_NODE_PARENT_ORIENTATION) + || (state == EVAS_CANVAS3D_STATE_NODE_PARENT_POSITION) + || (state == EVAS_CANVAS3D_STATE_NODE_PARENT_SCALE); /* Notify parent that a member has changed. */ if (pd->parent && !parent_change) { - eo_do(pd->parent, evas_3d_object_change(EVAS_3D_STATE_NODE_MEMBER, obj)); + eo_do(pd->parent, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_MEMBER, obj)); } - orientation = (state == EVAS_3D_STATE_NODE_TRANSFORM_ORIENTATION) - || (state == EVAS_3D_STATE_NODE_PARENT_ORIENTATION); - position = (state == EVAS_3D_STATE_NODE_TRANSFORM_POSITION) - || (state == EVAS_3D_STATE_NODE_PARENT_POSITION); - scale = (state == EVAS_3D_STATE_NODE_TRANSFORM_SCALE) - || (state == EVAS_3D_STATE_NODE_PARENT_SCALE); + orientation = (state == EVAS_CANVAS3D_STATE_NODE_TRANSFORM_ORIENTATION) + || (state == EVAS_CANVAS3D_STATE_NODE_PARENT_ORIENTATION); + position = (state == EVAS_CANVAS3D_STATE_NODE_TRANSFORM_POSITION) + || (state == EVAS_CANVAS3D_STATE_NODE_PARENT_POSITION); + scale = (state == EVAS_CANVAS3D_STATE_NODE_TRANSFORM_SCALE) + || (state == EVAS_CANVAS3D_STATE_NODE_PARENT_SCALE); /* Notify members that the parent has changed. */ if (scale) EINA_LIST_FOREACH(pd->members, l, n) { - eo_do(n, evas_3d_object_change(EVAS_3D_STATE_NODE_PARENT_SCALE, obj)); + eo_do(n, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_PARENT_SCALE, obj)); } if (orientation && !(pd->billboard_target)) EINA_LIST_FOREACH(pd->members, l, n) { /*Skip change orientation if node is billboard*/ - Evas_3D_Node_Data *pdm = eo_data_scope_get(n, EVAS_3D_NODE_CLASS); + Evas_Canvas3D_Node_Data *pdm = eo_data_scope_get(n, EVAS_CANVAS3D_NODE_CLASS); if (pdm->billboard_target) continue; - eo_do(n, evas_3d_object_change(EVAS_3D_STATE_NODE_PARENT_ORIENTATION, obj)); + eo_do(n, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_PARENT_ORIENTATION, obj)); } if (position) EINA_LIST_FOREACH(pd->members, l, n) { - eo_do(n, evas_3d_object_change(EVAS_3D_STATE_NODE_PARENT_POSITION, obj)); + eo_do(n, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_PARENT_POSITION, obj)); } } EOLIAN static void -_evas_3d_node_evas_3d_object_callback_register(Eo *obj, Evas_3D_Node_Data *pd EINA_UNUSED, +_evas_canvas3d_node_evas_canvas3d_object_callback_register(Eo *obj, Evas_Canvas3D_Node_Data *pd EINA_UNUSED, const char *event, const void *data) { - Evas_3D_Node_Private_Callback_Type tcb; + Evas_Canvas3D_Node_Private_Callback_Type tcb; GET_CALLBACK_TYPE(tcb, event) if (tcb != PRIVATE_CALLBACK_NONE) - eo_do(obj, eo_event_callback_add(&evas_3d_node_private_event_desc[tcb], - evas_3d_node_private_callback_functions[tcb], data)); + eo_do(obj, eo_event_callback_add(&evas_canvas3d_node_private_event_desc[tcb], + evas_canvas3d_node_private_callback_functions[tcb], data)); } EOLIAN static void -_evas_3d_node_evas_3d_object_callback_unregister(Eo *obj, Evas_3D_Node_Data *pd EINA_UNUSED, +_evas_canvas3d_node_evas_canvas3d_object_callback_unregister(Eo *obj, Evas_Canvas3D_Node_Data *pd EINA_UNUSED, const char *event) { - Evas_3D_Node_Private_Callback_Type tcb; + Evas_Canvas3D_Node_Private_Callback_Type tcb; GET_CALLBACK_TYPE(tcb, event) if (tcb != PRIVATE_CALLBACK_NONE) - eo_do(obj, eo_event_callback_del(&evas_3d_node_private_event_desc[tcb], - evas_3d_node_private_callback_functions[tcb], NULL)); + eo_do(obj, eo_event_callback_del(&evas_canvas3d_node_private_event_desc[tcb], + evas_canvas3d_node_private_callback_functions[tcb], NULL)); } static Eina_Bool -_node_transform_update(Evas_3D_Node *node, void *data EINA_UNUSED) +_node_transform_update(Evas_Canvas3D_Node *node, void *data EINA_UNUSED) { - Evas_3D_Node_Data *pd = eo_data_scope_get(node, MY_CLASS); + Evas_Canvas3D_Node_Data *pd = eo_data_scope_get(node, MY_CLASS); Eina_Bool transform_dirty = EINA_FALSE, parent_dirty = EINA_FALSE; eo_do(node, - transform_dirty = evas_3d_object_dirty_get(EVAS_3D_STATE_NODE_TRANSFORM_ORIENTATION), - transform_dirty|= evas_3d_object_dirty_get(EVAS_3D_STATE_NODE_TRANSFORM_POSITION), - transform_dirty|= evas_3d_object_dirty_get(EVAS_3D_STATE_NODE_TRANSFORM_SCALE), - parent_dirty = evas_3d_object_dirty_get(EVAS_3D_STATE_NODE_PARENT_ORIENTATION), - parent_dirty |= evas_3d_object_dirty_get(EVAS_3D_STATE_NODE_PARENT_POSITION), - parent_dirty |= evas_3d_object_dirty_get(EVAS_3D_STATE_NODE_PARENT_SCALE)); + transform_dirty = evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_NODE_TRANSFORM_ORIENTATION), + transform_dirty|= evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_NODE_TRANSFORM_POSITION), + transform_dirty|= evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_NODE_TRANSFORM_SCALE), + parent_dirty = evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_NODE_PARENT_ORIENTATION), + parent_dirty |= evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_NODE_PARENT_POSITION), + parent_dirty |= evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_NODE_PARENT_SCALE)); if (transform_dirty || parent_dirty) { if (pd->parent) { - Evas_3D_Node_Data *pdparent = eo_data_scope_get(pd->parent, MY_CLASS); + Evas_Canvas3D_Node_Data *pdparent = eo_data_scope_get(pd->parent, MY_CLASS); const Evas_Vec3 *scale_parent = &pdparent->scale_world; const Evas_Vec4 *orientation_parent = &pdparent->orientation_world; @@ -307,16 +307,16 @@ _node_transform_update(Evas_3D_Node *node, void *data EINA_UNUSED) pd->scale_world = pd->scale; } - if (pd->type == EVAS_3D_NODE_TYPE_CAMERA) + if (pd->type == EVAS_CANVAS3D_NODE_TYPE_CAMERA) { evas_mat4_inverse_build(&pd->data.camera.matrix_world_to_eye, &pd->position_world, &pd->orientation_world, &pd->scale_world); } - else if (pd->type == EVAS_3D_NODE_TYPE_LIGHT) + else if (pd->type == EVAS_CANVAS3D_NODE_TYPE_LIGHT) { } - else if (pd->type == EVAS_3D_NODE_TYPE_MESH) + else if (pd->type == EVAS_CANVAS3D_NODE_TYPE_MESH) { evas_mat4_build(&pd->data.mesh.matrix_local_to_world, &pd->position_world, &pd->orientation_world, &pd->scale_world); @@ -338,14 +338,14 @@ _node_transform_update(Evas_3D_Node *node, void *data EINA_UNUSED) } static Eina_Bool -_node_billboard_update(Evas_3D_Node *node, void *data EINA_UNUSED) +_node_billboard_update(Evas_Canvas3D_Node *node, void *data EINA_UNUSED) { Evas_Vec3 target; Evas_Vec3 up; - Evas_3D_Node_Data *pd_node = eo_data_scope_get(node, MY_CLASS); + Evas_Canvas3D_Node_Data *pd_node = eo_data_scope_get(node, MY_CLASS); if (pd_node->billboard_target) { - Evas_3D_Node_Data *pd_target = eo_data_scope_get(pd_node->billboard_target, + Evas_Canvas3D_Node_Data *pd_target = eo_data_scope_get(pd_node->billboard_target, MY_CLASS); evas_vec3_set(&target, pd_target->position.x, pd_target->position.y, pd_target->position.z); @@ -353,19 +353,19 @@ _node_billboard_update(Evas_3D_Node *node, void *data EINA_UNUSED) _look_at_set(pd_node, &target, &up); - if (pd_node->type == EVAS_3D_NODE_TYPE_MESH) + if (pd_node->type == EVAS_CANVAS3D_NODE_TYPE_MESH) { evas_mat4_build(&pd_node->data.mesh.matrix_local_to_world, &pd_node->position, &pd_node->orientation, &pd_node->scale); } - else if (pd_node->type == EVAS_3D_NODE_TYPE_LIGHT) + else if (pd_node->type == EVAS_CANVAS3D_NODE_TYPE_LIGHT) { evas_mat4_build(&pd_node->data.light.matrix_local_to_world, &pd_node->position, &pd_node->orientation, &pd_node->scale); } - else if (pd_node->type == EVAS_3D_NODE_TYPE_CAMERA) + else if (pd_node->type == EVAS_CANVAS3D_NODE_TYPE_CAMERA) { evas_mat4_inverse_build(&pd_node->data.light.matrix_local_to_world, &pd_node->position, &pd_node->orientation, @@ -378,30 +378,30 @@ _node_billboard_update(Evas_3D_Node *node, void *data EINA_UNUSED) } static Eina_Bool -_node_item_update(Evas_3D_Node *node, void *data EINA_UNUSED) +_node_item_update(Evas_Canvas3D_Node *node, void *data EINA_UNUSED) { - Evas_3D_Node_Data *pd = eo_data_scope_get(node, EVAS_3D_NODE_CLASS); - if (pd->type == EVAS_3D_NODE_TYPE_CAMERA) + Evas_Canvas3D_Node_Data *pd = eo_data_scope_get(node, EVAS_CANVAS3D_NODE_CLASS); + if (pd->type == EVAS_CANVAS3D_NODE_TYPE_CAMERA) { if (pd->data.camera.camera) { - eo_do(pd->data.camera.camera, evas_3d_object_update()); + eo_do(pd->data.camera.camera, evas_canvas3d_object_update()); } } - else if (pd->type == EVAS_3D_NODE_TYPE_LIGHT) + else if (pd->type == EVAS_CANVAS3D_NODE_TYPE_LIGHT) { if (pd->data.light.light) { - eo_do(pd->data.light.light, evas_3d_object_update()); + eo_do(pd->data.light.light, evas_canvas3d_object_update()); } } - else if (pd->type == EVAS_3D_NODE_TYPE_MESH) + else if (pd->type == EVAS_CANVAS3D_NODE_TYPE_MESH) { Eina_List *l; - Evas_3D_Mesh *m; + Evas_Canvas3D_Mesh *m; EINA_LIST_FOREACH(pd->data.mesh.meshes, l, m) { - eo_do(m, evas_3d_object_update()); + eo_do(m, evas_canvas3d_object_update()); } } @@ -507,22 +507,22 @@ _calculate_box(Evas_Box3 *box3, int vertex_count, Evas_Vec3 *vertex_position) } static void -_pack_meshes_vertex_data(Evas_3D_Node *node, Evas_Vec3 **vertices, int *count) +_pack_meshes_vertex_data(Evas_Canvas3D_Node *node, Evas_Vec3 **vertices, int *count) { const Eina_List *m, *l; - Evas_3D_Mesh *mesh; + Evas_Canvas3D_Mesh *mesh; int j; int frame; Evas_Vec3 *it; - Evas_3D_Vertex_Buffer pos0, pos1; + Evas_Canvas3D_Vertex_Buffer pos0, pos1; Evas_Real pos_weight; *count = 0; - eo_do(node, m = (Eina_List *)evas_3d_node_mesh_list_get()); + eo_do(node, m = (Eina_List *)evas_canvas3d_node_mesh_list_get()); EINA_LIST_FOREACH(m, l, mesh) { - eo_do(node, frame = evas_3d_node_mesh_frame_get(mesh)); - evas_3d_mesh_interpolate_vertex_buffer_get(mesh, frame, EVAS_3D_VERTEX_POSITION, + eo_do(node, frame = evas_canvas3d_node_mesh_frame_get(mesh)); + evas_canvas3d_mesh_interpolate_vertex_buffer_get(mesh, frame, EVAS_CANVAS3D_VERTEX_POSITION, &pos0, &pos1, &pos_weight); if(!pos0.data) continue; if(!pos0.stride) @@ -544,8 +544,8 @@ _pack_meshes_vertex_data(Evas_3D_Node *node, Evas_Vec3 **vertices, int *count) EINA_LIST_FOREACH(m, l, mesh) { - eo_do(node, frame = evas_3d_node_mesh_frame_get(mesh)); - evas_3d_mesh_interpolate_vertex_buffer_get(mesh, frame, EVAS_3D_VERTEX_POSITION, + eo_do(node, frame = evas_canvas3d_node_mesh_frame_get(mesh)); + evas_canvas3d_mesh_interpolate_vertex_buffer_get(mesh, frame, EVAS_CANVAS3D_VERTEX_POSITION, &pos0, &pos1, &pos_weight); if(!pos0.data) continue; int stride = 0; @@ -559,16 +559,16 @@ _pack_meshes_vertex_data(Evas_3D_Node *node, Evas_Vec3 **vertices, int *count) } for (j = 0; j < pos0.size / stride; j++) { - evas_3d_mesh_interpolate_position_get(it, &pos0, &pos1, pos_weight, j); + evas_canvas3d_mesh_interpolate_position_get(it, &pos0, &pos1, pos_weight, j); it++; } } } static void -_update_node_shapes(Evas_3D_Node *node) +_update_node_shapes(Evas_Canvas3D_Node *node) { - Evas_3D_Node_Data *pd = eo_data_scope_get(node, EVAS_3D_NODE_CLASS); + Evas_Canvas3D_Node_Data *pd = eo_data_scope_get(node, EVAS_CANVAS3D_NODE_CLASS); Eina_Bool transform_orientation_dirty; Eina_Bool transform_scale_dirty; Eina_Bool mesh_geom_dirty; @@ -576,7 +576,7 @@ _update_node_shapes(Evas_3D_Node *node) Evas_Vec3 position = pd->position_world; evas_vec3_set(&scale, pd->scale_world.x, pd->scale.y, pd->scale.z); - if (pd->type != EVAS_3D_NODE_TYPE_MESH) + if (pd->type != EVAS_CANVAS3D_NODE_TYPE_MESH) { evas_box3_empty_set(&pd->local_aabb); evas_box3_empty_set(&pd->local_obb); @@ -593,12 +593,12 @@ _update_node_shapes(Evas_3D_Node *node) } eo_do(node, - transform_orientation_dirty = evas_3d_object_dirty_get(EVAS_3D_STATE_NODE_TRANSFORM_ORIENTATION), - transform_orientation_dirty |= evas_3d_object_dirty_get(EVAS_3D_STATE_NODE_PARENT_ORIENTATION), - transform_scale_dirty = evas_3d_object_dirty_get(EVAS_3D_STATE_NODE_TRANSFORM_SCALE), - transform_scale_dirty |= evas_3d_object_dirty_get(EVAS_3D_STATE_NODE_PARENT_SCALE), - mesh_geom_dirty = evas_3d_object_dirty_get(EVAS_3D_STATE_NODE_MESH_GEOMETRY), - mesh_geom_dirty |= evas_3d_object_dirty_get(EVAS_3D_STATE_NODE_MESH_FRAME)); + transform_orientation_dirty = evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_NODE_TRANSFORM_ORIENTATION), + transform_orientation_dirty |= evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_NODE_PARENT_ORIENTATION), + transform_scale_dirty = evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_NODE_TRANSFORM_SCALE), + transform_scale_dirty |= evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_NODE_PARENT_SCALE), + mesh_geom_dirty = evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_NODE_MESH_GEOMETRY), + mesh_geom_dirty |= evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_NODE_MESH_FRAME)); if ( transform_orientation_dirty || transform_scale_dirty || mesh_geom_dirty) { @@ -632,24 +632,24 @@ _update_node_shapes(Evas_3D_Node *node) } static Eina_Bool -_node_aabb_update(Evas_3D_Node *node, void *data EINA_UNUSED) +_node_aabb_update(Evas_Canvas3D_Node *node, void *data EINA_UNUSED) { - Evas_3D_Node_Data *pd = eo_data_scope_get(node, EVAS_3D_NODE_CLASS); + Evas_Canvas3D_Node_Data *pd = eo_data_scope_get(node, EVAS_CANVAS3D_NODE_CLASS); Eina_Bool need_recalc; Eina_List *current; - Evas_3D_Node *datanode; + Evas_Canvas3D_Node *datanode; const Eo_Event_Description *eo_desc = NULL; eo_do(node, - need_recalc = evas_3d_object_dirty_get(EVAS_3D_STATE_NODE_TRANSFORM_ORIENTATION), - need_recalc |= evas_3d_object_dirty_get(EVAS_3D_STATE_NODE_PARENT_ORIENTATION), - need_recalc |= evas_3d_object_dirty_get(EVAS_3D_STATE_NODE_TRANSFORM_POSITION), - need_recalc |= evas_3d_object_dirty_get(EVAS_3D_STATE_NODE_PARENT_POSITION), - need_recalc |= evas_3d_object_dirty_get(EVAS_3D_STATE_NODE_TRANSFORM_SCALE), - need_recalc |= evas_3d_object_dirty_get(EVAS_3D_STATE_NODE_PARENT_SCALE), - need_recalc |= evas_3d_object_dirty_get(EVAS_3D_STATE_NODE_MESH_GEOMETRY), - need_recalc |= evas_3d_object_dirty_get(EVAS_3D_STATE_NODE_MESH_FRAME), - need_recalc |= evas_3d_object_dirty_get(EVAS_3D_STATE_NODE_MEMBER)); + need_recalc = evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_NODE_TRANSFORM_ORIENTATION), + need_recalc |= evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_NODE_PARENT_ORIENTATION), + need_recalc |= evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_NODE_TRANSFORM_POSITION), + need_recalc |= evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_NODE_PARENT_POSITION), + need_recalc |= evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_NODE_TRANSFORM_SCALE), + need_recalc |= evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_NODE_PARENT_SCALE), + need_recalc |= evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_NODE_MESH_GEOMETRY), + need_recalc |= evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_NODE_MESH_FRAME), + need_recalc |= evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_NODE_MEMBER)); if (!need_recalc) return EINA_TRUE; @@ -657,7 +657,7 @@ _node_aabb_update(Evas_3D_Node *node, void *data EINA_UNUSED) EINA_LIST_FOREACH(pd->members, current, datanode) { - Evas_3D_Node_Data *datapd = eo_data_scope_get(datanode, EVAS_3D_NODE_CLASS); + Evas_Canvas3D_Node_Data *datapd = eo_data_scope_get(datanode, EVAS_CANVAS3D_NODE_CLASS); evas_box3_union(&pd->obb, &pd->obb, &datapd->obb); evas_box3_union(&pd->aabb, &pd->aabb, &datapd->aabb); } @@ -670,45 +670,45 @@ _node_aabb_update(Evas_3D_Node *node, void *data EINA_UNUSED) } static Eina_Bool -_node_update_done(Evas_3D_Node *obj, void *data EINA_UNUSED) +_node_update_done(Evas_Canvas3D_Node *obj, void *data EINA_UNUSED) { //@FIXME - Evas_3D_Object_Data *pdobject = eo_data_scope_get(obj, EVAS_3D_OBJECT_CLASS); - memset(&pdobject->dirty[0], 0x00, sizeof(Eina_Bool) * EVAS_3D_STATE_MAX); + Evas_Canvas3D_Object_Data *pdobject = eo_data_scope_get(obj, EVAS_CANVAS3D_OBJECT_CLASS); + memset(&pdobject->dirty[0], 0x00, sizeof(Eina_Bool) * EVAS_CANVAS3D_STATE_MAX); return EINA_TRUE; } EOLIAN static void -_evas_3d_node_evas_3d_object_update_notify(Eo *obj, Evas_3D_Node_Data *pd EINA_UNUSED) +_evas_canvas3d_node_evas_canvas3d_object_update_notify(Eo *obj, Evas_Canvas3D_Node_Data *pd EINA_UNUSED) { /* Update transform. */ - evas_3d_node_tree_traverse(obj, EVAS_3D_TREE_TRAVERSE_LEVEL_ORDER, EINA_FALSE, + evas_canvas3d_node_tree_traverse(obj, EVAS_CANVAS3D_TREE_TRAVERSE_LEVEL_ORDER, EINA_FALSE, _node_transform_update, NULL); /*Update billboard*/ - evas_3d_node_tree_traverse(obj, EVAS_3D_TREE_TRAVERSE_ANY_ORDER, EINA_FALSE, + evas_canvas3d_node_tree_traverse(obj, EVAS_CANVAS3D_TREE_TRAVERSE_ANY_ORDER, EINA_FALSE, _node_billboard_update, NULL); /* Update AABB. */ - evas_3d_node_tree_traverse(obj, EVAS_3D_TREE_TRAVERSE_POST_ORDER, EINA_FALSE, + evas_canvas3d_node_tree_traverse(obj, EVAS_CANVAS3D_TREE_TRAVERSE_POST_ORDER, EINA_FALSE, _node_aabb_update, NULL); /* Update node item. */ - evas_3d_node_tree_traverse(obj, EVAS_3D_TREE_TRAVERSE_ANY_ORDER, EINA_FALSE, + evas_canvas3d_node_tree_traverse(obj, EVAS_CANVAS3D_TREE_TRAVERSE_ANY_ORDER, EINA_FALSE, _node_item_update, NULL); /* Mark all nodes in the tree as up-to-date. */ - evas_3d_node_tree_traverse(obj, EVAS_3D_TREE_TRAVERSE_ANY_ORDER, EINA_FALSE, + evas_canvas3d_node_tree_traverse(obj, EVAS_CANVAS3D_TREE_TRAVERSE_ANY_ORDER, EINA_FALSE, _node_update_done, NULL); } static void -_node_free(Evas_3D_Object *obj) +_node_free(Evas_Canvas3D_Object *obj) { - Evas_3D_Node_Data *pd = eo_data_scope_get(obj, MY_CLASS); + Evas_Canvas3D_Node_Data *pd = eo_data_scope_get(obj, MY_CLASS); if (pd->members) { Eina_List *l; - Evas_3D_Node *n; + Evas_Canvas3D_Node *n; EINA_LIST_FOREACH(pd->members, l, n) { @@ -720,13 +720,13 @@ _node_free(Evas_3D_Object *obj) if (pd->parent) { - eo_do(pd->parent, evas_3d_node_member_del(obj)); + eo_do(pd->parent, evas_canvas3d_node_member_del(obj)); } - if (pd->type == EVAS_3D_NODE_TYPE_MESH && pd->data.mesh.meshes) + if (pd->type == EVAS_CANVAS3D_NODE_TYPE_MESH && pd->data.mesh.meshes) { Eina_List *l; - Evas_3D_Mesh *m; + Evas_Canvas3D_Mesh *m; EINA_LIST_FOREACH(pd->data.mesh.meshes, l, m) { @@ -747,10 +747,10 @@ _node_free(Evas_3D_Object *obj) } void -evas_3d_node_scene_root_add(Evas_3D_Node *node, Evas_3D_Scene *scene) +evas_canvas3d_node_scene_root_add(Evas_Canvas3D_Node *node, Evas_Canvas3D_Scene *scene) { int count = 0; - Evas_3D_Node_Data *pd = eo_data_scope_get(node, MY_CLASS); + Evas_Canvas3D_Node_Data *pd = eo_data_scope_get(node, MY_CLASS); if (pd->scenes_root == NULL) { pd->scenes_root = eina_hash_pointer_new(NULL); @@ -768,10 +768,10 @@ evas_3d_node_scene_root_add(Evas_3D_Node *node, Evas_3D_Scene *scene) } void -evas_3d_node_scene_root_del(Evas_3D_Node *node, Evas_3D_Scene *scene) +evas_canvas3d_node_scene_root_del(Evas_Canvas3D_Node *node, Evas_Canvas3D_Scene *scene) { int count = 0; - Evas_3D_Node_Data *pd = eo_data_scope_get(node, MY_CLASS); + Evas_Canvas3D_Node_Data *pd = eo_data_scope_get(node, MY_CLASS); if (pd->scenes_root == NULL) { ERR("No scene to delete."); @@ -787,10 +787,10 @@ evas_3d_node_scene_root_del(Evas_3D_Node *node, Evas_3D_Scene *scene) } void -evas_3d_node_scene_camera_add(Evas_3D_Node *node, Evas_3D_Scene *scene) +evas_canvas3d_node_scene_camera_add(Evas_Canvas3D_Node *node, Evas_Canvas3D_Scene *scene) { int count = 0; - Evas_3D_Node_Data *pd = eo_data_scope_get(node, MY_CLASS); + Evas_Canvas3D_Node_Data *pd = eo_data_scope_get(node, MY_CLASS); if (pd->scenes_camera == NULL) { pd->scenes_camera = eina_hash_pointer_new(NULL); @@ -808,10 +808,10 @@ evas_3d_node_scene_camera_add(Evas_3D_Node *node, Evas_3D_Scene *scene) } void -evas_3d_node_scene_camera_del(Evas_3D_Node *node, Evas_3D_Scene *scene) +evas_canvas3d_node_scene_camera_del(Evas_Canvas3D_Node *node, Evas_Canvas3D_Scene *scene) { int count = 0; - Evas_3D_Node_Data *pd = eo_data_scope_get(node, MY_CLASS); + Evas_Canvas3D_Node_Data *pd = eo_data_scope_get(node, MY_CLASS); if (pd->scenes_camera == NULL) { ERR("No scene to delete."); @@ -827,16 +827,16 @@ evas_3d_node_scene_camera_del(Evas_3D_Node *node, Evas_3D_Scene *scene) } void -evas_3d_node_traverse(Evas_3D_Node *from, Evas_3D_Node *to, Evas_3D_Node_Traverse_Type type, - Eina_Bool skip, Evas_3D_Node_Func func, void *data) +evas_canvas3d_node_traverse(Evas_Canvas3D_Node *from, Evas_Canvas3D_Node *to, Evas_Canvas3D_Node_Traverse_Type type, + Eina_Bool skip, Evas_Canvas3D_Node_Func func, void *data) { Eina_List *nodes = NULL, *n; - Evas_3D_Node *node = NULL; + Evas_Canvas3D_Node *node = NULL; if (from == NULL || func == NULL) goto error; - if (type == EVAS_3D_NODE_TRAVERSE_DOWNWARD) + if (type == EVAS_CANVAS3D_NODE_TRAVERSE_DOWNWARD) { if (to == NULL) goto error; @@ -848,14 +848,14 @@ evas_3d_node_traverse(Evas_3D_Node *from, Evas_3D_Node *to, Evas_3D_Node_Travers if (node == from) break; - Evas_3D_Node_Data *pdnode = eo_data_scope_get(node, MY_CLASS); + Evas_Canvas3D_Node_Data *pdnode = eo_data_scope_get(node, MY_CLASS); node = pdnode->parent; if (node == NULL) goto error; } while (1); } - else if (type == EVAS_3D_NODE_TRAVERSE_UPWARD) + else if (type == EVAS_CANVAS3D_NODE_TRAVERSE_UPWARD) { node = from; @@ -864,7 +864,7 @@ evas_3d_node_traverse(Evas_3D_Node *from, Evas_3D_Node *to, Evas_3D_Node_Travers if (node == to) break; - Evas_3D_Node_Data *pdnode = eo_data_scope_get(node, MY_CLASS); + Evas_Canvas3D_Node_Data *pdnode = eo_data_scope_get(node, MY_CLASS); node = pdnode->parent; if (node == NULL) @@ -894,16 +894,16 @@ error: } void -evas_3d_node_tree_traverse(Evas_3D_Node *root, Evas_3D_Tree_Traverse_Type type, - Eina_Bool skip, Evas_3D_Node_Func func, void *data) +evas_canvas3d_node_tree_traverse(Evas_Canvas3D_Node *root, Evas_Canvas3D_Tree_Traverse_Type type, + Eina_Bool skip, Evas_Canvas3D_Node_Func func, void *data) { Eina_List *nodes = NULL, *l; - Evas_3D_Node *node = NULL, *n, *last; + Evas_Canvas3D_Node *node = NULL, *n, *last; if (root == NULL || func == NULL) return; - if (type == EVAS_3D_TREE_TRAVERSE_LEVEL_ORDER) + if (type == EVAS_CANVAS3D_TREE_TRAVERSE_LEVEL_ORDER) { /* Put the root node in the queue. */ nodes = eina_list_append(nodes, root); @@ -912,7 +912,7 @@ evas_3d_node_tree_traverse(Evas_3D_Node *root, Evas_3D_Tree_Traverse_Type type, { /* Dequeue a node. */ node = eina_list_data_get(nodes); - Evas_3D_Node_Data *pdnode = eo_data_scope_get(node, MY_CLASS); + Evas_Canvas3D_Node_Data *pdnode = eo_data_scope_get(node, MY_CLASS); nodes = eina_list_remove_list(nodes, nodes); @@ -927,7 +927,7 @@ evas_3d_node_tree_traverse(Evas_3D_Node *root, Evas_3D_Tree_Traverse_Type type, } } } - else if (type == EVAS_3D_TREE_TRAVERSE_PRE_ORDER) + else if (type == EVAS_CANVAS3D_TREE_TRAVERSE_PRE_ORDER) { /* Put the root node in the stack. */ nodes = eina_list_append(nodes, root); @@ -936,7 +936,7 @@ evas_3d_node_tree_traverse(Evas_3D_Node *root, Evas_3D_Tree_Traverse_Type type, { /* Pop a node from the stack. */ node = eina_list_data_get(nodes); - Evas_3D_Node_Data *pdnode = eo_data_scope_get(node, MY_CLASS); + Evas_Canvas3D_Node_Data *pdnode = eo_data_scope_get(node, MY_CLASS); nodes = eina_list_remove_list(nodes, nodes); /* Call node function on the node. */ @@ -950,7 +950,7 @@ evas_3d_node_tree_traverse(Evas_3D_Node *root, Evas_3D_Tree_Traverse_Type type, } } } - else if (type == EVAS_3D_TREE_TRAVERSE_POST_ORDER) + else if (type == EVAS_CANVAS3D_TREE_TRAVERSE_POST_ORDER) { if (skip) { @@ -966,7 +966,7 @@ evas_3d_node_tree_traverse(Evas_3D_Node *root, Evas_3D_Tree_Traverse_Type type, { /* Peek a node from the stack. */ node = eina_list_data_get(nodes); - Evas_3D_Node_Data *pdnode = eo_data_scope_get(node, MY_CLASS); + Evas_Canvas3D_Node_Data *pdnode = eo_data_scope_get(node, MY_CLASS); if (eina_list_count(pdnode->members) == 0) { /* The peeked node is a leaf node, @@ -991,7 +991,7 @@ evas_3d_node_tree_traverse(Evas_3D_Node *root, Evas_3D_Tree_Traverse_Type type, * * Otherwise it should be a sibling of the peeked node, so we have to push * its childs into the stack. */ - Evas_3D_Node_Data *pdlast; + Evas_Canvas3D_Node_Data *pdlast; if (last ) pdlast= eo_data_scope_get(last, MY_CLASS); if (last && pdlast->parent == node) @@ -1020,55 +1020,55 @@ evas_3d_node_tree_traverse(Evas_3D_Node *root, Evas_3D_Tree_Traverse_Type type, } Eina_Bool -_node_is_visible(Evas_3D_Node *node EINA_UNUSED, Evas_3D_Node *camera_node EINA_UNUSED) +_node_is_visible(Evas_Canvas3D_Node *node EINA_UNUSED, Evas_Canvas3D_Node *camera_node EINA_UNUSED) { /* TODO: */ return EINA_TRUE; } Eina_Bool -evas_3d_node_mesh_collect(Evas_3D_Node *node, void *data) +evas_canvas3d_node_mesh_collect(Evas_Canvas3D_Node *node, void *data) { - Evas_3D_Scene_Public_Data *scene_data = (Evas_3D_Scene_Public_Data *)data; - Evas_3D_Node_Data *pd = eo_data_scope_get(node, MY_CLASS); + Evas_Canvas3D_Scene_Public_Data *scene_data = (Evas_Canvas3D_Scene_Public_Data *)data; + Evas_Canvas3D_Node_Data *pd = eo_data_scope_get(node, MY_CLASS); if (!_node_is_visible(node, scene_data->camera_node)) { /* Skip entire sub-tree of this node. */ return EINA_FALSE; } - if (pd->type == EVAS_3D_NODE_TYPE_MESH) + if (pd->type == EVAS_CANVAS3D_NODE_TYPE_MESH) scene_data->mesh_nodes = eina_list_append(scene_data->mesh_nodes, node); return EINA_TRUE; } Eina_Bool -evas_3d_node_color_node_mesh_collect(Evas_3D_Node *node, void *data) +evas_canvas3d_node_color_node_mesh_collect(Evas_Canvas3D_Node *node, void *data) { - Evas_3D_Scene_Public_Data *scene_data = (Evas_3D_Scene_Public_Data *)data; - Evas_3D_Node_Data *pd = eo_data_scope_get(node, MY_CLASS); - Evas_3D_Node_Data *pd_camera = eo_data_scope_get(scene_data->camera_node, MY_CLASS); - Evas_3D_Camera *camera = (Evas_3D_Camera*)pd_camera->data.camera.camera; + Evas_Canvas3D_Scene_Public_Data *scene_data = (Evas_Canvas3D_Scene_Public_Data *)data; + Evas_Canvas3D_Node_Data *pd = eo_data_scope_get(node, MY_CLASS); + Evas_Canvas3D_Node_Data *pd_camera = eo_data_scope_get(scene_data->camera_node, MY_CLASS); + Evas_Canvas3D_Camera *camera = (Evas_Canvas3D_Camera*)pd_camera->data.camera.camera; Eina_List *list_meshes, *l; - Evas_3D_Mesh *mesh; + Evas_Canvas3D_Mesh *mesh; Eina_Stringshare *key, *datakey; Evas_Color *color; Eina_Bool visible = EINA_FALSE; Eina_Array *arr; - if (pd->type == EVAS_3D_NODE_TYPE_MESH) + if (pd->type == EVAS_CANVAS3D_NODE_TYPE_MESH) { eo_do(camera, - visible = evas_3d_camera_node_visible_get(scene_data->camera_node, - node, EVAS_3D_FRUSTUM_MODE_BSPHERE)); + visible = evas_canvas3d_camera_node_visible_get(scene_data->camera_node, + node, EVAS_CANVAS3D_FRUSTUM_MODE_BSPHERE)); if (visible) { - eo_do (node, list_meshes = (Eina_List *)evas_3d_node_mesh_list_get()); + eo_do (node, list_meshes = (Eina_List *)evas_canvas3d_node_mesh_list_get()); EINA_LIST_FOREACH(list_meshes, l, mesh) { Eina_Bool tmp; - if (eo_do_ret(mesh, tmp, evas_3d_mesh_color_pick_enable_get())) + if (eo_do_ret(mesh, tmp, evas_canvas3d_mesh_color_pick_enable_get())) { color = calloc(1, sizeof(Evas_Color)); @@ -1095,30 +1095,30 @@ evas_3d_node_color_node_mesh_collect(Evas_3D_Node *node, void *data) } Eina_Bool -evas_3d_node_light_collect(Evas_3D_Node *node, void *data) +evas_canvas3d_node_light_collect(Evas_Canvas3D_Node *node, void *data) { - Evas_3D_Scene_Public_Data *scene_data = (Evas_3D_Scene_Public_Data *)data; - Evas_3D_Node_Data *pd = eo_data_scope_get(node, MY_CLASS); - if (pd->type == EVAS_3D_NODE_TYPE_LIGHT) + Evas_Canvas3D_Scene_Public_Data *scene_data = (Evas_Canvas3D_Scene_Public_Data *)data; + Evas_Canvas3D_Node_Data *pd = eo_data_scope_get(node, MY_CLASS); + if (pd->type == EVAS_CANVAS3D_NODE_TYPE_LIGHT) scene_data->light_nodes = eina_list_append(scene_data->light_nodes, node); return EINA_TRUE; } -EAPI Evas_3D_Node * -evas_3d_node_add(Evas *e, Evas_3D_Node_Type type) +EAPI Evas_Canvas3D_Node * +evas_canvas3d_node_add(Evas *e, Evas_Canvas3D_Node_Type type) { MAGIC_CHECK(e, Evas, MAGIC_EVAS); return NULL; MAGIC_CHECK_END(); - Evas_Object *eo_obj = eo_add(MY_CLASS, e, evas_3d_node_constructor(type)); + Evas_Object *eo_obj = eo_add(MY_CLASS, e, evas_canvas3d_node_constructor(type)); return eo_obj; } EOLIAN static void -_evas_3d_node_constructor(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Node_Type type) +_evas_canvas3d_node_constructor(Eo *obj, Evas_Canvas3D_Node_Data *pd, Evas_Canvas3D_Node_Type type) { - eo_do(obj, evas_3d_object_type_set(EVAS_3D_OBJECT_TYPE_NODE)); + eo_do(obj, evas_canvas3d_object_type_set(EVAS_CANVAS3D_OBJECT_TYPE_NODE)); evas_vec3_set(&pd->position, 0.0, 0.0, 0.0); evas_vec4_set(&pd->orientation, 0.0, 0.0, 0.0, 1.0); @@ -1138,7 +1138,7 @@ _evas_3d_node_constructor(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Node_Type type pd->type = type; - if (type == EVAS_3D_NODE_TYPE_MESH) + if (type == EVAS_CANVAS3D_NODE_TYPE_MESH) { pd->data.mesh.node_meshes = eina_hash_pointer_new(_node_mesh_free_func); if (pd->data.mesh.node_meshes == NULL) @@ -1150,39 +1150,39 @@ _evas_3d_node_constructor(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Node_Type type } EOLIAN static void -_evas_3d_node_eo_base_destructor(Eo *obj, Evas_3D_Node_Data *pd EINA_UNUSED) +_evas_canvas3d_node_eo_base_destructor(Eo *obj, Evas_Canvas3D_Node_Data *pd EINA_UNUSED) { _node_free(obj); eo_do_super(obj, MY_CLASS, eo_destructor()); } -EOLIAN static Evas_3D_Node_Type -_evas_3d_node_type_get(Eo *obj EINA_UNUSED, Evas_3D_Node_Data *pd) +EOLIAN static Evas_Canvas3D_Node_Type +_evas_canvas3d_node_type_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Node_Data *pd) { return pd->type; } EOLIAN static void -_evas_3d_node_member_add(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Node *member) +_evas_canvas3d_node_member_add(Eo *obj, Evas_Canvas3D_Node_Data *pd, Evas_Canvas3D_Node *member) { if (obj == member) { ERR("Failed to add a member node (adding to itself)."); return; } - Evas_3D_Node_Data *pdmember = eo_data_scope_get(member, MY_CLASS); + Evas_Canvas3D_Node_Data *pdmember = eo_data_scope_get(member, MY_CLASS); if (!pdmember || pdmember->parent == obj) return; if (pdmember->parent) { /* Detaching from previous parent. */ - Evas_3D_Node_Data *pdmemberparent = eo_data_scope_get(pdmember->parent, MY_CLASS); + Evas_Canvas3D_Node_Data *pdmemberparent = eo_data_scope_get(pdmember->parent, MY_CLASS); pdmemberparent->members = eina_list_remove(pdmemberparent->members, member); /* Mark changed. */ - eo_do(pdmember->parent, evas_3d_object_change(EVAS_3D_STATE_NODE_MEMBER, NULL)); + eo_do(pdmember->parent, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_MEMBER, NULL)); } else { @@ -1195,16 +1195,16 @@ _evas_3d_node_member_add(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Node *member) pdmember->parent = obj; /* Mark changed. */ - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_NODE_MEMBER, NULL)); - eo_do(member, evas_3d_object_change(EVAS_3D_STATE_NODE_PARENT_ORIENTATION, NULL)); - eo_do(member, evas_3d_object_change(EVAS_3D_STATE_NODE_PARENT_POSITION, NULL)); - eo_do(member, evas_3d_object_change(EVAS_3D_STATE_NODE_PARENT_SCALE, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_MEMBER, NULL)); + eo_do(member, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_PARENT_ORIENTATION, NULL)); + eo_do(member, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_PARENT_POSITION, NULL)); + eo_do(member, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_PARENT_SCALE, NULL)); } EOLIAN static void -_evas_3d_node_member_del(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Node *member) +_evas_canvas3d_node_member_del(Eo *obj, Evas_Canvas3D_Node_Data *pd, Evas_Canvas3D_Node *member) { - Evas_3D_Node_Data *pdmember = eo_data_scope_get(member, MY_CLASS); + Evas_Canvas3D_Node_Data *pdmember = eo_data_scope_get(member, MY_CLASS); if (!pdmember || pdmember->parent != obj) { ERR("Failed to delete a member node (not a member of the given node)"); @@ -1216,50 +1216,50 @@ _evas_3d_node_member_del(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Node *member) pdmember->parent = NULL; /* Mark modified object as changed. */ - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_NODE_MEMBER, NULL)); - eo_do(member, evas_3d_object_change(EVAS_3D_STATE_NODE_PARENT_ORIENTATION, NULL)); - eo_do(member, evas_3d_object_change(EVAS_3D_STATE_NODE_PARENT_POSITION, NULL)); - eo_do(member, evas_3d_object_change(EVAS_3D_STATE_NODE_PARENT_SCALE, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_MEMBER, NULL)); + eo_do(member, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_PARENT_ORIENTATION, NULL)); + eo_do(member, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_PARENT_POSITION, NULL)); + eo_do(member, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_PARENT_SCALE, NULL)); /* Decrease reference count. */ eo_unref(member); } -EOLIAN static Evas_3D_Node * -_evas_3d_node_parent_get(Eo *obj EINA_UNUSED, Evas_3D_Node_Data *pd) +EOLIAN static Evas_Canvas3D_Node * +_evas_canvas3d_node_parent_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Node_Data *pd) { return pd->parent; } EOLIAN static const Eina_List * -_evas_3d_node_member_list_get(Eo *obj EINA_UNUSED, Evas_3D_Node_Data *pd) +_evas_canvas3d_node_member_list_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Node_Data *pd) { return pd->members; } EOLIAN static void -_evas_3d_node_position_set(Eo *obj, Evas_3D_Node_Data *pd, Evas_Real x, Evas_Real y, Evas_Real z) +_evas_canvas3d_node_position_set(Eo *obj, Evas_Canvas3D_Node_Data *pd, Evas_Real x, Evas_Real y, Evas_Real z) { pd->position.x = x; pd->position.y = y; pd->position.z = z; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_NODE_TRANSFORM_POSITION, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_TRANSFORM_POSITION, NULL)); } EOLIAN static void -_evas_3d_node_orientation_set(Eo *obj, Evas_3D_Node_Data *pd, Evas_Real x, Evas_Real y, Evas_Real z, Evas_Real w) +_evas_canvas3d_node_orientation_set(Eo *obj, Evas_Canvas3D_Node_Data *pd, Evas_Real x, Evas_Real y, Evas_Real z, Evas_Real w) { pd->orientation.x = x; pd->orientation.y = y; pd->orientation.z = z; pd->orientation.w = w; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_NODE_TRANSFORM_ORIENTATION, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_TRANSFORM_ORIENTATION, NULL)); } EOLIAN static void -_evas_3d_node_orientation_angle_axis_set(Eo *obj, Evas_3D_Node_Data *pd, +_evas_canvas3d_node_orientation_angle_axis_set(Eo *obj, Evas_Canvas3D_Node_Data *pd, Evas_Real angle, Evas_Real x, Evas_Real y, Evas_Real z) { Evas_Real half_angle = 0.5 * DEGREE_TO_RADIAN(angle); @@ -1274,38 +1274,38 @@ _evas_3d_node_orientation_angle_axis_set(Eo *obj, Evas_3D_Node_Data *pd, pd->orientation.y = s * axis.y; pd->orientation.z = s * axis.z; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_NODE_TRANSFORM_ORIENTATION, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_TRANSFORM_ORIENTATION, NULL)); } EOLIAN static void -_evas_3d_node_scale_set(Eo *obj, Evas_3D_Node_Data *pd, Evas_Real x, Evas_Real y, Evas_Real z) +_evas_canvas3d_node_scale_set(Eo *obj, Evas_Canvas3D_Node_Data *pd, Evas_Real x, Evas_Real y, Evas_Real z) { pd->scale.x = x; pd->scale.y = y; pd->scale.z = z; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_NODE_TRANSFORM_SCALE, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_TRANSFORM_SCALE, NULL)); } EOLIAN static void -_evas_3d_node_position_get(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Space space, +_evas_canvas3d_node_position_get(Eo *obj, Evas_Canvas3D_Node_Data *pd, Evas_Canvas3D_Space space, Evas_Real *x, Evas_Real *y, Evas_Real *z) { - if (space == EVAS_3D_SPACE_LOCAL) + if (space == EVAS_CANVAS3D_SPACE_LOCAL) { if (x) *x = 0.0; if (y) *y = 0.0; if (z) *z = 0.0; } - else if (space == EVAS_3D_SPACE_PARENT) + else if (space == EVAS_CANVAS3D_SPACE_PARENT) { if (x) *x = pd->position.x; if (y) *y = pd->position.y; if (z) *z = pd->position.z; } - else if (space == EVAS_3D_SPACE_WORLD) + else if (space == EVAS_CANVAS3D_SPACE_WORLD) { - eo_do(obj, evas_3d_object_update()); + eo_do(obj, evas_canvas3d_object_update()); if (x) *x = pd->position_world.x; if (y) *y = pd->position_world.y; @@ -1314,26 +1314,26 @@ _evas_3d_node_position_get(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Space space, } EOLIAN static void -_evas_3d_node_orientation_get(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Space space, +_evas_canvas3d_node_orientation_get(Eo *obj, Evas_Canvas3D_Node_Data *pd, Evas_Canvas3D_Space space, Evas_Real *x, Evas_Real *y, Evas_Real *z, Evas_Real *w) { - if (space == EVAS_3D_SPACE_LOCAL) + if (space == EVAS_CANVAS3D_SPACE_LOCAL) { if (x) *x = 0.0; if (y) *y = 0.0; if (z) *z = 0.0; if (w) *w = 0.0; } - else if (space == EVAS_3D_SPACE_PARENT) + else if (space == EVAS_CANVAS3D_SPACE_PARENT) { if (x) *x = pd->orientation.x; if (y) *y = pd->orientation.y; if (z) *z = pd->orientation.z; if (w) *w = pd->orientation.w; } - else if (space == EVAS_3D_SPACE_WORLD) + else if (space == EVAS_CANVAS3D_SPACE_WORLD) { - eo_do(obj, evas_3d_object_update()); + eo_do(obj, evas_canvas3d_object_update()); if (x) *x = pd->orientation_world.x; if (y) *y = pd->orientation_world.y; @@ -1344,24 +1344,24 @@ _evas_3d_node_orientation_get(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Space spac } EOLIAN static void -_evas_3d_node_scale_get(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Space space, +_evas_canvas3d_node_scale_get(Eo *obj, Evas_Canvas3D_Node_Data *pd, Evas_Canvas3D_Space space, Evas_Real *x, Evas_Real *y, Evas_Real *z) { - if (space == EVAS_3D_SPACE_LOCAL) + if (space == EVAS_CANVAS3D_SPACE_LOCAL) { if (x) *x = 0.0; if (y) *y = 0.0; if (z) *z = 0.0; } - else if (space == EVAS_3D_SPACE_PARENT) + else if (space == EVAS_CANVAS3D_SPACE_PARENT) { if (x) *x = pd->scale.x; if (y) *y = pd->scale.y; if (z) *z = pd->scale.z; } - else if (space == EVAS_3D_SPACE_WORLD) + else if (space == EVAS_CANVAS3D_SPACE_WORLD) { - eo_do(obj, evas_3d_object_update()); + eo_do(obj, evas_canvas3d_object_update()); if (x) *x = pd->scale_world.x; if (y) *y = pd->scale_world.y; @@ -1370,46 +1370,46 @@ _evas_3d_node_scale_get(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Space space, } EOLIAN static void -_evas_3d_node_position_inherit_set(Eo *obj, Evas_3D_Node_Data *pd, Eina_Bool inherit) +_evas_canvas3d_node_position_inherit_set(Eo *obj, Evas_Canvas3D_Node_Data *pd, Eina_Bool inherit) { pd->position_inherit = inherit; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_NODE_TRANSFORM_POSITION, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_TRANSFORM_POSITION, NULL)); } EOLIAN static void -_evas_3d_node_orientation_inherit_set(Eo *obj, Evas_3D_Node_Data *pd, Eina_Bool inherit) +_evas_canvas3d_node_orientation_inherit_set(Eo *obj, Evas_Canvas3D_Node_Data *pd, Eina_Bool inherit) { pd->orientation_inherit = inherit; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_NODE_TRANSFORM_ORIENTATION, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_TRANSFORM_ORIENTATION, NULL)); } EOLIAN static void -_evas_3d_node_scale_inherit_set(Eo *obj, Evas_3D_Node_Data *pd, Eina_Bool inherit) +_evas_canvas3d_node_scale_inherit_set(Eo *obj, Evas_Canvas3D_Node_Data *pd, Eina_Bool inherit) { pd->scale_inherit = inherit; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_NODE_TRANSFORM_SCALE, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_TRANSFORM_SCALE, NULL)); } EOLIAN static Eina_Bool -_evas_3d_node_position_inherit_get(Eo *obj EINA_UNUSED, Evas_3D_Node_Data *pd) +_evas_canvas3d_node_position_inherit_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Node_Data *pd) { return pd->position_inherit; } EOLIAN static Eina_Bool -_evas_3d_node_orientation_inherit_get(Eo *obj EINA_UNUSED, Evas_3D_Node_Data *pd) +_evas_canvas3d_node_orientation_inherit_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Node_Data *pd) { return pd->orientation_inherit; } EOLIAN static Eina_Bool -_evas_3d_node_scale_inherit_get(Eo *obj EINA_UNUSED, Evas_3D_Node_Data *pd) +_evas_canvas3d_node_scale_inherit_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Node_Data *pd) { return pd->scale_inherit; } static void -_look_at_set(Evas_3D_Node_Data *pd, Evas_Vec3 *target, Evas_Vec3 *up) +_look_at_set(Evas_Canvas3D_Node_Data *pd, Evas_Vec3 *target, Evas_Vec3 *up) { Evas_Vec3 x, y, z; @@ -1470,24 +1470,24 @@ _look_at_set(Evas_3D_Node_Data *pd, Evas_Vec3 *target, Evas_Vec3 *up) } EOLIAN static void -_evas_3d_node_look_at_set(Eo *obj, Evas_3D_Node_Data *pd, - Evas_3D_Space target_space, Evas_Real tx, Evas_Real ty, Evas_Real tz, - Evas_3D_Space up_space, Evas_Real ux, Evas_Real uy, Evas_Real uz) +_evas_canvas3d_node_look_at_set(Eo *obj, Evas_Canvas3D_Node_Data *pd, + Evas_Canvas3D_Space target_space, Evas_Real tx, Evas_Real ty, Evas_Real tz, + Evas_Canvas3D_Space up_space, Evas_Real ux, Evas_Real uy, Evas_Real uz) { Evas_Vec3 target; Evas_Vec3 up; /* Target position in parent space. */ - if (target_space == EVAS_3D_SPACE_LOCAL) + if (target_space == EVAS_CANVAS3D_SPACE_LOCAL) { ERR("TODO:"); return; } - else if (target_space == EVAS_3D_SPACE_PARENT) + else if (target_space == EVAS_CANVAS3D_SPACE_PARENT) { evas_vec3_set(&target, tx, ty, tz); } - else if (target_space == EVAS_3D_SPACE_WORLD) + else if (target_space == EVAS_CANVAS3D_SPACE_WORLD) { ERR("TODO:"); return; @@ -1499,17 +1499,17 @@ _evas_3d_node_look_at_set(Eo *obj, Evas_3D_Node_Data *pd, return; } - if (up_space == EVAS_3D_SPACE_LOCAL) + if (up_space == EVAS_CANVAS3D_SPACE_LOCAL) { evas_vec3_set(&up, ux, uy, uz); //ERR("TODO:"); //return; } - else if (up_space == EVAS_3D_SPACE_PARENT) + else if (up_space == EVAS_CANVAS3D_SPACE_PARENT) { evas_vec3_set(&up, ux, uy, uz); } - else if (up_space == EVAS_3D_SPACE_WORLD) + else if (up_space == EVAS_CANVAS3D_SPACE_WORLD) { ERR("TODO:"); return; @@ -1522,13 +1522,13 @@ _evas_3d_node_look_at_set(Eo *obj, Evas_3D_Node_Data *pd, _look_at_set(pd, &target, &up); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_NODE_TRANSFORM_ORIENTATION, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_TRANSFORM_ORIENTATION, NULL)); } EOLIAN static void -_evas_3d_node_camera_set(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Camera *camera) +_evas_canvas3d_node_camera_set(Eo *obj, Evas_Canvas3D_Node_Data *pd, Evas_Canvas3D_Camera *camera) { - if (pd->type != EVAS_3D_NODE_TYPE_CAMERA) + if (pd->type != EVAS_CANVAS3D_NODE_TYPE_CAMERA) { ERR("Node type mismatch."); return; @@ -1540,7 +1540,7 @@ _evas_3d_node_camera_set(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Camera *camera) if (pd->data.camera.camera) { /* Detach previous camera object. */ - evas_3d_camera_node_del(pd->data.camera.camera, obj); + evas_canvas3d_camera_node_del(pd->data.camera.camera, obj); eo_unref(pd->data.camera.camera); } @@ -1548,22 +1548,22 @@ _evas_3d_node_camera_set(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Camera *camera) eo_ref(camera); /* Register change notification on the camera for this node. */ - evas_3d_camera_node_add(camera, obj); + evas_canvas3d_camera_node_add(camera, obj); /* Mark changed. */ - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_NODE_CAMERA, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_CAMERA, NULL)); } -EOLIAN static Evas_3D_Camera * -_evas_3d_node_camera_get(Eo *obj EINA_UNUSED, Evas_3D_Node_Data *pd) +EOLIAN static Evas_Canvas3D_Camera * +_evas_canvas3d_node_camera_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Node_Data *pd) { return pd->data.camera.camera; } EOLIAN static void -_evas_3d_node_light_set(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Light *light) +_evas_canvas3d_node_light_set(Eo *obj, Evas_Canvas3D_Node_Data *pd, Evas_Canvas3D_Light *light) { - if (pd->type != EVAS_3D_NODE_TYPE_LIGHT) + if (pd->type != EVAS_CANVAS3D_NODE_TYPE_LIGHT) { ERR("Node type mismatch."); return; @@ -1575,7 +1575,7 @@ _evas_3d_node_light_set(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Light *light) if (pd->data.light.light) { /* Detach previous light object. */ - evas_3d_light_node_del(pd->data.light.light, obj); + evas_canvas3d_light_node_del(pd->data.light.light, obj); eo_unref(pd->data.light.light); } @@ -1583,24 +1583,24 @@ _evas_3d_node_light_set(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Light *light) eo_ref(light); /* Register change notification on the light for this node. */ - evas_3d_light_node_add(light, obj); + evas_canvas3d_light_node_add(light, obj); /* Mark changed. */ - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_NODE_LIGHT, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_LIGHT, NULL)); } -EOLIAN static Evas_3D_Light * -_evas_3d_node_light_get(Eo *obj EINA_UNUSED, Evas_3D_Node_Data *pd) +EOLIAN static Evas_Canvas3D_Light * +_evas_canvas3d_node_light_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Node_Data *pd) { return pd->data.light.light; } EOLIAN static void -_evas_3d_node_mesh_add(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Mesh *mesh) +_evas_canvas3d_node_mesh_add(Eo *obj, Evas_Canvas3D_Node_Data *pd, Evas_Canvas3D_Mesh *mesh) { - Evas_3D_Node_Mesh *nm = NULL; + Evas_Canvas3D_Node_Mesh *nm = NULL; - if (pd->type != EVAS_3D_NODE_TYPE_MESH) + if (pd->type != EVAS_CANVAS3D_NODE_TYPE_MESH) { ERR("Node type mismatch."); return; @@ -1630,17 +1630,17 @@ _evas_3d_node_mesh_add(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Mesh *mesh) eo_ref(mesh); /* Register change notification. */ - evas_3d_mesh_node_add(mesh, obj); + evas_canvas3d_mesh_node_add(mesh, obj); /* Mark changed. */ - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_NODE_MESH_GEOMETRY, NULL)); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_NODE_MESH_MATERIAL, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_MESH_GEOMETRY, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_MESH_MATERIAL, NULL)); } EOLIAN static void -_evas_3d_node_mesh_del(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Mesh *mesh) +_evas_canvas3d_node_mesh_del(Eo *obj, Evas_Canvas3D_Node_Data *pd, Evas_Canvas3D_Mesh *mesh) { - if (pd->type != EVAS_3D_NODE_TYPE_MESH) + if (pd->type != EVAS_CANVAS3D_NODE_TYPE_MESH) { ERR("Node type mismatch."); return; @@ -1653,25 +1653,25 @@ _evas_3d_node_mesh_del(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Mesh *mesh) } pd->data.mesh.meshes = eina_list_remove(pd->data.mesh.meshes, mesh); - evas_3d_mesh_node_del(mesh, obj); + evas_canvas3d_mesh_node_del(mesh, obj); eo_unref(mesh); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_NODE_MESH_GEOMETRY, NULL)); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_NODE_MESH_MATERIAL, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_MESH_GEOMETRY, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_MESH_MATERIAL, NULL)); } EOLIAN static const Eina_List * -_evas_3d_node_mesh_list_get(Eo *obj EINA_UNUSED, Evas_3D_Node_Data *pd) +_evas_canvas3d_node_mesh_list_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Node_Data *pd) { return pd->data.mesh.meshes; } EOLIAN static void -_evas_3d_node_mesh_frame_set(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Mesh *mesh, int frame) +_evas_canvas3d_node_mesh_frame_set(Eo *obj, Evas_Canvas3D_Node_Data *pd, Evas_Canvas3D_Mesh *mesh, int frame) { - Evas_3D_Node_Mesh *nm = NULL; + Evas_Canvas3D_Node_Mesh *nm = NULL; - if (pd->type != EVAS_3D_NODE_TYPE_MESH) + if (pd->type != EVAS_CANVAS3D_NODE_TYPE_MESH) { ERR("Node type mismatch."); return; @@ -1684,15 +1684,15 @@ _evas_3d_node_mesh_frame_set(Eo *obj, Evas_3D_Node_Data *pd, Evas_3D_Mesh *mesh, } nm->frame = frame; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_NODE_MESH_FRAME, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_MESH_FRAME, NULL)); } EOLIAN static int -_evas_3d_node_mesh_frame_get(Eo *obj EINA_UNUSED, Evas_3D_Node_Data *pd, Evas_3D_Mesh *mesh) +_evas_canvas3d_node_mesh_frame_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Node_Data *pd, Evas_Canvas3D_Mesh *mesh) { - Evas_3D_Node_Mesh *nm = NULL; + Evas_Canvas3D_Node_Mesh *nm = NULL; - if (pd->type != EVAS_3D_NODE_TYPE_MESH) + if (pd->type != EVAS_CANVAS3D_NODE_TYPE_MESH) { ERR("Node type mismatch."); return 0; @@ -1708,9 +1708,9 @@ _evas_3d_node_mesh_frame_get(Eo *obj EINA_UNUSED, Evas_3D_Node_Data *pd, Evas_3D } EOLIAN static void -_evas_3d_node_bounding_box_get(Eo *obj EINA_UNUSED, Evas_3D_Node_Data *pd, Evas_Real *x, Evas_Real *y, Evas_Real *z, Evas_Real *x2, Evas_Real *y2, Evas_Real *z2) +_evas_canvas3d_node_bounding_box_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Node_Data *pd, Evas_Real *x, Evas_Real *y, Evas_Real *z, Evas_Real *x2, Evas_Real *y2, Evas_Real *z2) { - eo_do(obj, evas_3d_object_update()); + eo_do(obj, evas_canvas3d_object_update()); if (x) *x = pd->aabb.p0.x; if (y) *y = pd->aabb.p0.y; if (z) *z = pd->aabb.p0.z; @@ -1720,9 +1720,9 @@ _evas_3d_node_bounding_box_get(Eo *obj EINA_UNUSED, Evas_3D_Node_Data *pd, Evas_ } EOLIAN static void -_evas_3d_node_bounding_sphere_get(Eo *obj EINA_UNUSED, Evas_3D_Node_Data *pd, Evas_Real *x, Evas_Real *y, Evas_Real *z, Evas_Real *r) +_evas_canvas3d_node_bounding_sphere_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Node_Data *pd, Evas_Real *x, Evas_Real *y, Evas_Real *z, Evas_Real *r) { - eo_do(obj, evas_3d_object_update()); + eo_do(obj, evas_canvas3d_object_update()); if (x) *x = pd->bsphere.center.x; if (y) *y = pd->bsphere.center.y; if (z) *z = pd->bsphere.center.z; @@ -1730,19 +1730,19 @@ _evas_3d_node_bounding_sphere_get(Eo *obj EINA_UNUSED, Evas_3D_Node_Data *pd, Ev } EOLIAN static void -_evas_3d_node_billboard_target_set(Eo *obj EINA_UNUSED, Evas_3D_Node_Data *pd, +_evas_canvas3d_node_billboard_target_set(Eo *obj EINA_UNUSED, Evas_Canvas3D_Node_Data *pd, Eo *target) { if (pd->billboard_target != target) { pd->billboard_target = target; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_NODE_PARENT_BILLBOARD, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_NODE_PARENT_BILLBOARD, NULL)); } } -EOLIAN static Evas_3D_Node * -_evas_3d_node_billboard_target_get(Eo *obj EINA_UNUSED, Evas_3D_Node_Data *pd) +EOLIAN static Evas_Canvas3D_Node * +_evas_canvas3d_node_billboard_target_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Node_Data *pd) { return pd->billboard_target; } -#include "canvas/evas_3d_node.eo.c" +#include "canvas/evas_canvas3d_node.eo.c" diff --git a/src/lib/evas/canvas/evas_3d_node.eo b/src/lib/evas/canvas/evas_canvas3d_node.eo index 31036ec543..1fee5f4680 100644 --- a/src/lib/evas/canvas/evas_3d_node.eo +++ b/src/lib/evas/canvas/evas_canvas3d_node.eo @@ -1,13 +1,13 @@ -class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) +class Evas_Canvas3D_Node (Evas_Canvas3D_Object, Evas.Common_Interface) { legacy_prefix: null; - data: Evas_3D_Node_Data; + data: Evas_Canvas3D_Node_Data; methods { constructor { /*@ Constructor. */ legacy: null; params { - @in type: Evas_3D_Node_Type; + @in type: Evas_Canvas3D_Node_Type; } } type_get @const { @@ -16,11 +16,11 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) @return The type of the given node. - @see evas_3d_node_add() + @see evas_canvas3d_node_add() - @ingroup Evas_3D_Node + @ingroup Evas_Canvas3D_Node */ - return: Evas_3D_Node_Type ; + return: Evas_Canvas3D_Node_Type ; } member_add { /*@ @@ -29,26 +29,26 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) Nodes can be constructed into N-ary tree structure like other ordinary scene graph. Basically a node inherit transforms from its parent. - @see evas_3d_node_parent_get() + @see evas_canvas3d_node_parent_get() - @ingroup Evas_3D_Node + @ingroup Evas_Canvas3D_Node */ params { - @in member: Evas_3D_Node *; /*@ Node object to be added. */ + @in member: Evas_Canvas3D_Node *; /*@ Node object to be added. */ } } member_del { /*@ Delete a member node from the given node. - @see evas_3d_node_member_add() + @see evas_canvas3d_node_member_add() - @ingroup Evas_3D_Node + @ingroup Evas_Canvas3D_Node */ params { - @in member: Evas_3D_Node *; /*@ Member node to be deleted from the given node. */ + @in member: Evas_Canvas3D_Node *; /*@ Member node to be deleted from the given node. */ } } @@ -58,11 +58,11 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) @return The parent node of the given node. - @see evas_3d_node_member_add() + @see evas_canvas3d_node_member_add() - @ingroup Evas_3D_Node + @ingroup Evas_Canvas3D_Node */ - return: Evas_3D_Node *; + return: Evas_Canvas3D_Node *; } member_list_get @const { @@ -71,11 +71,11 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) @return The list of member nodes if any or @c NULL if there are none. - @see evas_3d_node_member_add() + @see evas_canvas3d_node_member_add() - @ingroup Evas_3D_Node + @ingroup Evas_Canvas3D_Node */ - return: const(list<Evas_3D_Node *>)*; + return: const(list<Evas_Canvas3D_Node *>)*; } position_set { /*@ @@ -86,9 +86,9 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) Default position is (0.0, 0.0, 0.0). - @see evas_3d_node_position_inherit_set() + @see evas_canvas3d_node_position_inherit_set() - @ingroup Evas_3D_Node_Transform + @ingroup Evas_Canvas3D_Node_Transform */ params { @in x: Evas_Real; /*@ X coordinate of the position. */ @@ -105,9 +105,9 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) Default orientation is (1.0, 0.0, 0.0, 0.0) (identity quaternion). - @see evas_3d_node_orientation_inherit_set() + @see evas_canvas3d_node_orientation_inherit_set() - @ingroup Evas_3D_Node_Transform + @ingroup Evas_Canvas3D_Node_Transform */ params { @in x: Evas_Real; /*@ X term of the orientation quaternion (w, x, y, z) */ @@ -127,9 +127,9 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) @param y Y term of the rotation axis. @param z Z term of the rotation axis. - @see evas_3d_node_orientation_set() + @see evas_canvas3d_node_orientation_set() - @ingroup Evas_3D_Node_Transform + @ingroup Evas_Canvas3D_Node_Transform */ params { @in angle: Evas_Real; /*@ Rotation angle.*/ @@ -154,9 +154,9 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) Default scale is (1.0, 1.0, 1.0). - @see evas_3d_node_scale_inherit_set() + @see evas_canvas3d_node_scale_inherit_set() - @ingroup Evas_3D_Node_Transform + @ingroup Evas_Canvas3D_Node_Transform */ params { @in x: Evas_Real; /*@ Scale factor along X-axis.*/ @@ -174,12 +174,12 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) @param y Pointer to receive Y coordinate of the position. @param z Pointer to receive Z coordinate of the position. - @see evas_3d_node_position_set() + @see evas_canvas3d_node_position_set() - @ingroup Evas_3D_Node_Transform + @ingroup Evas_Canvas3D_Node_Transform */ params { - @in space: Evas_3D_Space; /*@ */ + @in space: Evas_Canvas3D_Space; /*@ */ @out x: Evas_Real; /*@ Pointer to receive X coordinate of the position.*/ @out y: Evas_Real; /*@ Pointer to receive Y coordinate of the position.*/ @out z: Evas_Real; /*@ Pointer to receive Z coordinate of the position.*/ @@ -196,12 +196,12 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) @param z Pointer to receive Z term of the orientation quaternion. @param w Pointer to receive W term of the orientation quaternion. - @see evas_3d_node_orientation_set() + @see evas_canvas3d_node_orientation_set() - @ingroup Evas_3D_Node_Transform + @ingroup Evas_Canvas3D_Node_Transform */ params { - @in space: Evas_3D_Space; /*@ */ + @in space: Evas_Canvas3D_Space; /*@ */ @out x: Evas_Real; /*@ Pointer to receive X term of the orientation quaternion.*/ @out y: Evas_Real; /*@ Pointer to receive Y term of the orientation quaternion.*/ @out z: Evas_Real; /*@ Pointer to receive Z term of the orientation quaternion.*/ @@ -218,12 +218,12 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) @param y Pointer to receive Scale factor along Y-axis. @param z Pointer to receive Scale factor along Z-axis. - @see evas_3d_node_scale_get() + @see evas_canvas3d_node_scale_get() - @ingroup Evas_3D_Node_Transform + @ingroup Evas_Canvas3D_Node_Transform */ params { - @in space: Evas_3D_Space; /*@ */ + @in space: Evas_Canvas3D_Space; /*@ */ @out x: Evas_Real; /*@ Pointer to receive Scale factor along X-axis.*/ @out y: Evas_Real; /*@ Pointer to receive Scale factor along X-axis.*/ @out z: Evas_Real; /*@ Pointer to receive Scale factor along X-axis.*/ @@ -248,17 +248,17 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) Z-axis) points to the desired position and the up vector coincide with the given up vector. - @see evas_3d_node_orientation_set() + @see evas_canvas3d_node_orientation_set() - @ingroup Evas_3D_Node_Transform + @ingroup Evas_Canvas3D_Node_Transform */ params { - @in target_space: Evas_3D_Space; /*@ Space where the target position belongs to. */ + @in target_space: Evas_Canvas3D_Space; /*@ Space where the target position belongs to. */ @in x: Evas_Real; /*@ X coordinate of the target position. */ @in y: Evas_Real; /*@ Y coordinate of the target position. */ @in z: Evas_Real; /*@ Z coordinate of the target position. */ - @in up_space: Evas_3D_Space; /*@ Space where the up vector belongs to. */ + @in up_space: Evas_Canvas3D_Space; /*@ Space where the up vector belongs to. */ @in ux: Evas_Real; /*@ X term of the up vector. */ @in uy: Evas_Real; /*@ Y term of the up vector. */ @in uz: Evas_Real; /*@ Z term of the up vector. */ @@ -272,15 +272,15 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) @param node The given node. @param mesh The mesh to be added. - If the node is not of type EVAS_3D_NODE_TYPE_MESH, error message will be + If the node is not of type EVAS_CANVAS3D_NODE_TYPE_MESH, error message will be generated and nothing happens. - @see evas_3d_node_add() + @see evas_canvas3d_node_add() - @ingroup Evas_3D_Node + @ingroup Evas_Canvas3D_Node */ params { - @in mesh: Evas_3D_Mesh *; /*@ The mesh to be added.*/ + @in mesh: Evas_Canvas3D_Mesh *; /*@ The mesh to be added.*/ } } @@ -291,15 +291,15 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) @param node The given node. @param mesh The mesh to be deleted. - If the node is not of type EVAS_3D_NODE_TYPE_MESH or the given mesh does not + If the node is not of type EVAS_CANVAS3D_NODE_TYPE_MESH or the given mesh does not belong to the given node, error message will be gnerated and nothing happens. - @see evas_3d_node_mesh_add() + @see evas_canvas3d_node_mesh_add() - @ingroup Evas_3D_Node + @ingroup Evas_Canvas3D_Node */ params { - @in mesh: Evas_3D_Mesh *; /*@ The mesh to be deleted.*/ + @in mesh: Evas_Canvas3D_Mesh *; /*@ The mesh to be deleted.*/ } } @@ -310,15 +310,15 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) @param node The given node. @return The list of meshes if any, or @c NULL if there're none. - If the node is not of type EVAS_3D_NODE_TYPE_MESH, error message will be + If the node is not of type EVAS_CANVAS3D_NODE_TYPE_MESH, error message will be generated and @c NULL will be returned. If there're no meshes in the given node, @c NULL will be returned. - @see evas_3d_node_mesh_add() + @see evas_canvas3d_node_mesh_add() - @ingroup Evas_3D_Node + @ingroup Evas_Canvas3D_Node */ - return: const(list<Evas_3D_Mesh *>)*; + return: const(list<Evas_Canvas3D_Mesh *>)*; } bounding_box_get{ @@ -333,7 +333,7 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) * @param y2 Pointer to receive Y coordinate of the second point of AABB. * @param z2 Pointer to receive Z coordinate of the second point of AABB. - @ingroup Evas_3D_Node + @ingroup Evas_Canvas3D_Node */ params { @in x: Evas_Real *; /*@ Coordinates of vector.*/ @@ -356,7 +356,7 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) * @param z Pointer to receive Z coordinate of center of sphere. * @param r Pointer to receive radius of center of sphere. - @ingroup Evas_3D_Node + @ingroup Evas_Canvas3D_Node */ params { @@ -379,7 +379,7 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) adding the parent node's world position and the node's position, otherwise, the node's position will be the world space position. - @ingroup Evas_3D_Node_Transform + @ingroup Evas_Canvas3D_Node_Transform */ } get { @@ -389,9 +389,9 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) @param node The given node. @return @c EINA_TRUE if inheritance is enabled, or @c EINA_FALSE if not. - @see evas_3d_node_position_inherit_set() + @see evas_canvas3d_node_position_inherit_set() - @ingroup Evas_3D_Node_Transform + @ingroup Evas_Canvas3D_Node_Transform */ } values { @@ -412,7 +412,7 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) orientation, otherwise, the node's orientation will be the world space orientation. - @ingroup Evas_3D_Node_Transform + @ingroup Evas_Canvas3D_Node_Transform */ } get { @@ -422,9 +422,9 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) @param node The given node. @return @c EINA_TRUE if inheritance is enabled, or @c EINA_FALSE if not. - @see evas_3d_node_orientation_inherit_set() + @see evas_canvas3d_node_orientation_inherit_set() - @ingroup Evas_3D_Node_Transform + @ingroup Evas_Canvas3D_Node_Transform */ } values { @@ -444,7 +444,7 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) multiplying the parent node's world scale and the node's scale, otherwise, the node's scale will be the world space scale. - @ingroup Evas_3D_Node_Transform + @ingroup Evas_Canvas3D_Node_Transform */ } get { @@ -454,9 +454,9 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) @param node The given node. @return @c EINA_TRUE if inheritance is enabled, or @c EINA_FALSE if not. - @see evas_3d_node_scale_inherit_set() + @see evas_canvas3d_node_scale_inherit_set() - @ingroup Evas_3D_Node_Transform + @ingroup Evas_Canvas3D_Node_Transform */ } values { @@ -472,12 +472,12 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) @param node The given node. @param camera The camera to be set. - If the node is not of type EVAS_3D_NODE_TYPE_CAMERA, error message will be + If the node is not of type EVAS_CANVAS3D_NODE_TYPE_CAMERA, error message will be generated and nothing happens. - @see evas_3d_node_add() + @see evas_canvas3d_node_add() - @ingroup Evas_3D_Node + @ingroup Evas_Canvas3D_Node */ } get { @@ -487,14 +487,14 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) @param node The given node. @return The camera of the given node if any, or @c NULL if there're none. - @see evas_3d_node_camera_set() + @see evas_canvas3d_node_camera_set() - @ingroup Evas_3D_Node + @ingroup Evas_Canvas3D_Node */ } values { - // FIXME: Evas_3D_Camera is necessary, but that introduces a cycle - camera: Evas_3D_Object *; /*@ The camera */ + // FIXME: Evas_Canvas3D_Camera is necessary, but that introduces a cycle + camera: Evas_Canvas3D_Object *; /*@ The camera */ } } @@ -506,12 +506,12 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) @param node The given node. @param light The light to be set. - If the node is not of type EVAS_3D_NODE_TYPE_LIGHT, error message will be + If the node is not of type EVAS_CANVAS3D_NODE_TYPE_LIGHT, error message will be generated and nothing happens. - @see evas_3d_node_add() + @see evas_canvas3d_node_add() - @ingroup Evas_3D_Node + @ingroup Evas_Canvas3D_Node */ } get { @@ -521,13 +521,13 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) @param node The given node. @return The light of the given node if any, or @c NULL if there're none. - @see evas_3d_node_light_set() + @see evas_canvas3d_node_light_set() - @ingroup Evas_3D_Node + @ingroup Evas_Canvas3D_Node */ } values { - light: Evas_3D_Light *; /*@ The light */ + light: Evas_Canvas3D_Light *; /*@ The light */ } } @@ -540,14 +540,14 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) @param mesh The given mesh. @param frame The animation frame number. - If the node is not of type EVAS_3D_NODE_TYPE_MESH or the given mesh does not + If the node is not of type EVAS_CANVAS3D_NODE_TYPE_MESH or the given mesh does not belong to the given mesh error mesh will be generated and nothing happens. Default mesh frame is 0. - @see evas_3d_node_mesh_add() + @see evas_canvas3d_node_mesh_add() - @ingroup Evas_3D_Node + @ingroup Evas_Canvas3D_Node */ } get { @@ -558,16 +558,16 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) @param mesh The given mesh. @param frame The animation frame number. - If the node is not of type EVAS_3D_NODE_TYPE_MESH or the given mesh does not + If the node is not of type EVAS_CANVAS3D_NODE_TYPE_MESH or the given mesh does not belong to the given mesh error mesh will be generated and nothing happens. - @see evas_3d_node_mesh_add() + @see evas_canvas3d_node_mesh_add() - @ingroup Evas_3D_Node + @ingroup Evas_Canvas3D_Node */ } keys { - mesh: Evas_3D_Mesh *; /*@ The given mesh.*/ + mesh: Evas_Canvas3D_Mesh *; /*@ The given mesh.*/ } values { frame: int; /*@ The animation frame number.*/ @@ -582,7 +582,7 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) @param node The given node. @param billboard Pointer to target node for given node. - @ingroup Evas_3D_Node + @ingroup Evas_Canvas3D_Node */ } get { @@ -593,9 +593,9 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) @return The pointer to target node for billboard object, or @c NULL if there're none. - @see evas_3d_node_billboard_set() + @see evas_canvas3d_node_billboard_set() - @ingroup Evas_3D_Node + @ingroup Evas_Canvas3D_Node */ } values { @@ -605,10 +605,10 @@ class Evas_3D_Node (Evas_3D_Object, Evas.Common_Interface) } implements { Eo.Base.destructor; - Evas_3D_Object.update_notify; - Evas_3D_Object.change_notify; - Evas_3D_Object.callback_register; - Evas_3D_Object.callback_unregister; + Evas_Canvas3D_Object.update_notify; + Evas_Canvas3D_Object.change_notify; + Evas_Canvas3D_Object.callback_register; + Evas_Canvas3D_Object.callback_unregister; } constructors { .constructor; diff --git a/src/lib/evas/canvas/evas_3d_node_callback.h b/src/lib/evas/canvas/evas_canvas3d_node_callback.h index 1f868dd19b..d61693f0ae 100644 --- a/src/lib/evas/canvas/evas_3d_node_callback.h +++ b/src/lib/evas/canvas/evas_canvas3d_node_callback.h @@ -1,4 +1,4 @@ -/*Type of events and callbacks for object Evas_3D_Node*/ +/*Type of events and callbacks for object Evas_Canvas3D_Node*/ #define GET_CALLBACK_TYPE(check, type) \ if (!(strcmp(type, "clicked"))) \ @@ -8,15 +8,15 @@ else \ check = PRIVATE_CALLBACK_NONE; -typedef enum _Evas_3D_Node_Private_Callback_Type +typedef enum _Evas_Canvas3D_Node_Private_Callback_Type { PRIVATE_CALLBACK_CLICKED = 0, PRIVATE_CALLBACK_COLLISION, /*Insert here new type of callback*/ PRIVATE_CALLBACK_NONE -} Evas_3D_Node_Private_Callback_Type; +} Evas_Canvas3D_Node_Private_Callback_Type; -const Eo_Event_Description evas_3d_node_private_event_desc[] = +const Eo_Event_Description evas_canvas3d_node_private_event_desc[] = { {"clicked,private", "private event clicked", EINA_FALSE}, {"collision,private", "private event collision", EINA_FALSE} @@ -24,15 +24,15 @@ const Eo_Event_Description evas_3d_node_private_event_desc[] = /*Private callbacks */ static Eina_Bool -_evas_3d_node_private_callback_clicked(void *data, Eo *obj, const Eo_Event_Description *desc, +_evas_canvas3d_node_private_callback_clicked(void *data, Eo *obj, const Eo_Event_Description *desc, void *event_info); static Eina_Bool -_evas_3d_node_private_callback_collision(void *data, Eo *obj, const Eo_Event_Description *desc, +_evas_canvas3d_node_private_callback_collision(void *data, Eo *obj, const Eo_Event_Description *desc, void *event_info); -Eo_Event_Cb evas_3d_node_private_callback_functions[] = +Eo_Event_Cb evas_canvas3d_node_private_callback_functions[] = { - _evas_3d_node_private_callback_clicked, - _evas_3d_node_private_callback_collision, + _evas_canvas3d_node_private_callback_clicked, + _evas_canvas3d_node_private_callback_collision, }; diff --git a/src/lib/evas/canvas/evas_canvas3d_object.c b/src/lib/evas/canvas/evas_canvas3d_object.c new file mode 100644 index 0000000000..50c972c224 --- /dev/null +++ b/src/lib/evas/canvas/evas_canvas3d_object.c @@ -0,0 +1,89 @@ +#include "evas_common_private.h" +#include "evas_private.h" + +#define MY_CLASS EVAS_CANVAS3D_OBJECT_CLASS + +EOLIAN static Eo * +_evas_canvas3d_object_eo_base_constructor(Eo *obj, Evas_Canvas3D_Object_Data *pd) +{ + Eo *e = NULL; + obj = eo_do_super_ret(obj, MY_CLASS, obj, eo_constructor()); + eo_do(obj, e = eo_parent_get()); + pd->evas = e; + pd->type = EVAS_CANVAS3D_OBJECT_TYPE_INVALID; + memset(&pd->dirty[0], 0x00, sizeof(Eina_Bool) * EVAS_CANVAS3D_STATE_MAX); + + return obj; +} + +EOLIAN static Evas * + _evas_canvas3d_object_evas_common_interface_evas_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Object_Data *pd) +{ + return pd->evas; +} + +EOLIAN static void +_evas_canvas3d_object_type_set(Eo *obj EINA_UNUSED, Evas_Canvas3D_Object_Data *pd, Evas_Canvas3D_Object_Type type) +{ + pd->type = type; +} + +EOLIAN static Evas_Canvas3D_Object_Type +_evas_canvas3d_object_type_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Object_Data *pd) +{ + return pd->type; +} + +EOLIAN static Eina_Bool +_evas_canvas3d_object_dirty_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Object_Data *pd, Evas_Canvas3D_State state) +{ + return pd->dirty[state]; +} + +EOLIAN static void +_evas_canvas3d_object_change(Eo *obj, Evas_Canvas3D_Object_Data *pd, Evas_Canvas3D_State state, Evas_Canvas3D_Object *ref) +{ + /* Skip already dirty properties. */ + if (pd->dirty[state]) + return; + + pd->dirty[state] = EINA_TRUE; + pd->dirty[EVAS_CANVAS3D_STATE_ANY] = EINA_TRUE; + + eo_do(obj, evas_canvas3d_object_change_notify(state, ref)); +} + +EOLIAN static void +_evas_canvas3d_object_update(Eo *obj, Evas_Canvas3D_Object_Data *pd) +{ + if (!pd->dirty[EVAS_CANVAS3D_STATE_ANY]) + return; + + eo_do(obj, evas_canvas3d_object_update_notify()); + + memset(&pd->dirty[0], 0x00, sizeof(Eina_Bool) * EVAS_CANVAS3D_STATE_MAX); +} + +EOLIAN static void +_evas_canvas3d_object_eo_base_event_callback_priority_add(Eo *obj, + Evas_Canvas3D_Object_Data *pd EINA_UNUSED, + const Eo_Event_Description *desc, + Eo_Callback_Priority priority, + Eo_Event_Cb func, + const void *user_data) +{ + eo_do_super(obj, MY_CLASS, eo_event_callback_priority_add(desc, priority, func, user_data)); + eo_do(obj, evas_canvas3d_object_callback_register(desc->name, user_data)); +} + +EOLIAN static void +_evas_canvas3d_object_eo_base_event_callback_del(Eo *obj, Evas_Canvas3D_Object_Data *pd EINA_UNUSED, + const Eo_Event_Description *desc, + Eo_Event_Cb func, + const void *user_data) +{ + eo_do_super(obj, MY_CLASS, eo_event_callback_del(desc, func, user_data)); + eo_do(obj, evas_canvas3d_object_callback_unregister(desc->name)); +} + +#include "canvas/evas_canvas3d_object.eo.c" diff --git a/src/lib/evas/canvas/evas_3d_object.eo b/src/lib/evas/canvas/evas_canvas3d_object.eo index 4b60ff5f23..21634c34da 100644 --- a/src/lib/evas/canvas/evas_3d_object.eo +++ b/src/lib/evas/canvas/evas_canvas3d_object.eo @@ -1,22 +1,22 @@ -class Evas_3D_Object (Eo.Base, Evas.Common_Interface) +class Evas_Canvas3D_Object (Eo.Base, Evas.Common_Interface) { legacy_prefix: null; - data: Evas_3D_Object_Data; + data: Evas_Canvas3D_Object_Data; methods { change { /*@ Notify the object regarding its state change. */ params { - @in state: Evas_3D_State; /*@ State that is changed */ - @in ref: Evas_3D_Object *; /*@ The Object that caused the change */ + @in state: Evas_Canvas3D_State; /*@ State that is changed */ + @in ref: Evas_Canvas3D_Object *; /*@ The Object that caused the change */ } } type_get @const { /*@ Returns the type of the object. */ - return: Evas_3D_Object_Type; + return: Evas_Canvas3D_Object_Type; } type_set { @@ -24,7 +24,7 @@ class Evas_3D_Object (Eo.Base, Evas.Common_Interface) Returns the type of the object. */ params{ - @in type: Evas_3D_Object_Type; + @in type: Evas_Canvas3D_Object_Type; } } @@ -34,7 +34,7 @@ class Evas_3D_Object (Eo.Base, Evas.Common_Interface) */ return: bool; params { - @in state: Evas_3D_State; /*@ State whose status is being asked */ + @in state: Evas_Canvas3D_State; /*@ State whose status is being asked */ } } @@ -56,8 +56,8 @@ class Evas_3D_Object (Eo.Base, Evas.Common_Interface) Update request for the object. */ params { - @in state: Evas_3D_State; /*@ State that is changed */ - @in ref: Evas_3D_Object *; /*@ The Object that caused the change */ + @in state: Evas_Canvas3D_State; /*@ State that is changed */ + @in ref: Evas_Canvas3D_Object *; /*@ The Object that caused the change */ } } callback_register { diff --git a/src/lib/evas/canvas/evas_canvas3d_primitive.c b/src/lib/evas/canvas/evas_canvas3d_primitive.c new file mode 100644 index 0000000000..28e747ce5a --- /dev/null +++ b/src/lib/evas/canvas/evas_canvas3d_primitive.c @@ -0,0 +1,153 @@ +#include "evas_common_private.h" +#include "evas_private.h" + +#define MY_CLASS EVAS_CANVAS3D_PRIMITIVE_CLASS + +static inline void +_primitive_init(Evas_Canvas3D_Primitive_Data *pd) +{ + pd->form = EVAS_CANVAS3D_MESH_PRIMITIVE_NONE; + pd->ratio = 3.0; + pd->precision = 10; + pd->surface = NULL; + pd->tex_scale.x = 1.0; + pd->tex_scale.y = 1.0; +} + +EAPI Evas_Canvas3D_Primitive * +evas_canvas3d_primitive_add(Evas *e) +{ + MAGIC_CHECK(e, Evas, MAGIC_EVAS); + return NULL; + MAGIC_CHECK_END(); + Evas_Object *eo_obj = eo_add(MY_CLASS, e); + return eo_obj; +} + +EOLIAN static Eo * +_evas_canvas3d_primitive_eo_base_constructor(Eo *obj, Evas_Canvas3D_Primitive_Data *pd) +{ + obj = eo_do_super_ret(obj, MY_CLASS, obj, eo_constructor()); + eo_do(obj, evas_canvas3d_object_type_set(EVAS_CANVAS3D_OBJECT_TYPE_PRIMITIVE)); + _primitive_init(pd); + + return obj; +} + +EOLIAN static void +_evas_canvas3d_primitive_eo_base_destructor(Eo *obj, Evas_Canvas3D_Primitive_Data *pd EINA_UNUSED) +{ + eo_do_super(obj, MY_CLASS, eo_destructor()); +} + +EOLIAN static void +_evas_canvas3d_primitive_form_set(Eo *obj EINA_UNUSED, + Evas_Canvas3D_Primitive_Data *pd, + Evas_Canvas3D_Mesh_Primitive form) +{ + if (form >= EVAS_CANVAS3D_MESH_PRIMITIVE_COUNT) + { + ERR("Wrong form of primitive."); + return; + } + + if (pd->form != form) + pd->form = form; +} + +EOLIAN static Evas_Canvas3D_Mesh_Primitive +_evas_canvas3d_primitive_form_get(Eo *obj EINA_UNUSED, + Evas_Canvas3D_Primitive_Data *pd) +{ + return pd->form; +} + +EOLIAN static void +_evas_canvas3d_primitive_mode_set(Eo *obj EINA_UNUSED, + Evas_Canvas3D_Primitive_Data *pd, + Evas_Canvas3D_Primitive_Mode mode) +{ + if (pd->mode != mode) + pd->mode = mode; +} + +EOLIAN static Evas_Canvas3D_Primitive_Mode +_evas_canvas3d_primitive_mode_get(Eo *obj EINA_UNUSED, + Evas_Canvas3D_Primitive_Data *pd) +{ + return pd->mode; +} + +EOLIAN static void +_evas_canvas3d_primitive_ratio_set(Eo *obj EINA_UNUSED, + Evas_Canvas3D_Primitive_Data *pd, + Evas_Real ratio) +{ + pd->ratio = ratio; +} + +EOLIAN static Evas_Real +_evas_canvas3d_primitive_ratio_get(Eo *obj EINA_UNUSED, + Evas_Canvas3D_Primitive_Data *pd) +{ + return pd->ratio; +} + +EOLIAN static void +_evas_canvas3d_primitive_precision_set(Eo *obj EINA_UNUSED, + Evas_Canvas3D_Primitive_Data *pd, + int precision) +{ + if ((precision < 3)) + { + ERR("Precision of Evas_Canvas3D_Primitive cannot be less than 3."); + return; + } + + if ((precision >= 100)) + { + ERR("%s\n%s", + "Be careful with precision of Evas_Canvas3D_Primitive more than 100.", + "It can give unacceptable result."); + } + + if (pd->precision != precision) + pd->precision = precision; +} + +EOLIAN static int +_evas_canvas3d_primitive_precision_get(Eo *obj EINA_UNUSED, + Evas_Canvas3D_Primitive_Data *pd) +{ + return pd->precision; +} + +EOLIAN static void +_evas_canvas3d_primitive_surface_set(Eo *obj EINA_UNUSED, + Evas_Canvas3D_Primitive_Data *pd, + Evas_Canvas3D_Surface_Func surface_func) +{ + pd->surface = surface_func; +} + +EOLIAN static void +_evas_canvas3d_primitive_tex_scale_set(Eo *obj EINA_UNUSED, + Evas_Canvas3D_Primitive_Data *pd, + Evas_Real x, + Evas_Real y) +{ + if (x) pd->tex_scale.x = x; + if (y) pd->tex_scale.y = y; +} + +EOLIAN static void +_evas_canvas3d_primitive_tex_scale_get(Eo *obj EINA_UNUSED, + Evas_Canvas3D_Primitive_Data *pd, + Evas_Real *x, + Evas_Real *y) +{ + if (x) *x = pd->tex_scale.x; + if (y) *y = pd->tex_scale.y; +} + +#include "canvas/evas_canvas3d_primitive.eo.c" diff --git a/src/lib/evas/canvas/evas_3d_primitive.eo b/src/lib/evas/canvas/evas_canvas3d_primitive.eo index e1336c66c0..f867f4dc71 100644 --- a/src/lib/evas/canvas/evas_3d_primitive.eo +++ b/src/lib/evas/canvas/evas_canvas3d_primitive.eo @@ -1,7 +1,7 @@ -class Evas_3D_Primitive (Evas_3D_Object, Evas.Common_Interface) +class Evas_Canvas3D_Primitive (Evas_Canvas3D_Object, Evas.Common_Interface) { legacy_prefix: null; - data: Evas_3D_Primitive_Data; + data: Evas_Canvas3D_Primitive_Data; methods { @property form { @@ -10,28 +10,28 @@ class Evas_3D_Primitive (Evas_3D_Object, Evas.Common_Interface) *Set the form of the given primitive. * *Form defines which function will be chosen to set data to mesh - *on call of evas_3d_mesh_primitive_set. + *on call of evas_canvas3d_mesh_primitive_set. * *Now avaliable next forms of primitives: *-tabulated primitives: SQUARE and CUBE; *-solids of revolution: CYLINDER, CONE, SPHERE and TORUS; *-surfaces: SURFACE and TERRAIN. * - *Default form is EVAS_3D_MESH_PRIMITIVE_NONE + *Default form is EVAS_CANVAS3D_MESH_PRIMITIVE_NONE * - *@ingroup Evas_3D_Primitive + *@ingroup Evas_Canvas3D_Primitive */ } get { /* *Get the form of the given primitive. - *@see evas_3d_primitive_form_set() + *@see evas_canvas3d_primitive_form_set() *@return The form of primitive. - *@ingroup Evas_3D_Primitive + *@ingroup Evas_Canvas3D_Primitive */ } values { - form: Evas_3D_Mesh_Primitive; /*@ Form of primitive.*/ + form: Evas_Canvas3D_Mesh_Primitive; /*@ Form of primitive.*/ } } @property mode { @@ -40,7 +40,7 @@ class Evas_3D_Primitive (Evas_3D_Object, Evas.Common_Interface) *Set the mode of the given primitive. * *Mode defines which function will be chosen to set data to mesh - *on call of evas_3d_mesh_primitive_set. It helps to choose + *on call of evas_canvas3d_mesh_primitive_set. It helps to choose *alternative algorithm for primitive with given form *(like cone without base or sphere textured in alternative way). * @@ -48,21 +48,21 @@ class Evas_3D_Primitive (Evas_3D_Object, Evas.Common_Interface) *-witout base (bases): supported for cylinder and cone; *-with alternative UV: supported by sphere; * - *Default form is EVAS_3D_PRIMITIVE_MODE_DEFAULT + *Default form is EVAS_CANVAS3D_PRIMITIVE_MODE_DEFAULT * - *@ingroup Evas_3D_Primitive + *@ingroup Evas_Canvas3D_Primitive */ } get { /* *Get the mode of the given primitive. - *@see evas_3d_primitive_mode_set() + *@see evas_canvas3d_primitive_mode_set() *@return The mode of primitive. - *@ingroup Evas_3D_Primitive + *@ingroup Evas_Canvas3D_Primitive */ } values { - mode: Evas_3D_Primitive_Mode; /*@ Mode of primitive.*/ + mode: Evas_Canvas3D_Primitive_Mode; /*@ Mode of primitive.*/ } } @property ratio { @@ -78,15 +78,15 @@ class Evas_3D_Primitive (Evas_3D_Object, Evas.Common_Interface) * *Default ratio is 3.0 * - *@ingroup Evas_3D_Primitive + *@ingroup Evas_Canvas3D_Primitive */ } get { /* *Get the ratio of the given primitive. - *@see evas_3d_primitive_ratio_set() + *@see evas_canvas3d_primitive_ratio_set() *@return The ratio of primitive. - *@ingroup Evas_3D_Primitive + *@ingroup Evas_Canvas3D_Primitive */ } values { @@ -106,15 +106,15 @@ class Evas_3D_Primitive (Evas_3D_Object, Evas.Common_Interface) * *Default ratio is 10 * - *@ingroup Evas_3D_Primitive + *@ingroup Evas_Canvas3D_Primitive */ } get { /* *Get the precision of the given primitive. - *@see evas_3d_primitive_precision_set() + *@see evas_canvas3d_primitive_precision_set() *@return The precision of primitive. - *@ingroup Evas_3D_Primitive + *@ingroup Evas_Canvas3D_Primitive */ } values { @@ -128,7 +128,7 @@ class Evas_3D_Primitive (Evas_3D_Object, Evas.Common_Interface) * *Surface uses only in surface primitive and defines *equation of filling mesh data on call of - *evas_3d_mesh_primitive_set. + *evas_canvas3d_mesh_primitive_set. * *It gives possibility to create customers primitives like *shell, heart, hyperbolic paraboloid etc. See _shell_func in @@ -137,11 +137,11 @@ class Evas_3D_Primitive (Evas_3D_Object, Evas.Common_Interface) * *Default surface is NULL * - *@ingroup Evas_3D_Primitive + *@ingroup Evas_Canvas3D_Primitive */ } values { - surface: Evas_3D_Surface_Func *; /*@ Pointer to customers surface function.*/ + surface: Evas_Canvas3D_Surface_Func *; /*@ Pointer to customers surface function.*/ } } @property tex_scale { @@ -156,14 +156,14 @@ class Evas_3D_Primitive (Evas_3D_Object, Evas.Common_Interface) * *Default tex_scale is {1.0, 1.0} * - *@ingroup Evas_3D_Primitive + *@ingroup Evas_Canvas3D_Primitive */ } get { /* *Get the texture scale of the given primitive. - *@see evas_3d_primitive_tex_scale_set() - *@ingroup Evas_3D_Primitive + *@see evas_canvas3d_primitive_tex_scale_set() + *@ingroup Evas_Canvas3D_Primitive */ } values { diff --git a/src/lib/evas/canvas/evas_3d_scene.c b/src/lib/evas/canvas/evas_canvas3d_scene.c index c4bfbcf253..823e7af86b 100644 --- a/src/lib/evas/canvas/evas_3d_scene.c +++ b/src/lib/evas/canvas/evas_canvas3d_scene.c @@ -1,10 +1,10 @@ #include "evas_common_private.h" #include "evas_private.h" -#define MY_CLASS EVAS_3D_SCENE_CLASS +#define MY_CLASS EVAS_CANVAS3D_SCENE_CLASS void -evas_3d_scene_data_init(Evas_3D_Scene_Public_Data *data) +evas_canvas3d_scene_data_init(Evas_Canvas3D_Scene_Public_Data *data) { data->camera_node = NULL; data->light_nodes = NULL; @@ -14,7 +14,7 @@ evas_3d_scene_data_init(Evas_3D_Scene_Public_Data *data) } void -evas_3d_scene_data_fini(Evas_3D_Scene_Public_Data *data) +evas_canvas3d_scene_data_fini(Evas_Canvas3D_Scene_Public_Data *data) { if (data->light_nodes) eina_list_free(data->light_nodes); @@ -24,9 +24,9 @@ evas_3d_scene_data_fini(Evas_3D_Scene_Public_Data *data) } EOLIAN static void -_evas_3d_scene_evas_3d_object_change_notify(Eo *eo_obj EINA_UNUSED, Evas_3D_Scene_Data *pd, - Evas_3D_State state EINA_UNUSED, - Evas_3D_Object *ref EINA_UNUSED) +_evas_canvas3d_scene_evas_canvas3d_object_change_notify(Eo *eo_obj EINA_UNUSED, Evas_Canvas3D_Scene_Data *pd, + Evas_Canvas3D_State state EINA_UNUSED, + Evas_Canvas3D_Object *ref EINA_UNUSED) { Eina_List *l; Evas_Object *eo; @@ -39,23 +39,23 @@ _evas_3d_scene_evas_3d_object_change_notify(Eo *eo_obj EINA_UNUSED, Evas_3D_Scen } EOLIAN static void -_evas_3d_scene_evas_3d_object_update_notify(Eo *obj EINA_UNUSED, Evas_3D_Scene_Data *pd) +_evas_canvas3d_scene_evas_canvas3d_object_update_notify(Eo *obj EINA_UNUSED, Evas_Canvas3D_Scene_Data *pd) { if (pd->root_node) { - eo_do(pd->root_node, evas_3d_object_update()); + eo_do(pd->root_node, evas_canvas3d_object_update()); } if (pd->camera_node) { - eo_do(pd->camera_node, evas_3d_object_update()); + eo_do(pd->camera_node, evas_canvas3d_object_update()); } - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_SCENE_UPDATED, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_SCENE_UPDATED, NULL)); } -EAPI Evas_3D_Scene * -evas_3d_scene_add(Evas *e) +EAPI Evas_Canvas3D_Scene * +evas_canvas3d_scene_add(Evas *e) { MAGIC_CHECK(e, Evas, MAGIC_EVAS); return NULL; @@ -65,10 +65,10 @@ evas_3d_scene_add(Evas *e) } EOLIAN static Eo * -_evas_3d_scene_eo_base_constructor(Eo *obj, Evas_3D_Scene_Data *pd) +_evas_canvas3d_scene_eo_base_constructor(Eo *obj, Evas_Canvas3D_Scene_Data *pd) { obj = eo_do_super_ret(obj, MY_CLASS, obj, eo_constructor()); - eo_do(obj, evas_3d_object_type_set(EVAS_3D_OBJECT_TYPE_SCENE)); + eo_do(obj, evas_canvas3d_object_type_set(EVAS_CANVAS3D_OBJECT_TYPE_SCENE)); evas_color_set(&pd->bg_color, 0.0, 0.0, 0.0, 0.0); pd->shadows_enabled = EINA_FALSE; pd->color_pick_enabled = EINA_FALSE; @@ -79,14 +79,14 @@ _evas_3d_scene_eo_base_constructor(Eo *obj, Evas_3D_Scene_Data *pd) } EOLIAN static void -_evas_3d_scene_root_node_set(Eo *obj, Evas_3D_Scene_Data *pd, Evas_3D_Node *node) +_evas_canvas3d_scene_root_node_set(Eo *obj, Evas_Canvas3D_Scene_Data *pd, Evas_Canvas3D_Node *node) { if (pd->root_node == node) return; if (pd->root_node) { - evas_3d_node_scene_root_del(pd->root_node, obj); + evas_canvas3d_node_scene_root_del(pd->root_node, obj); eo_unref(pd->root_node); } @@ -95,27 +95,27 @@ _evas_3d_scene_root_node_set(Eo *obj, Evas_3D_Scene_Data *pd, Evas_3D_Node *node if (node) { eo_ref(node); - evas_3d_node_scene_root_add(node, obj); + evas_canvas3d_node_scene_root_add(node, obj); } - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_SCENE_ROOT_NODE, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_SCENE_ROOT_NODE, NULL)); } -EOLIAN static Evas_3D_Node * -_evas_3d_scene_root_node_get(Eo *obj EINA_UNUSED, Evas_3D_Scene_Data *pd) +EOLIAN static Evas_Canvas3D_Node * +_evas_canvas3d_scene_root_node_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Scene_Data *pd) { return pd->root_node; } EOLIAN static void -_evas_3d_scene_camera_node_set(Eo *obj, Evas_3D_Scene_Data *pd, Evas_3D_Node *node) +_evas_canvas3d_scene_camera_node_set(Eo *obj, Evas_Canvas3D_Scene_Data *pd, Evas_Canvas3D_Node *node) { if (pd->camera_node == node) return; if (pd->camera_node) { - evas_3d_node_scene_camera_del(pd->camera_node, obj); + evas_canvas3d_node_scene_camera_del(pd->camera_node, obj); eo_unref(pd->camera_node); } @@ -124,43 +124,43 @@ _evas_3d_scene_camera_node_set(Eo *obj, Evas_3D_Scene_Data *pd, Evas_3D_Node *no if (node) { eo_unref(node); - evas_3d_node_scene_camera_add(node, obj); + evas_canvas3d_node_scene_camera_add(node, obj); } - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_SCENE_CAMERA_NODE, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_SCENE_CAMERA_NODE, NULL)); } -EOLIAN static Evas_3D_Node * -_evas_3d_scene_camera_node_get(Eo *obj EINA_UNUSED, Evas_3D_Scene_Data *pd) +EOLIAN static Evas_Canvas3D_Node * +_evas_canvas3d_scene_camera_node_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Scene_Data *pd) { return pd->camera_node; } EOLIAN static void -_evas_3d_scene_size_set(Eo *obj EINA_UNUSED, Evas_3D_Scene_Data *pd, int w, int h) +_evas_canvas3d_scene_size_set(Eo *obj EINA_UNUSED, Evas_Canvas3D_Scene_Data *pd, int w, int h) { pd->w = w; pd->h = h; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_SCENE_SIZE, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_SCENE_SIZE, NULL)); } EOLIAN static void -_evas_3d_scene_size_get(Eo *obj EINA_UNUSED, Evas_3D_Scene_Data *pd, int *w, int *h) +_evas_canvas3d_scene_size_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Scene_Data *pd, int *w, int *h) { if (w) *w = pd->w; if (h) *h = pd->h; } EOLIAN static void -_evas_3d_scene_background_color_set(Eo *obj EINA_UNUSED, Evas_3D_Scene_Data *pd, +_evas_canvas3d_scene_background_color_set(Eo *obj EINA_UNUSED, Evas_Canvas3D_Scene_Data *pd, Evas_Real r, Evas_Real g, Evas_Real b, Evas_Real a) { evas_color_set(&pd->bg_color, r, g, b, a); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_SCENE_BACKGROUND_COLOR, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_SCENE_BACKGROUND_COLOR, NULL)); } EOLIAN static void -_evas_3d_scene_background_color_get(Eo *obj EINA_UNUSED, Evas_3D_Scene_Data *pd, +_evas_canvas3d_scene_background_color_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Scene_Data *pd, Evas_Real *r, Evas_Real *g, Evas_Real *b, Evas_Real *a) { if (r) *r = pd->bg_color.r; @@ -170,7 +170,7 @@ _evas_3d_scene_background_color_get(Eo *obj EINA_UNUSED, Evas_3D_Scene_Data *pd, } static inline Eina_Bool -_pick_data_triangle_add(Evas_3D_Pick_Data *data, const Evas_Ray3 *ray, +_pick_data_triangle_add(Evas_Canvas3D_Pick_Data *data, const Evas_Ray3 *ray, const Evas_Triangle3 *tri) { Evas_Vec3 e1, e2, tvec, pvec, qvec; @@ -225,8 +225,8 @@ _pick_data_triangle_add(Evas_3D_Pick_Data *data, const Evas_Ray3 *ray, } static inline void -_pick_data_texcoord_update(Evas_3D_Pick_Data *data, - const Evas_3D_Vertex_Buffer *tex0, const Evas_3D_Vertex_Buffer *tex1, +_pick_data_texcoord_update(Evas_Canvas3D_Pick_Data *data, + const Evas_Canvas3D_Vertex_Buffer *tex0, const Evas_Canvas3D_Vertex_Buffer *tex1, Evas_Real weight, unsigned int i0, unsigned int i1, unsigned int i2) { Evas_Real s0, s1, s2; @@ -280,34 +280,34 @@ _pick_data_texcoord_update(Evas_3D_Pick_Data *data, static inline void -_pick_data_mesh_add(Evas_3D_Pick_Data *data, const Evas_Ray3 *ray, - Evas_3D_Mesh *mesh, int frame, Evas_3D_Node *node) +_pick_data_mesh_add(Evas_Canvas3D_Pick_Data *data, const Evas_Ray3 *ray, + Evas_Canvas3D_Mesh *mesh, int frame, Evas_Canvas3D_Node *node) { - Evas_3D_Vertex_Buffer pos0, pos1, tex0, tex1; + Evas_Canvas3D_Vertex_Buffer pos0, pos1, tex0, tex1; Evas_Real pos_weight, tex_weight; Evas_Triangle3 tri; int i; - memset(&pos0, 0x00, sizeof(Evas_3D_Vertex_Buffer)); - memset(&pos1, 0x00, sizeof(Evas_3D_Vertex_Buffer)); - memset(&tex0, 0x00, sizeof(Evas_3D_Vertex_Buffer)); - memset(&tex1, 0x00, sizeof(Evas_3D_Vertex_Buffer)); + memset(&pos0, 0x00, sizeof(Evas_Canvas3D_Vertex_Buffer)); + memset(&pos1, 0x00, sizeof(Evas_Canvas3D_Vertex_Buffer)); + memset(&tex0, 0x00, sizeof(Evas_Canvas3D_Vertex_Buffer)); + memset(&tex1, 0x00, sizeof(Evas_Canvas3D_Vertex_Buffer)); - evas_3d_mesh_interpolate_vertex_buffer_get(mesh, frame, EVAS_3D_VERTEX_POSITION, + evas_canvas3d_mesh_interpolate_vertex_buffer_get(mesh, frame, EVAS_CANVAS3D_VERTEX_POSITION, &pos0, &pos1, &pos_weight); - evas_3d_mesh_interpolate_vertex_buffer_get(mesh, frame, EVAS_3D_VERTEX_TEXCOORD, + evas_canvas3d_mesh_interpolate_vertex_buffer_get(mesh, frame, EVAS_CANVAS3D_VERTEX_TEXCOORD, &tex0, &tex1, &tex_weight); - Evas_3D_Mesh_Data *pdmesh = eo_data_scope_get(mesh, EVAS_3D_MESH_CLASS); + Evas_Canvas3D_Mesh_Data *pdmesh = eo_data_scope_get(mesh, EVAS_CANVAS3D_MESH_CLASS); if (pdmesh->indices) { unsigned int i0, i1, i2; - if (pdmesh->assembly == EVAS_3D_VERTEX_ASSEMBLY_TRIANGLES) + if (pdmesh->assembly == EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLES) { for (i = 0; i < pdmesh->index_count; i += 3) { - if (pdmesh->index_format == EVAS_3D_INDEX_FORMAT_UNSIGNED_SHORT) + if (pdmesh->index_format == EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_SHORT) { i0 = ((unsigned short *)pdmesh->indices)[i]; i1 = ((unsigned short *)pdmesh->indices)[i + 1]; @@ -320,9 +320,9 @@ _pick_data_mesh_add(Evas_3D_Pick_Data *data, const Evas_Ray3 *ray, i2 = ((unsigned char *)pdmesh->indices)[i + 2]; } - evas_3d_mesh_interpolate_position_get(&tri.p0, &pos0, &pos1, pos_weight, i0); - evas_3d_mesh_interpolate_position_get(&tri.p1, &pos0, &pos1, pos_weight, i1); - evas_3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i2); + evas_canvas3d_mesh_interpolate_position_get(&tri.p0, &pos0, &pos1, pos_weight, i0); + evas_canvas3d_mesh_interpolate_position_get(&tri.p1, &pos0, &pos1, pos_weight, i1); + evas_canvas3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i2); if (_pick_data_triangle_add(data, ray, &tri)) { @@ -333,9 +333,9 @@ _pick_data_mesh_add(Evas_3D_Pick_Data *data, const Evas_Ray3 *ray, } } } - else if (pdmesh->assembly == EVAS_3D_VERTEX_ASSEMBLY_TRIANGLE_STRIP) + else if (pdmesh->assembly == EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLE_STRIP) { - if (pdmesh->index_format == EVAS_3D_INDEX_FORMAT_UNSIGNED_SHORT) + if (pdmesh->index_format == EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_SHORT) { i1 = ((unsigned short *)pdmesh->indices)[0]; i2 = ((unsigned short *)pdmesh->indices)[1]; @@ -346,24 +346,24 @@ _pick_data_mesh_add(Evas_3D_Pick_Data *data, const Evas_Ray3 *ray, i2 = ((unsigned char *)pdmesh->indices)[1]; } - evas_3d_mesh_interpolate_position_get(&tri.p1, &pos0, &pos1, pos_weight, i1); - evas_3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i2); + evas_canvas3d_mesh_interpolate_position_get(&tri.p1, &pos0, &pos1, pos_weight, i1); + evas_canvas3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i2); for (i = 0; i < pdmesh->index_count - 2; i++) { tri.p0 = tri.p1; tri.p1 = tri.p2; - if (pdmesh->index_format == EVAS_3D_INDEX_FORMAT_UNSIGNED_SHORT) + if (pdmesh->index_format == EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_SHORT) i2 = ((unsigned short *)pdmesh->indices)[i + 2]; else i2 = ((unsigned char *)pdmesh->indices)[i + 2]; - evas_3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i2); + evas_canvas3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i2); if (_pick_data_triangle_add(data, ray, &tri)) { - if (pdmesh->index_format == EVAS_3D_INDEX_FORMAT_UNSIGNED_SHORT) + if (pdmesh->index_format == EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_SHORT) { i0 = ((unsigned short *)pdmesh->indices)[i]; i1 = ((unsigned short *)pdmesh->indices)[i + 1]; @@ -381,9 +381,9 @@ _pick_data_mesh_add(Evas_3D_Pick_Data *data, const Evas_Ray3 *ray, } } } - else if (pdmesh->assembly == EVAS_3D_VERTEX_ASSEMBLY_TRIANGLE_FAN) + else if (pdmesh->assembly == EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLE_FAN) { - if (pdmesh->index_format == EVAS_3D_INDEX_FORMAT_UNSIGNED_SHORT) + if (pdmesh->index_format == EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_SHORT) { i0 = ((unsigned short *)pdmesh->indices)[0]; i2 = ((unsigned short *)pdmesh->indices)[1]; @@ -394,23 +394,23 @@ _pick_data_mesh_add(Evas_3D_Pick_Data *data, const Evas_Ray3 *ray, i2 = ((unsigned char *)pdmesh->indices)[1]; } - evas_3d_mesh_interpolate_position_get(&tri.p0, &pos0, &pos1, pos_weight, i0); - evas_3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i2); + evas_canvas3d_mesh_interpolate_position_get(&tri.p0, &pos0, &pos1, pos_weight, i0); + evas_canvas3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i2); for (i = 1; i < pdmesh->index_count - 1; i++) { tri.p1 = tri.p2; - if (pdmesh->index_format == EVAS_3D_INDEX_FORMAT_UNSIGNED_SHORT) + if (pdmesh->index_format == EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_SHORT) i2 = ((unsigned short *)pdmesh->indices)[i + 1]; else i2 = ((unsigned char *)pdmesh->indices)[i + 1]; - evas_3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i2); + evas_canvas3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i2); if (_pick_data_triangle_add(data, ray, &tri)) { - if (pdmesh->index_format == EVAS_3D_INDEX_FORMAT_UNSIGNED_SHORT) + if (pdmesh->index_format == EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_SHORT) i1 = ((unsigned short *)pdmesh->indices)[i]; else i1 = ((unsigned char *)pdmesh->indices)[i]; @@ -423,15 +423,15 @@ _pick_data_mesh_add(Evas_3D_Pick_Data *data, const Evas_Ray3 *ray, } } } - else if (pdmesh->index_format == EVAS_3D_INDEX_FORMAT_UNSIGNED_BYTE) + else if (pdmesh->index_format == EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_BYTE) { - if (pdmesh->assembly == EVAS_3D_VERTEX_ASSEMBLY_TRIANGLES) + if (pdmesh->assembly == EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLES) { for (i = 0; i < pdmesh->index_count; i += 3) { - evas_3d_mesh_interpolate_position_get(&tri.p0, &pos0, &pos1, pos_weight, i); - evas_3d_mesh_interpolate_position_get(&tri.p1, &pos0, &pos1, pos_weight, i + 1); - evas_3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i + 2); + evas_canvas3d_mesh_interpolate_position_get(&tri.p0, &pos0, &pos1, pos_weight, i); + evas_canvas3d_mesh_interpolate_position_get(&tri.p1, &pos0, &pos1, pos_weight, i + 1); + evas_canvas3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i + 2); if (_pick_data_triangle_add(data, ray, &tri)) { @@ -442,17 +442,17 @@ _pick_data_mesh_add(Evas_3D_Pick_Data *data, const Evas_Ray3 *ray, } } } - else if (pdmesh->assembly == EVAS_3D_VERTEX_ASSEMBLY_TRIANGLE_STRIP) + else if (pdmesh->assembly == EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLE_STRIP) { - evas_3d_mesh_interpolate_position_get(&tri.p1, &pos0, &pos1, pos_weight, 0); - evas_3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, 1); + evas_canvas3d_mesh_interpolate_position_get(&tri.p1, &pos0, &pos1, pos_weight, 0); + evas_canvas3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, 1); for (i = 0; i < pdmesh->index_count - 2; i++) { tri.p0 = tri.p1; tri.p1 = tri.p2; - evas_3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i + 2); + evas_canvas3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i + 2); if (_pick_data_triangle_add(data, ray, &tri)) { @@ -463,16 +463,16 @@ _pick_data_mesh_add(Evas_3D_Pick_Data *data, const Evas_Ray3 *ray, } } } - else if (pdmesh->assembly == EVAS_3D_VERTEX_ASSEMBLY_TRIANGLE_FAN) + else if (pdmesh->assembly == EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLE_FAN) { - evas_3d_mesh_interpolate_position_get(&tri.p0, &pos0, &pos1, pos_weight, 0); - evas_3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, 1); + evas_canvas3d_mesh_interpolate_position_get(&tri.p0, &pos0, &pos1, pos_weight, 0); + evas_canvas3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, 1); for (i = 1; i < pdmesh->index_count - 1; i++) { tri.p1 = tri.p2; - evas_3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i + 1); + evas_canvas3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i + 1); if (_pick_data_triangle_add(data, ray, &tri)) { @@ -486,13 +486,13 @@ _pick_data_mesh_add(Evas_3D_Pick_Data *data, const Evas_Ray3 *ray, } else if (pdmesh->index_count == 0.0 && pdmesh->vertex_count != 0) { - if (pdmesh->assembly == EVAS_3D_VERTEX_ASSEMBLY_TRIANGLES) + if (pdmesh->assembly == EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLES) { for (i = 0; i < pdmesh->vertex_count; i += 3) { - evas_3d_mesh_interpolate_position_get(&tri.p0, &pos0, &pos1, pos_weight, i); - evas_3d_mesh_interpolate_position_get(&tri.p1, &pos0, &pos1, pos_weight, i + 1); - evas_3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i + 2); + evas_canvas3d_mesh_interpolate_position_get(&tri.p0, &pos0, &pos1, pos_weight, i); + evas_canvas3d_mesh_interpolate_position_get(&tri.p1, &pos0, &pos1, pos_weight, i + 1); + evas_canvas3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i + 2); if (_pick_data_triangle_add(data, ray, &tri)) { @@ -503,17 +503,17 @@ _pick_data_mesh_add(Evas_3D_Pick_Data *data, const Evas_Ray3 *ray, } } } - else if (pdmesh->assembly == EVAS_3D_VERTEX_ASSEMBLY_TRIANGLE_STRIP) + else if (pdmesh->assembly == EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLE_STRIP) { - evas_3d_mesh_interpolate_position_get(&tri.p1, &pos0, &pos1, pos_weight, 0); - evas_3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, 1); + evas_canvas3d_mesh_interpolate_position_get(&tri.p1, &pos0, &pos1, pos_weight, 0); + evas_canvas3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, 1); for (i = 0; i < pdmesh->vertex_count - 2; i++) { tri.p0 = tri.p1; tri.p1 = tri.p2; - evas_3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i + 2); + evas_canvas3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i + 2); if (_pick_data_triangle_add(data, ray, &tri)) { @@ -524,16 +524,16 @@ _pick_data_mesh_add(Evas_3D_Pick_Data *data, const Evas_Ray3 *ray, } } } - else if (pdmesh->assembly == EVAS_3D_VERTEX_ASSEMBLY_TRIANGLE_FAN) + else if (pdmesh->assembly == EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLE_FAN) { - evas_3d_mesh_interpolate_position_get(&tri.p0, &pos0, &pos1, pos_weight, 0); - evas_3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, 1); + evas_canvas3d_mesh_interpolate_position_get(&tri.p0, &pos0, &pos1, pos_weight, 0); + evas_canvas3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, 1); for (i = 1; i < pdmesh->vertex_count - 1; i++) { tri.p1 = tri.p2; - evas_3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i + 1); + evas_canvas3d_mesh_interpolate_position_get(&tri.p2, &pos0, &pos1, pos_weight, i + 1); if (_pick_data_triangle_add(data, ray, &tri)) { @@ -548,12 +548,12 @@ _pick_data_mesh_add(Evas_3D_Pick_Data *data, const Evas_Ray3 *ray, } Eina_Bool -_node_pick(Evas_3D_Node *node, void *data) +_node_pick(Evas_Canvas3D_Node *node, void *data) { Evas_Ray3 ray; - Evas_3D_Pick_Data *pick = (Evas_3D_Pick_Data *)data; + Evas_Canvas3D_Pick_Data *pick = (Evas_Canvas3D_Pick_Data *)data; Evas_Mat4 mvp; - Evas_3D_Node_Data *pd_node = eo_data_scope_get(node, EVAS_3D_NODE_CLASS); + Evas_Canvas3D_Node_Data *pd_node = eo_data_scope_get(node, EVAS_CANVAS3D_NODE_CLASS); if (! evas_box3_ray3_intersect(&pd_node->aabb, &pick->ray_world)) { @@ -561,7 +561,7 @@ _node_pick(Evas_3D_Node *node, void *data) return EINA_FALSE; } - if (pd_node->type == EVAS_3D_NODE_TYPE_MESH) + if (pd_node->type == EVAS_CANVAS3D_NODE_TYPE_MESH) { Eina_Iterator *itr; void *ptr; @@ -574,7 +574,7 @@ _node_pick(Evas_3D_Node *node, void *data) while (eina_iterator_next(itr, &ptr)) { - Evas_3D_Node_Mesh *nm = (Evas_3D_Node_Mesh *)ptr; + Evas_Canvas3D_Node_Mesh *nm = (Evas_Canvas3D_Node_Mesh *)ptr; _pick_data_mesh_add(pick, &ray, nm->mesh, nm->frame, node); } } @@ -588,24 +588,24 @@ static void _node_mesh_colors_free_cb(void *data) } EOLIAN static Eina_Bool -_evas_3d_scene_pick(Eo *obj, Evas_3D_Scene_Data *pd, Evas_Real x, Evas_Real y, - Evas_3D_Node **node, Evas_3D_Mesh **mesh, +_evas_canvas3d_scene_pick(Eo *obj, Evas_Canvas3D_Scene_Data *pd, Evas_Real x, Evas_Real y, + Evas_Canvas3D_Node **node, Evas_Canvas3D_Mesh **mesh, Evas_Real *s, Evas_Real *t) { - Evas_3D_Pick_Data data; - Evas_3D_Node_Data *pd_camera_node; - Evas_3D_Camera_Data *pd_camera; - Evas_3D_Object_Data *pd_parent; + Evas_Canvas3D_Pick_Data data; + Evas_Canvas3D_Node_Data *pd_camera_node; + Evas_Canvas3D_Camera_Data *pd_camera; + Evas_Canvas3D_Object_Data *pd_parent; Evas_Public_Data *e; int tex = 0, px, py;; Evas_Color color = {0.0, 0.0, 0.0}; Eina_Stringshare *tmp; Eina_Array *arr = NULL; Eina_Bool update_scene = EINA_FALSE; - Evas_3D_Node *picked_node = NULL; + Evas_Canvas3D_Node *picked_node = NULL; const Eo_Event_Description *eo_desc = NULL; - pd_parent = eo_data_scope_get(obj, EVAS_3D_OBJECT_CLASS); + pd_parent = eo_data_scope_get(obj, EVAS_CANVAS3D_OBJECT_CLASS); e = eo_data_scope_get(pd_parent->evas, EVAS_CANVAS_CLASS); data.x = ((x * 2.0) / (Evas_Real)pd->w) - 1.0; @@ -623,13 +623,13 @@ _evas_3d_scene_pick(Eo *obj, Evas_3D_Scene_Data *pd, Evas_Real x, Evas_Real y, /*Use color pick mechanism finding node and mesh*/ if (pd->color_pick_enabled) { - Evas_3D_Scene_Public_Data scene_data; + Evas_Canvas3D_Scene_Public_Data scene_data; scene_data.bg_color = pd->bg_color; scene_data.shadows_enabled = pd->shadows_enabled; scene_data.camera_node = pd->camera_node; scene_data.color_pick_enabled = pd->color_pick_enabled; - eo_do(obj, update_scene = evas_3d_object_dirty_get(EVAS_3D_STATE_SCENE_UPDATED)); + eo_do(obj, update_scene = evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_SCENE_UPDATED)); if (update_scene) { if (pd->node_mesh_colors) @@ -644,9 +644,9 @@ _evas_3d_scene_pick(Eo *obj, Evas_3D_Scene_Data *pd, Evas_Real x, Evas_Real y, } scene_data.node_mesh_colors = pd->node_mesh_colors; scene_data.colors_node_mesh = pd->colors_node_mesh; - evas_3d_node_tree_traverse(pd->root_node, - EVAS_3D_TREE_TRAVERSE_LEVEL_ORDER, EINA_TRUE, - evas_3d_node_color_node_mesh_collect, &scene_data); + evas_canvas3d_node_tree_traverse(pd->root_node, + EVAS_CANVAS3D_TREE_TRAVERSE_LEVEL_ORDER, EINA_TRUE, + evas_canvas3d_node_color_node_mesh_collect, &scene_data); if (e->engine.func->drawable_scene_render_to_texture) { @@ -662,8 +662,8 @@ _evas_3d_scene_pick(Eo *obj, Evas_3D_Scene_Data *pd, Evas_Real x, Evas_Real y, arr = (Eina_Array *)eina_hash_find(pd->colors_node_mesh, tmp); if (arr) { - picked_node = (Evas_3D_Node *)eina_array_data_get(arr, 0); - if (mesh) *mesh = (Evas_3D_Mesh *)eina_array_data_get(arr, 1); + picked_node = (Evas_Canvas3D_Node *)eina_array_data_get(arr, 0); + if (mesh) *mesh = (Evas_Canvas3D_Mesh *)eina_array_data_get(arr, 1); if (node) *node = picked_node; eina_stringshare_del(tmp); @@ -685,9 +685,9 @@ _evas_3d_scene_pick(Eo *obj, Evas_3D_Scene_Data *pd, Evas_Real x, Evas_Real y, return EINA_FALSE; } /* Update the scene graph. */ - eo_do(obj, evas_3d_object_update()); - pd_camera_node = eo_data_scope_get(pd->camera_node, EVAS_3D_NODE_CLASS); - pd_camera = eo_data_scope_get(pd_camera_node->data.camera.camera, EVAS_3D_CAMERA_CLASS); + eo_do(obj, evas_canvas3d_object_update()); + pd_camera_node = eo_data_scope_get(pd->camera_node, EVAS_CANVAS3D_NODE_CLASS); + pd_camera = eo_data_scope_get(pd_camera_node->data.camera.camera, EVAS_CANVAS3D_CAMERA_CLASS); evas_mat4_multiply(&data.matrix_vp, &pd_camera->projection, &pd_camera_node->data.camera.matrix_world_to_eye); @@ -695,7 +695,7 @@ _evas_3d_scene_pick(Eo *obj, Evas_3D_Scene_Data *pd, Evas_Real x, Evas_Real y, evas_ray3_init(&data.ray_world, data.x, data.y, &data.matrix_vp); /* Traverse tree while adding meshes into pick data structure. */ - evas_3d_node_tree_traverse(pd->root_node, EVAS_3D_TREE_TRAVERSE_LEVEL_ORDER, EINA_TRUE, + evas_canvas3d_node_tree_traverse(pd->root_node, EVAS_CANVAS3D_TREE_TRAVERSE_LEVEL_ORDER, EINA_TRUE, _node_pick, &data); if (!data.picked) @@ -713,12 +713,12 @@ _evas_3d_scene_pick(Eo *obj, Evas_3D_Scene_Data *pd, Evas_Real x, Evas_Real y, return EINA_TRUE; } -EOLIAN static Evas_3D_Node * -_evas_3d_scene_exist(Eo *obj, Evas_3D_Scene_Data *pd, Evas_Real x, Evas_Real y, Evas_3D_Node *node) +EOLIAN static Evas_Canvas3D_Node * +_evas_canvas3d_scene_exist(Eo *obj, Evas_Canvas3D_Scene_Data *pd, Evas_Real x, Evas_Real y, Evas_Canvas3D_Node *node) { - Evas_3D_Pick_Data data; - Evas_3D_Node_Data *pd_camera_node; - Evas_3D_Camera_Data *pd_camera; + Evas_Canvas3D_Pick_Data data; + Evas_Canvas3D_Node_Data *pd_camera_node; + Evas_Canvas3D_Camera_Data *pd_camera; data.x = ((x * 2.0) / (Evas_Real)pd->w) - 1.0; data.y = ((((Evas_Real)pd->h - y - 1.0) * 2.0) / ((Evas_Real)pd->h)) - 1.0; @@ -731,9 +731,9 @@ _evas_3d_scene_exist(Eo *obj, Evas_3D_Scene_Data *pd, Evas_Real x, Evas_Real y, data.t = 0.0; /* Update the scene graph. */ - eo_do(obj, evas_3d_object_update()); - pd_camera_node = eo_data_scope_get(pd->camera_node, EVAS_3D_NODE_CLASS); - pd_camera = eo_data_scope_get(pd_camera_node->data.camera.camera, EVAS_3D_CAMERA_CLASS); + eo_do(obj, evas_canvas3d_object_update()); + pd_camera_node = eo_data_scope_get(pd->camera_node, EVAS_CANVAS3D_NODE_CLASS); + pd_camera = eo_data_scope_get(pd_camera_node->data.camera.camera, EVAS_CANVAS3D_CAMERA_CLASS); evas_mat4_multiply(&data.matrix_vp, &pd_camera->projection, &pd_camera_node->data.camera.matrix_world_to_eye); @@ -749,7 +749,7 @@ _evas_3d_scene_exist(Eo *obj, Evas_3D_Scene_Data *pd, Evas_Real x, Evas_Real y, } EOLIAN static Eina_List * -_evas_3d_scene_pick_member_list_get(Eo *obj, Evas_3D_Scene_Data *pd, Evas_Real x, Evas_Real y) +_evas_canvas3d_scene_pick_member_list_get(Eo *obj, Evas_Canvas3D_Scene_Data *pd, Evas_Real x, Evas_Real y) { const Eina_List *list = NULL, *l = NULL; Eina_List *picked_nodes = NULL; @@ -757,18 +757,18 @@ _evas_3d_scene_pick_member_list_get(Eo *obj, Evas_3D_Scene_Data *pd, Evas_Real x Eina_Bool pick = EINA_FALSE; /* Check pick for given scene. */ - eo_do(obj, pick = evas_3d_scene_pick(x, y, NULL, NULL, NULL, NULL)); + eo_do(obj, pick = evas_canvas3d_scene_pick(x, y, NULL, NULL, NULL, NULL)); if (!pick) return NULL; /* Get all members from root node. */ - eo_do(pd->root_node, list = evas_3d_node_member_list_get()); + eo_do(pd->root_node, list = evas_canvas3d_node_member_list_get()); EINA_LIST_FOREACH(list, l, node) { - Evas_3D_Node *exists; - if (eo_do_ret(obj, exists, evas_3d_scene_exist(x, y, node))) + Evas_Canvas3D_Node *exists; + if (eo_do_ret(obj, exists, evas_canvas3d_scene_exist(x, y, node))) picked_nodes = eina_list_append(picked_nodes, l); } @@ -776,32 +776,32 @@ _evas_3d_scene_pick_member_list_get(Eo *obj, Evas_3D_Scene_Data *pd, Evas_Real x } EOLIAN static Eina_Bool -_evas_3d_scene_shadows_enable_get(Eo *obj EINA_UNUSED, Evas_3D_Scene_Data *pd) +_evas_canvas3d_scene_shadows_enable_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Scene_Data *pd) { return pd->shadows_enabled; } EOLIAN static void -_evas_3d_scene_shadows_enable_set(Eo *obj EINA_UNUSED, Evas_3D_Scene_Data *pd, Eina_Bool _shadows_enabled) +_evas_canvas3d_scene_shadows_enable_set(Eo *obj EINA_UNUSED, Evas_Canvas3D_Scene_Data *pd, Eina_Bool _shadows_enabled) { pd->shadows_enabled = _shadows_enabled; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_SCENE_SHADOWS_ENABLED, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_SCENE_SHADOWS_ENABLED, NULL)); } EOLIAN static Eina_Bool -_evas_3d_scene_color_pick_enable_get(Eo *obj EINA_UNUSED, Evas_3D_Scene_Data *pd) +_evas_canvas3d_scene_color_pick_enable_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Scene_Data *pd) { return pd->color_pick_enabled; } EOLIAN static Eina_Bool -_evas_3d_scene_color_pick_enable_set(Eo *obj EINA_UNUSED, Evas_3D_Scene_Data *pd, Eina_Bool _enabled) +_evas_canvas3d_scene_color_pick_enable_set(Eo *obj EINA_UNUSED, Evas_Canvas3D_Scene_Data *pd, Eina_Bool _enabled) { if (pd->color_pick_enabled != _enabled) pd->color_pick_enabled = _enabled; - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_SCENE_UPDATED, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_SCENE_UPDATED, NULL)); return EINA_TRUE; } -#include "canvas/evas_3d_scene.eo.c" +#include "canvas/evas_canvas3d_scene.eo.c" diff --git a/src/lib/evas/canvas/evas_3d_scene.eo b/src/lib/evas/canvas/evas_canvas3d_scene.eo index 9bb2737b23..5ce6070008 100644 --- a/src/lib/evas/canvas/evas_3d_scene.eo +++ b/src/lib/evas/canvas/evas_canvas3d_scene.eo @@ -1,7 +1,7 @@ -class Evas_3D_Scene (Evas_3D_Object, Evas.Common_Interface) +class Evas_Canvas3D_Scene (Evas_Canvas3D_Object, Evas.Common_Interface) { legacy_prefix: null; - data: Evas_3D_Scene_Data; + data: Evas_Canvas3D_Scene_Data; methods { size_set { /*@ @@ -10,7 +10,7 @@ class Evas_3D_Scene (Evas_3D_Object, Evas.Common_Interface) A scene should be rendered to be displayed through an image objects. The resolution defines size of the internal surface holding the rendered result. - @ingroup Evas_3D_Scene + @ingroup Evas_Canvas3D_Scene */ params { @in w: int; /*@ Width of the resolution. */ @@ -22,7 +22,7 @@ class Evas_3D_Scene (Evas_3D_Object, Evas.Common_Interface) /*@ Get the internal resolution of a scene. - @ingroup Evas_3D_Scene + @ingroup Evas_Canvas3D_Scene */ params { @out w: int; /*@ Pointer to receive width of the resolution. */ @@ -40,7 +40,7 @@ class Evas_3D_Scene (Evas_3D_Object, Evas.Common_Interface) Default background color is (0.0, 0.0, 0.0, 0.0). - @ingroup Evas_3D_Scene + @ingroup Evas_Canvas3D_Scene */ params { @in r: Evas_Real; /*@ Red component of the background color. */ @@ -54,7 +54,7 @@ class Evas_3D_Scene (Evas_3D_Object, Evas.Common_Interface) /*@ Get the background color of a scene. - @ingroup Evas_3D_Scene + @ingroup Evas_Canvas3D_Scene */ params { @out r: Evas_Real; /*@ Pointer to receive red component of the background color.*/ @@ -72,14 +72,14 @@ class Evas_3D_Scene (Evas_3D_Object, Evas.Common_Interface) (0, 0) and right-bottom is (w, h) where (w, h) is the size of the scene. The texture coordinate is useful when using proxy texture source. - @ingroup Evas_3D_Scene + @ingroup Evas_Canvas3D_Scene */ return: bool; params { @in x: Evas_Real; /*@ X coordinate of the picking position. */ @in y: Evas_Real; /*@ Y coordinate of the picking position. */ - @out node: Evas_3D_Node *; /*@ Pointer to receive the node contains the picked mesh. */ - @out mesh: Evas_3D_Mesh *; /*@ Pointer to receive the picked mesh. */ + @out node: Evas_Canvas3D_Node *; /*@ Pointer to receive the node contains the picked mesh. */ + @out mesh: Evas_Canvas3D_Mesh *; /*@ Pointer to receive the picked mesh. */ @out s: Evas_Real; /*@ Pointer to receive the texture "s" coordinate. */ @out t: Evas_Real; /*@ Pointer to receive the texture "t" coordinate. */ } @@ -89,13 +89,13 @@ class Evas_3D_Scene (Evas_3D_Object, Evas.Common_Interface) /*@ Search given node in the given position. - @ingroup Evas_3D_Scene + @ingroup Evas_Canvas3D_Scene */ - return: Evas_3D_Node *; + return: Evas_Canvas3D_Node *; params { @in x: Evas_Real; /*@ X coordinate of the picking position. */ @in y: Evas_Real; /*@ Y coordinate of the picking position. */ - @in node: Evas_3D_Node *; /*@ Node for search. */ + @in node: Evas_Canvas3D_Node *; /*@ Node for search. */ } } @@ -103,9 +103,9 @@ class Evas_3D_Scene (Evas_3D_Object, Evas.Common_Interface) /*@ Get list of the all root members from scene in the given position. - @ingroup Evas_3D_Scene + @ingroup Evas_Canvas3D_Scene */ - return: list<Evas_3D_Node *> *; + return: list<Evas_Canvas3D_Node *> *; params { @in x: Evas_Real; /*@ X coordinate of the picking position. */ @in y: Evas_Real; /*@ Y coordinate of the picking position. */ @@ -118,7 +118,7 @@ class Evas_3D_Scene (Evas_3D_Object, Evas.Common_Interface) If shadows_enabled @c EINA_TRUE, the objects in the scene can throw shadow to another objects located behind them. The depth map used for shading. Directed and projective light sources are supported. - @ingroup Evas_3D_Scene + @ingroup Evas_Canvas3D_Scene */ params { @in shadows_enabled: bool; /*@ shadows enabled status. */ @@ -130,7 +130,7 @@ class Evas_3D_Scene (Evas_3D_Object, Evas.Common_Interface) Get shadows enabled status for given scene. @return The shadows enabled status. - @ingroup Evas_3D_Scene + @ingroup Evas_Canvas3D_Scene */ return: bool; params { @@ -140,7 +140,7 @@ class Evas_3D_Scene (Evas_3D_Object, Evas.Common_Interface) /*@ Get status of color picking of the scene. - @ingroup Evas_3D_Scene + @ingroup Evas_Canvas3D_Scene */ return: bool; params { @@ -150,7 +150,7 @@ class Evas_3D_Scene (Evas_3D_Object, Evas.Common_Interface) /*@ Set posibility color picking. - @ingroup Evas_3D_Scene + @ingroup Evas_Canvas3D_Scene */ return: bool; params { @@ -163,7 +163,7 @@ class Evas_3D_Scene (Evas_3D_Object, Evas.Common_Interface) /*@ Set the root node of a scene. - @ingroup Evas_3D_Scene + @ingroup Evas_Canvas3D_Scene */ } get { @@ -172,11 +172,11 @@ class Evas_3D_Scene (Evas_3D_Object, Evas.Common_Interface) @return The root node of the given scene. - @ingroup Evas_3D_Scene + @ingroup Evas_Canvas3D_Scene */ } values { - node: Evas_3D_Node *; /*@ A node which will be used as a root node for the scene. */ + node: Evas_Canvas3D_Node *; /*@ A node which will be used as a root node for the scene. */ } } @@ -185,7 +185,7 @@ class Evas_3D_Scene (Evas_3D_Object, Evas.Common_Interface) /*@ Set the camera node of a scene. - @ingroup Evas_3D_Scene + @ingroup Evas_Canvas3D_Scene */ } get { @@ -194,18 +194,18 @@ class Evas_3D_Scene (Evas_3D_Object, Evas.Common_Interface) @return The camera node of the given scene. - @ingroup Evas_3D_Scene + @ingroup Evas_Canvas3D_Scene */ } values { - node: Evas_3D_Node *; /*@ A node which will be used as a camera node for the scene. */ + node: Evas_Canvas3D_Node *; /*@ A node which will be used as a camera node for the scene. */ } } } implements { Eo.Base.constructor; - Evas_3D_Object.update_notify; - Evas_3D_Object.change_notify; + Evas_Canvas3D_Object.update_notify; + Evas_Canvas3D_Object.change_notify; } } diff --git a/src/lib/evas/canvas/evas_3d_texture.c b/src/lib/evas/canvas/evas_canvas3d_texture.c index c221b431d0..0350e76c67 100644 --- a/src/lib/evas/canvas/evas_3d_texture.c +++ b/src/lib/evas/canvas/evas_canvas3d_texture.c @@ -1,12 +1,12 @@ #include "evas_common_private.h" #include "evas_private.h" -#define MY_CLASS EVAS_3D_TEXTURE_CLASS +#define MY_CLASS EVAS_CANVAS3D_TEXTURE_CLASS static inline void -_texture_proxy_set(Evas_3D_Texture *texture, Evas_Object *eo_src, Evas_Object_Protected_Data *src) +_texture_proxy_set(Evas_Canvas3D_Texture *texture, Evas_Object *eo_src, Evas_Object_Protected_Data *src) { - Evas_3D_Texture_Data *pd = eo_data_scope_get(texture, MY_CLASS); + Evas_Canvas3D_Texture_Data *pd = eo_data_scope_get(texture, MY_CLASS); EINA_COW_WRITE_BEGIN(evas_object_proxy_cow, src->proxy, Evas_Object_Proxy_Data, proxy_src) { proxy_src->proxy_textures = eina_list_append(proxy_src->proxy_textures, texture); @@ -18,7 +18,7 @@ _texture_proxy_set(Evas_3D_Texture *texture, Evas_Object *eo_src, Evas_Object_Pr } static inline void -_texture_proxy_unset(Evas_3D_Texture_Data *texture) +_texture_proxy_unset(Evas_Canvas3D_Texture_Data *texture) { Evas_Object_Protected_Data *src = eo_data_scope_get(texture->source, EVAS_OBJECT_CLASS); @@ -51,13 +51,13 @@ _texture_proxy_unset(Evas_3D_Texture_Data *texture) } static inline void -_texture_proxy_subrender(Evas_3D_Texture *obj) +_texture_proxy_subrender(Evas_Canvas3D_Texture *obj) { /* Code taken from _proxy_subrender() in file evas_object_image.c */ Eo *evas = NULL; eo_do(obj, evas = evas_common_evas_get()); Evas_Public_Data *e = eo_data_scope_get(evas, EVAS_CANVAS_CLASS); - Evas_3D_Texture_Data *pd = eo_data_scope_get(obj, MY_CLASS); + Evas_Canvas3D_Texture_Data *pd = eo_data_scope_get(obj, MY_CLASS); Evas_Object_Protected_Data *source; void *ctx; int w, h; @@ -158,16 +158,16 @@ _texture_proxy_subrender(Evas_3D_Texture *obj) } static void -_texture_fini(Evas_3D_Texture *obj) +_texture_fini(Evas_Canvas3D_Texture *obj) { Eo *evas = NULL; int i = 0; Eina_Iterator *it = NULL; void *data = NULL; - Evas_3D_Material_Data *material = NULL; + Evas_Canvas3D_Material_Data *material = NULL; eo_do(obj, evas = evas_common_evas_get()); - Evas_3D_Texture_Data *pd = eo_data_scope_get(obj, MY_CLASS); + Evas_Canvas3D_Texture_Data *pd = eo_data_scope_get(obj, MY_CLASS); if (pd->engine_data) { @@ -182,12 +182,12 @@ _texture_fini(Evas_3D_Texture *obj) it = eina_hash_iterator_key_new(pd->materials); EINA_ITERATOR_FOREACH(it, data) { - material = eo_data_scope_get(data, EVAS_3D_MATERIAL_CLASS); + material = eo_data_scope_get(data, EVAS_CANVAS3D_MATERIAL_CLASS); if (!material) continue; - for (i = 0; i < EVAS_3D_MATERIAL_ATTRIB_COUNT; i++) + for (i = 0; i < EVAS_CANVAS3D_MATERIAL_ATTRIB_COUNT; i++) { if (material->attribs[i].texture) - evas_3d_texture_material_del(material->attribs[i].texture, data); + evas_canvas3d_texture_material_del(material->attribs[i].texture, data); } } eina_iterator_free(it); @@ -206,13 +206,13 @@ static Eina_Bool _texture_material_change_notify(const Eina_Hash *hash EINA_UNUSED, const void *key, void *data EINA_UNUSED, void *fdata) { - Evas_3D_Material *m = *(Evas_3D_Material **)key; - eo_do(m, evas_3d_object_change(EVAS_3D_STATE_MATERIAL_TEXTURE, (Evas_3D_Object *)fdata)); + Evas_Canvas3D_Material *m = *(Evas_Canvas3D_Material **)key; + eo_do(m, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_MATERIAL_TEXTURE, (Evas_Canvas3D_Object *)fdata)); return EINA_TRUE; } EOLIAN static void -_evas_3d_texture_evas_3d_object_change_notify(Eo *obj, Evas_3D_Texture_Data *pd, Evas_3D_State state EINA_UNUSED, Evas_3D_Object *ref EINA_UNUSED) +_evas_canvas3d_texture_evas_canvas3d_object_change_notify(Eo *obj, Evas_Canvas3D_Texture_Data *pd, Evas_Canvas3D_State state EINA_UNUSED, Evas_Canvas3D_Object *ref EINA_UNUSED) { if (pd->materials) @@ -220,7 +220,7 @@ _evas_3d_texture_evas_3d_object_change_notify(Eo *obj, Evas_3D_Texture_Data *pd, } EOLIAN static void -_evas_3d_texture_evas_3d_object_update_notify(Eo *obj, Evas_3D_Texture_Data *pd) +_evas_canvas3d_texture_evas_canvas3d_object_update_notify(Eo *obj, Evas_Canvas3D_Texture_Data *pd) { if (pd->source) { @@ -268,10 +268,10 @@ _evas_3d_texture_evas_3d_object_update_notify(Eo *obj, Evas_3D_Texture_Data *pd) } void -evas_3d_texture_material_add(Evas_3D_Texture *texture, Evas_3D_Material *material) +evas_canvas3d_texture_material_add(Evas_Canvas3D_Texture *texture, Evas_Canvas3D_Material *material) { int count = 0; - Evas_3D_Texture_Data *pd = eo_data_scope_get(texture, MY_CLASS); + Evas_Canvas3D_Texture_Data *pd = eo_data_scope_get(texture, MY_CLASS); if (pd->materials == NULL) { pd->materials = eina_hash_pointer_new(NULL); @@ -290,10 +290,10 @@ evas_3d_texture_material_add(Evas_3D_Texture *texture, Evas_3D_Material *materia } void -evas_3d_texture_material_del(Evas_3D_Texture *texture, Evas_3D_Material *material) +evas_canvas3d_texture_material_del(Evas_Canvas3D_Texture *texture, Evas_Canvas3D_Material *material) { int count = 0; - Evas_3D_Texture_Data *pd = eo_data_scope_get(texture, MY_CLASS); + Evas_Canvas3D_Texture_Data *pd = eo_data_scope_get(texture, MY_CLASS); if (pd->materials == NULL) { ERR("No material to delete."); @@ -308,8 +308,8 @@ evas_3d_texture_material_del(Evas_3D_Texture *texture, Evas_3D_Material *materia eina_hash_set(pd->materials, &material, (const void *)(uintptr_t)(count - 1)); } -EAPI Evas_3D_Texture * -evas_3d_texture_add(Evas *e) +EAPI Evas_Canvas3D_Texture * +evas_canvas3d_texture_add(Evas *e) { MAGIC_CHECK(e, Evas, MAGIC_EVAS); return NULL; @@ -320,25 +320,25 @@ evas_3d_texture_add(Evas *e) EOLIAN static Eo * -_evas_3d_texture_eo_base_constructor(Eo *obj, Evas_3D_Texture_Data *pd EINA_UNUSED) +_evas_canvas3d_texture_eo_base_constructor(Eo *obj, Evas_Canvas3D_Texture_Data *pd EINA_UNUSED) { obj = eo_do_super_ret(obj, MY_CLASS, obj, eo_constructor()); pd->atlas_enable = EINA_TRUE; - eo_do(obj, evas_3d_object_type_set(EVAS_3D_OBJECT_TYPE_TEXTURE)); + eo_do(obj, evas_canvas3d_object_type_set(EVAS_CANVAS3D_OBJECT_TYPE_TEXTURE)); return obj; } EOLIAN static void -_evas_3d_texture_eo_base_destructor(Eo *obj, Evas_3D_Texture_Data *pd EINA_UNUSED) +_evas_canvas3d_texture_eo_base_destructor(Eo *obj, Evas_Canvas3D_Texture_Data *pd EINA_UNUSED) { _texture_fini(obj); eo_do_super(obj, MY_CLASS, eo_destructor()); } EOLIAN static void -_evas_3d_texture_data_set(Eo *obj, Evas_3D_Texture_Data *pd, +_evas_canvas3d_texture_data_set(Eo *obj, Evas_Canvas3D_Texture_Data *pd, Evas_Colorspace color_format, int w, int h, const void *data) { @@ -367,11 +367,11 @@ _evas_3d_texture_data_set(Eo *obj, Evas_3D_Texture_Data *pd, pd->engine_data, image); e->engine.func->image_free(e->engine.data.output, image); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_TEXTURE_DATA, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_TEXTURE_DATA, NULL)); } EOLIAN static void -_evas_3d_texture_file_set(Eo *obj, Evas_3D_Texture_Data *pd, const char *file, const char *key) +_evas_canvas3d_texture_file_set(Eo *obj, Evas_Canvas3D_Texture_Data *pd, const char *file, const char *key) { Evas_Image_Load_Opts lo; @@ -400,11 +400,11 @@ _evas_3d_texture_file_set(Eo *obj, Evas_3D_Texture_Data *pd, const char *file, c image); e->engine.func->image_free(e->engine.data.output, image); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_TEXTURE_DATA, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_TEXTURE_DATA, NULL)); } EAPI void -_evas_3d_texture_source_set(Eo *obj , Evas_3D_Texture_Data *pd, Evas_Object *source) +_evas_canvas3d_texture_source_set(Eo *obj , Evas_Canvas3D_Texture_Data *pd, Evas_Object *source) { Eo *evas = NULL; eo_do(obj, evas = evas_common_evas_get()); @@ -442,11 +442,11 @@ _evas_3d_texture_source_set(Eo *obj , Evas_3D_Texture_Data *pd, Evas_Object *sou pd->engine_data = e->engine.func->texture_new(e->engine.data.output, pd->atlas_enable); _texture_proxy_set(obj, source, src); - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_TEXTURE_DATA, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_TEXTURE_DATA, NULL)); } EOLIAN static void -_evas_3d_texture_source_visible_set(Eo *obj EINA_UNUSED, Evas_3D_Texture_Data *pd, Eina_Bool visible) +_evas_canvas3d_texture_source_visible_set(Eo *obj EINA_UNUSED, Evas_Canvas3D_Texture_Data *pd, Eina_Bool visible) { Evas_Object_Protected_Data *src_obj; @@ -468,7 +468,7 @@ _evas_3d_texture_source_visible_set(Eo *obj EINA_UNUSED, Evas_3D_Texture_Data *p } EOLIAN static Eina_Bool -_evas_3d_texture_source_visible_get(Eo *obj EINA_UNUSED, Evas_3D_Texture_Data *pd) +_evas_canvas3d_texture_source_visible_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Texture_Data *pd) { Evas_Object_Protected_Data *src_obj; @@ -480,7 +480,7 @@ _evas_3d_texture_source_visible_get(Eo *obj EINA_UNUSED, Evas_3D_Texture_Data *p } EOLIAN static Evas_Colorspace -_evas_3d_texture_color_format_get(Eo *obj EINA_UNUSED, Evas_3D_Texture_Data *pd) +_evas_canvas3d_texture_color_format_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Texture_Data *pd) { Evas_Colorspace format = -1; Eo *evas = NULL; @@ -500,7 +500,7 @@ _evas_3d_texture_color_format_get(Eo *obj EINA_UNUSED, Evas_3D_Texture_Data *pd) } EOLIAN static void -_evas_3d_texture_size_get(Eo *obj, Evas_3D_Texture_Data *pd, int *w, int *h) +_evas_canvas3d_texture_size_get(Eo *obj, Evas_Canvas3D_Texture_Data *pd, int *w, int *h) { Eo *evas = NULL; eo_do(obj, evas = evas_common_evas_get()); @@ -513,7 +513,7 @@ _evas_3d_texture_size_get(Eo *obj, Evas_3D_Texture_Data *pd, int *w, int *h) } EOLIAN static void -_evas_3d_texture_wrap_set(Eo *obj, Evas_3D_Texture_Data *pd, Evas_3D_Wrap_Mode s, Evas_3D_Wrap_Mode t) +_evas_canvas3d_texture_wrap_set(Eo *obj, Evas_Canvas3D_Texture_Data *pd, Evas_Canvas3D_Wrap_Mode s, Evas_Canvas3D_Wrap_Mode t) { Eo *evas = NULL; eo_do(obj, evas = evas_common_evas_get()); @@ -523,11 +523,11 @@ _evas_3d_texture_wrap_set(Eo *obj, Evas_3D_Texture_Data *pd, Evas_3D_Wrap_Mode s e->engine.func->texture_wrap_set(e->engine.data.output, pd->engine_data, s, t); } - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_TEXTURE_WRAP, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_TEXTURE_WRAP, NULL)); } EOLIAN static void -_evas_3d_texture_wrap_get(Eo *obj, Evas_3D_Texture_Data *pd, Evas_3D_Wrap_Mode *s, Evas_3D_Wrap_Mode *t) +_evas_canvas3d_texture_wrap_get(Eo *obj, Evas_Canvas3D_Texture_Data *pd, Evas_Canvas3D_Wrap_Mode *s, Evas_Canvas3D_Wrap_Mode *t) { Eo *evas = NULL; eo_do(obj, evas = evas_common_evas_get()); @@ -540,7 +540,7 @@ _evas_3d_texture_wrap_get(Eo *obj, Evas_3D_Texture_Data *pd, Evas_3D_Wrap_Mode * } EOLIAN static void -_evas_3d_texture_filter_set(Eo *obj, Evas_3D_Texture_Data *pd, Evas_3D_Texture_Filter min, Evas_3D_Texture_Filter mag) +_evas_canvas3d_texture_filter_set(Eo *obj, Evas_Canvas3D_Texture_Data *pd, Evas_Canvas3D_Texture_Filter min, Evas_Canvas3D_Texture_Filter mag) { Eo *evas = NULL; eo_do(obj, evas = evas_common_evas_get()); @@ -550,11 +550,11 @@ _evas_3d_texture_filter_set(Eo *obj, Evas_3D_Texture_Data *pd, Evas_3D_Texture_F e->engine.func->texture_filter_set(e->engine.data.output, pd->engine_data, min, mag); } - eo_do(obj, evas_3d_object_change(EVAS_3D_STATE_TEXTURE_FILTER, NULL)); + eo_do(obj, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_TEXTURE_FILTER, NULL)); } EOLIAN static void -_evas_3d_texture_filter_get(Eo *obj EINA_UNUSED, Evas_3D_Texture_Data *pd, Evas_3D_Texture_Filter *min, Evas_3D_Texture_Filter *mag) +_evas_canvas3d_texture_filter_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Texture_Data *pd, Evas_Canvas3D_Texture_Filter *min, Evas_Canvas3D_Texture_Filter *mag) { Eo *evas = NULL; eo_do(obj, evas = evas_common_evas_get()); @@ -567,14 +567,14 @@ _evas_3d_texture_filter_get(Eo *obj EINA_UNUSED, Evas_3D_Texture_Data *pd, Evas_ } EOLIAN static void -_evas_3d_texture_atlas_enable_set(Eo *obj EINA_UNUSED, Evas_3D_Texture_Data *pd, Eina_Bool use_atlas) +_evas_canvas3d_texture_atlas_enable_set(Eo *obj EINA_UNUSED, Evas_Canvas3D_Texture_Data *pd, Eina_Bool use_atlas) { if (pd->atlas_enable != use_atlas) pd->atlas_enable = use_atlas; } EOLIAN static Eina_Bool -_evas_3d_texture_atlas_enable_get(Eo *obj EINA_UNUSED, Evas_3D_Texture_Data *pd) +_evas_canvas3d_texture_atlas_enable_get(Eo *obj EINA_UNUSED, Evas_Canvas3D_Texture_Data *pd) { return pd->atlas_enable; } -#include "canvas/evas_3d_texture.eo.c" +#include "canvas/evas_canvas3d_texture.eo.c" diff --git a/src/lib/evas/canvas/evas_3d_texture.eo b/src/lib/evas/canvas/evas_canvas3d_texture.eo index 00631468f5..4b88349741 100644 --- a/src/lib/evas/canvas/evas_3d_texture.eo +++ b/src/lib/evas/canvas/evas_canvas3d_texture.eo @@ -1,7 +1,7 @@ -class Evas_3D_Texture (Evas_3D_Object, Evas.Common_Interface) +class Evas_Canvas3D_Texture (Evas_Canvas3D_Object, Evas.Common_Interface) { legacy_prefix: null; - data : Evas_3D_Texture_Data; + data : Evas_Canvas3D_Texture_Data; methods { @property source_visible { set { @@ -13,18 +13,18 @@ class Evas_3D_Texture (Evas_3D_Object, Evas.Common_Interface) By default, source object is visible. - @see evas_3d_texture_source_set() + @see evas_canvas3d_texture_source_set() - @ingroup Evas_3D_Texture + @ingroup Evas_Canvas3D_Texture */ } get { /*@ Get the visibility flag of the source evas object of the given texture. - @see evas_3d_texture_source_visible_set() + @see evas_canvas3d_texture_source_visible_set() - @ingroup Evas_3D_Texture + @ingroup Evas_Canvas3D_Texture */ } values { @@ -40,14 +40,14 @@ class Evas_3D_Texture (Evas_3D_Object, Evas.Common_Interface) By default, is enabled. - @ingroup Evas_3D_Texture + @ingroup Evas_Canvas3D_Texture */ } get { /*@ Get enable flag of generation texture unit with support atlas. - @ingroup Evas_3D_Texture + @ingroup Evas_Canvas3D_Texture */ } values { @@ -58,9 +58,9 @@ class Evas_3D_Texture (Evas_3D_Object, Evas.Common_Interface) /*@ Set the data of the given texture. - @see evas_3d_texture_file_set() + @see evas_canvas3d_texture_file_set() - @ingroup Evas_3D_Texture + @ingroup Evas_Canvas3D_Texture */ params { @@ -75,7 +75,7 @@ class Evas_3D_Texture (Evas_3D_Object, Evas.Common_Interface) /*@ Set the data of the given texture from file. - @ingroup Evas_3D_Texture + @ingroup Evas_Canvas3D_Texture */ params { @@ -91,9 +91,9 @@ class Evas_3D_Texture (Evas_3D_Object, Evas.Common_Interface) Evas 3D support using existing evas object as a texture source. This feature make it possible using any exisiting evas object inside 3D scene. - @see evas_3d_texture_source_visible_set + @see evas_canvas3d_texture_source_visible_set - @ingroup Evas_3D_Texture + @ingroup Evas_Canvas3D_Texture */ params { @@ -105,14 +105,14 @@ class Evas_3D_Texture (Evas_3D_Object, Evas.Common_Interface) /*@ Get the color format of the given texture. - EVAS_3D_COLOR_FORMAT_RGBA will be returned if the texture has source object. + EVAS_CANVAS3D_COLOR_FORMAT_RGBA will be returned if the texture has source object. Otherwise, the color format of the data will be returned. - @see evas_3d_texture_data_set() - @see evas_3d_texture_file_set() - @see evas_3d_texture_source_set() + @see evas_canvas3d_texture_data_set() + @see evas_canvas3d_texture_file_set() + @see evas_canvas3d_texture_source_set() - @ingroup Evas_3D_Texture + @ingroup Evas_Canvas3D_Texture */ return: Evas_Colorspace; } @@ -124,11 +124,11 @@ class Evas_3D_Texture (Evas_3D_Object, Evas.Common_Interface) If the texture has source object, the size of the source object will be returned. Otherwise, the size of the data (or image file) will be returned. - @see evas_3d_texture_data_set() - @see evas_3d_texture_file_set() - @see evas_3d_texture_source_set() + @see evas_canvas3d_texture_data_set() + @see evas_canvas3d_texture_file_set() + @see evas_canvas3d_texture_source_set() - @ingroup Evas_3D_Texture + @ingroup Evas_Canvas3D_Texture */ params { @out w: int; /*@ Pointer to receive the width of the texture size. */ @@ -142,13 +142,13 @@ class Evas_3D_Texture (Evas_3D_Object, Evas.Common_Interface) If the texture coordinate exceed range [0.0, 1.0] the values are modified according to the wrap mode. - Default wrap modes are both EVAS_3D_WRAP_MODE_CLAMP for s and t. + Default wrap modes are both EVAS_CANVAS3D_WRAP_MODE_CLAMP for s and t. - @ingroup Evas_3D_Texture + @ingroup Evas_Canvas3D_Texture */ params { - @in s: Evas_3D_Wrap_Mode; /*@ Wrap mode for S-axis. */ - @in t: Evas_3D_Wrap_Mode; /*@ Wrap mode for T-axis. */ + @in s: Evas_Canvas3D_Wrap_Mode; /*@ Wrap mode for S-axis. */ + @in t: Evas_Canvas3D_Wrap_Mode; /*@ Wrap mode for T-axis. */ } } @@ -156,14 +156,14 @@ class Evas_3D_Texture (Evas_3D_Object, Evas.Common_Interface) /*@ Get the wrap mode of the given texture. - @see evas_3d_texture_wrap_set() + @see evas_canvas3d_texture_wrap_set() - @ingroup Evas_3D_Texture + @ingroup Evas_Canvas3D_Texture */ params { - @out s: Evas_3D_Wrap_Mode; /*@ Pointer to receive S-axis wrap mode. */ - @out t: Evas_3D_Wrap_Mode; /*@ Pointer to receive T-axis wrap mode. */ + @out s: Evas_Canvas3D_Wrap_Mode; /*@ Pointer to receive S-axis wrap mode. */ + @out t: Evas_Canvas3D_Wrap_Mode; /*@ Pointer to receive T-axis wrap mode. */ } } @@ -171,14 +171,14 @@ class Evas_3D_Texture (Evas_3D_Object, Evas.Common_Interface) /*@ Set the filter of the given texture. - Default filters are both EVAS_3D_TEXTURE_FILTER_NEAREST for s and t. + Default filters are both EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST for s and t. - @ingroup Evas_3D_Texture + @ingroup Evas_Canvas3D_Texture */ params { - @in min: Evas_3D_Texture_Filter; /*@ Minification filter used when down-scaling. */ - @in mag: Evas_3D_Texture_Filter; /*@ Magnification filter used when up-scaling. */ + @in min: Evas_Canvas3D_Texture_Filter; /*@ Minification filter used when down-scaling. */ + @in mag: Evas_Canvas3D_Texture_Filter; /*@ Magnification filter used when up-scaling. */ } } @@ -190,13 +190,13 @@ class Evas_3D_Texture (Evas_3D_Object, Evas.Common_Interface) @param min Pointer to receive the minification filter. @param mag Pointer to receive the magnification filter. - @see evas_3d_texture_filter_set() + @see evas_canvas3d_texture_filter_set() - @ingroup Evas_3D_Texture + @ingroup Evas_Canvas3D_Texture */ params { - @out min: Evas_3D_Texture_Filter; /*@ Pointer to receive the minification filter. */ - @out mag: Evas_3D_Texture_Filter; /*@ Pointer to receive the magnification filter. */ + @out min: Evas_Canvas3D_Texture_Filter; /*@ Pointer to receive the minification filter. */ + @out mag: Evas_Canvas3D_Texture_Filter; /*@ Pointer to receive the magnification filter. */ } } } @@ -204,8 +204,8 @@ class Evas_3D_Texture (Evas_3D_Object, Evas.Common_Interface) implements { Eo.Base.constructor; Eo.Base.destructor; - Evas_3D_Object.update_notify; - Evas_3D_Object.change_notify; + Evas_Canvas3D_Object.update_notify; + Evas_Canvas3D_Object.change_notify; } } diff --git a/src/lib/evas/canvas/evas_image.eo b/src/lib/evas/canvas/evas_image.eo index 555ee904ff..f3a9ec65a9 100644 --- a/src/lib/evas/canvas/evas_image.eo +++ b/src/lib/evas/canvas/evas_image.eo @@ -753,7 +753,7 @@ class Evas.Image (Evas.Object, Efl.File, Efl.Image, Efl.Gfx.Fill, Efl.Gfx.View) legacy: null; } values { - scene: Evas_3D_Scene *; /*@ 3D scene on an image object. */ + scene: Evas_Canvas3D_Scene *; /*@ 3D scene on an image object. */ } } @property filter_program { diff --git a/src/lib/evas/canvas/evas_object_image.c b/src/lib/evas/canvas/evas_object_image.c index f5535fe3bd..b2f8b95fb2 100644 --- a/src/lib/evas/canvas/evas_object_image.c +++ b/src/lib/evas/canvas/evas_object_image.c @@ -82,7 +82,7 @@ struct _Evas_Object_Image_State Evas_Object *source; Evas_Map *defmap; - Evas_3D_Scene *scene; + Evas_Canvas3D_Scene *scene; union { const char *file; @@ -190,7 +190,7 @@ static void _proxy_unset(Evas_Object *proxy, Evas_Object_Protected_Data *obj, Ev static void _proxy_set(Evas_Object *proxy, Evas_Object *src); static void _proxy_error(Evas_Object *proxy, void *context, void *output, void *surface, int x, int y, Eina_Bool do_async); -static void _3d_set(Evas_Object *eo_obj, Evas_3D_Scene *scene); +static void _3d_set(Evas_Object *eo_obj, Evas_Canvas3D_Scene *scene); static void _3d_unset(Evas_Object *eo_obj, Evas_Object_Protected_Data *image, Evas_Image_Data *o); static const Evas_Object_Func object_func = @@ -850,7 +850,7 @@ _evas_image_source_visible_get(Eo *eo_obj EINA_UNUSED, Evas_Image_Data *o) EOLIAN static void -_evas_image_scene_set(Eo *eo_obj, Evas_Image_Data *o, Evas_3D_Scene *scene) +_evas_image_scene_set(Eo *eo_obj, Evas_Image_Data *o, Evas_Canvas3D_Scene *scene) { Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJECT_CLASS); Evas_Image_Load_Opts lo; @@ -866,7 +866,7 @@ _evas_image_scene_set(Eo *eo_obj, Evas_Image_Data *o, Evas_3D_Scene *scene) else _3d_unset(eo_obj, obj, o); } -EOLIAN static Evas_3D_Scene * +EOLIAN static Evas_Canvas3D_Scene * _evas_image_scene_get(Eo *eo_obj EINA_UNUSED, Evas_Image_Data *o) { return o->cur->scene; @@ -2464,12 +2464,12 @@ _proxy_error(Evas_Object *eo_proxy, void *context, void *output, void *surface, } static void -_3d_set(Evas_Object *eo_obj, Evas_3D_Scene *scene) +_3d_set(Evas_Object *eo_obj, Evas_Canvas3D_Scene *scene) { Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJECT_CLASS); Evas_Image_Data *o = eo_data_scope_get(eo_obj, MY_CLASS); - Evas_3D_Scene_Data *pd_scene = eo_data_scope_get(scene, - EVAS_3D_SCENE_CLASS); + Evas_Canvas3D_Scene_Data *pd_scene = eo_data_scope_get(scene, + EVAS_CANVAS3D_SCENE_CLASS); EINA_COW_WRITE_BEGIN(evas_object_3d_cow, obj->data_3d, Evas_Object_3D_Data, data) { @@ -2497,8 +2497,8 @@ _3d_unset(Evas_Object *eo_obj EINA_UNUSED, Evas_Object_Protected_Data *obj, if (!o->cur->scene) return; - Evas_3D_Scene_Data *pd_scene = - eo_data_scope_get(o->cur->scene, EVAS_3D_SCENE_CLASS); + Evas_Canvas3D_Scene_Data *pd_scene = + eo_data_scope_get(o->cur->scene, EVAS_CANVAS3D_SCENE_CLASS); EINA_COW_IMAGE_STATE_WRITE_BEGIN(o, state_write) { @@ -2536,14 +2536,14 @@ _3d_unset(Evas_Object *eo_obj EINA_UNUSED, Evas_Object_Protected_Data *obj, static void _3d_render(Evas *eo_e, Evas_Object *eo_obj EINA_UNUSED, Evas_Object_Protected_Data *obj, Evas_Image_Data *o EINA_UNUSED, - Evas_3D_Scene *scene) + Evas_Canvas3D_Scene *scene) { Evas_Public_Data *e; Eina_Bool need_native_set = EINA_FALSE; - Evas_3D_Scene_Public_Data scene_data; - Evas_3D_Scene_Data *pd_scene = NULL; + Evas_Canvas3D_Scene_Public_Data scene_data; + Evas_Canvas3D_Scene_Data *pd_scene = NULL; - pd_scene = eo_data_scope_get(scene, EVAS_3D_SCENE_CLASS); + pd_scene = eo_data_scope_get(scene, EVAS_CANVAS3D_SCENE_CLASS); if ((pd_scene->w == 0) || (pd_scene->h == 0)) return; if (!pd_scene->camera_node) @@ -2605,24 +2605,24 @@ _3d_render(Evas *eo_e, Evas_Object *eo_obj EINA_UNUSED, } EINA_COW_WRITE_END(evas_object_3d_cow, obj->data_3d, data); - evas_3d_scene_data_init(&scene_data); + evas_canvas3d_scene_data_init(&scene_data); scene_data.bg_color = pd_scene->bg_color; scene_data.shadows_enabled = pd_scene->shadows_enabled; scene_data.camera_node = pd_scene->camera_node; /* Phase 1 - Update scene graph tree. */ - eo_do(scene, evas_3d_object_update()); + eo_do(scene, evas_canvas3d_object_update()); /* Phase 2 - Do frustum culling and get visible model nodes. */ - evas_3d_node_tree_traverse(pd_scene->root_node, - EVAS_3D_TREE_TRAVERSE_LEVEL_ORDER, EINA_TRUE, - evas_3d_node_mesh_collect, &scene_data); + evas_canvas3d_node_tree_traverse(pd_scene->root_node, + EVAS_CANVAS3D_TREE_TRAVERSE_LEVEL_ORDER, EINA_TRUE, + evas_canvas3d_node_mesh_collect, &scene_data); /* Phase 3 - Collect active light nodes in the scene graph tree. */ - evas_3d_node_tree_traverse(pd_scene->root_node, - EVAS_3D_TREE_TRAVERSE_ANY_ORDER, EINA_FALSE, - evas_3d_node_light_collect, &scene_data); + evas_canvas3d_node_tree_traverse(pd_scene->root_node, + EVAS_CANVAS3D_TREE_TRAVERSE_ANY_ORDER, EINA_FALSE, + evas_canvas3d_node_light_collect, &scene_data); /* Phase 5 - Draw the scene. */ if (e->engine.func->drawable_scene_render) @@ -2631,7 +2631,7 @@ _3d_render(Evas *eo_e, Evas_Object *eo_obj EINA_UNUSED, pd_scene->surface, &scene_data); } /* Clean up temporary resources. */ - evas_3d_scene_data_fini(&scene_data); + evas_canvas3d_scene_data_fini(&scene_data); } static void @@ -3705,10 +3705,10 @@ evas_object_image_render_pre(Evas_Object *eo_obj, } else if (o->cur->scene) { - Evas_3D_Scene *scene = o->cur->scene; + Evas_Canvas3D_Scene *scene = o->cur->scene; Eina_Bool dirty; - eo_do(scene, dirty = evas_3d_object_dirty_get(EVAS_3D_STATE_ANY)); + eo_do(scene, dirty = evas_canvas3d_object_dirty_get(EVAS_CANVAS3D_STATE_ANY)); if (dirty) { evas_object_render_pre_prev_cur_add(&e->clip_changes, eo_obj, obj); diff --git a/src/lib/evas/canvas/evas_object_main.c b/src/lib/evas/canvas/evas_object_main.c index 21a107c2a1..d82b7b43ad 100644 --- a/src/lib/evas/canvas/evas_object_main.c +++ b/src/lib/evas/canvas/evas_object_main.c @@ -252,7 +252,7 @@ evas_object_change(Evas_Object *eo_obj, Evas_Object_Protected_Data *obj) Evas_Object_Protected_Data *obj2; Evas_Object *eo_obj2; Eina_Bool movch = EINA_FALSE; - Evas_3D_Texture *texture; + Evas_Canvas3D_Texture *texture; if (!obj->layer) return; if (!obj->layer->evas) return; @@ -286,7 +286,7 @@ evas_object_change(Evas_Object *eo_obj, Evas_Object_Protected_Data *obj) } EINA_LIST_FOREACH(obj->proxy->proxy_textures, l, texture) { - eo_do(texture, evas_3d_object_change(EVAS_3D_STATE_TEXTURE_DATA, NULL)); + eo_do(texture, evas_canvas3d_object_change(EVAS_CANVAS3D_STATE_TEXTURE_DATA, NULL)); } if (obj->smart.parent) { @@ -674,7 +674,7 @@ _evas_object_eo_base_destructor(Eo *eo_obj, Evas_Object_Protected_Data *obj) MAGIC_CHECK_END(); Evas_Object *proxy; Eina_List *l, *l2; - Evas_3D_Texture *texture; + Evas_Canvas3D_Texture *texture; evas_object_hide(eo_obj); if (obj->focused) @@ -729,7 +729,7 @@ _evas_object_eo_base_destructor(Eo *eo_obj, Evas_Object_Protected_Data *obj) Evas_Object_Proxy_Data, proxy_src) { EINA_LIST_FREE(proxy_src->proxy_textures, texture) - eo_do(texture, evas_3d_texture_source_set(NULL)); + eo_do(texture, evas_canvas3d_texture_source_set(NULL)); } EINA_COW_WRITE_END(evas_object_proxy_cow, obj->proxy, proxy_src); } diff --git a/src/lib/evas/common/evas_model_load.c b/src/lib/evas/common/evas_model_load.c index 959cd71bc8..f7c21ccc40 100644 --- a/src/lib/evas/common/evas_model_load.c +++ b/src/lib/evas/common/evas_model_load.c @@ -8,7 +8,7 @@ #include "evas_private.h" void -_evas_common_load_model(Evas_3D_Mesh *model, +_evas_common_load_model(Evas_Canvas3D_Mesh *model, Eina_File *file, const char *file_path) { @@ -35,7 +35,7 @@ _evas_common_load_model(Evas_3D_Mesh *model, } void -evas_common_load_model_from_file(Evas_3D_Mesh *model, const char *file) +evas_common_load_model_from_file(Evas_Canvas3D_Mesh *model, const char *file) { Eina_File *tmp_file = eina_file_open(file, 0); @@ -65,7 +65,7 @@ evas_common_load_model_from_file(Evas_3D_Mesh *model, const char *file) } void -evas_common_load_model_from_eina_file(Evas_3D_Mesh *model, const Eina_File *file) +evas_common_load_model_from_eina_file(Evas_Canvas3D_Mesh *model, const Eina_File *file) { Eina_File *e_file = eina_file_dup(file); diff --git a/src/lib/evas/common/evas_model_save.c b/src/lib/evas/common/evas_model_save.c index 7ab39702bf..2011c7451f 100644 --- a/src/lib/evas/common/evas_model_save.c +++ b/src/lib/evas/common/evas_model_save.c @@ -8,9 +8,9 @@ #include "evas_private.h" void -evas_common_save_model_to_file(Evas_3D_Mesh *model, +evas_common_save_model_to_file(Evas_Canvas3D_Mesh *model, const char *file, - Evas_3D_Mesh_Frame *f) + Evas_Canvas3D_Mesh_Frame *f) { char *p; char *saver = NULL; diff --git a/src/lib/evas/common3d/primitives/primitive_common.c b/src/lib/evas/common3d/primitives/primitive_common.c index 066ef3b35c..882e95216e 100644 --- a/src/lib/evas/common3d/primitives/primitive_common.c +++ b/src/lib/evas/common3d/primitives/primitive_common.c @@ -1,9 +1,9 @@ #include "primitive_common.h" -void _set_vertex_data_from_array(Evas_3D_Mesh *mesh, +void _set_vertex_data_from_array(Evas_Canvas3D_Mesh *mesh, int frame, const float *data, - Evas_3D_Vertex_Attrib attr, + Evas_Canvas3D_Vertex_Attrib attr, int start, int attr_count, int line, @@ -12,9 +12,9 @@ void _set_vertex_data_from_array(Evas_3D_Mesh *mesh, float *address, *out; int stride, i, j; eo_do(mesh, - evas_3d_mesh_frame_vertex_data_copy_set(frame, attr, 0, NULL), - address = (float *)evas_3d_mesh_frame_vertex_data_map(frame, attr), - stride = evas_3d_mesh_frame_vertex_stride_get(frame, attr)); + evas_canvas3d_mesh_frame_vertex_data_copy_set(frame, attr, 0, NULL), + address = (float *)evas_canvas3d_mesh_frame_vertex_data_map(frame, attr), + stride = evas_canvas3d_mesh_frame_vertex_stride_get(frame, attr)); if (stride == 0) stride = sizeof(float) * attr_count; for (i = 0; i < vcount; i++) { @@ -23,22 +23,22 @@ void _set_vertex_data_from_array(Evas_3D_Mesh *mesh, out[j] = data[start + (line * i) + j]; } eo_do(mesh, - evas_3d_mesh_frame_vertex_data_unmap(frame, attr)); + evas_canvas3d_mesh_frame_vertex_data_unmap(frame, attr)); } void -_set_vec3_vertex_data(Evas_3D_Mesh *mesh, +_set_vec3_vertex_data(Evas_Canvas3D_Mesh *mesh, int frame, int vcount, Evas_Vec3 *data, - Evas_3D_Vertex_Attrib attr) + Evas_Canvas3D_Vertex_Attrib attr) { float *address, *out; int stride, i; eo_do(mesh, - evas_3d_mesh_frame_vertex_data_copy_set(frame, attr, 0, NULL), - address = (float *)evas_3d_mesh_frame_vertex_data_map(frame, attr), - stride = evas_3d_mesh_frame_vertex_stride_get(frame, attr)); + evas_canvas3d_mesh_frame_vertex_data_copy_set(frame, attr, 0, NULL), + address = (float *)evas_canvas3d_mesh_frame_vertex_data_map(frame, attr), + stride = evas_canvas3d_mesh_frame_vertex_stride_get(frame, attr)); if (stride == 0) stride = sizeof(float) * 3; for (i = 0; i < vcount; i++) { @@ -49,22 +49,22 @@ _set_vec3_vertex_data(Evas_3D_Mesh *mesh, } free(data); eo_do(mesh, - evas_3d_mesh_frame_vertex_data_unmap(frame, attr)); + evas_canvas3d_mesh_frame_vertex_data_unmap(frame, attr)); } void -_set_vec2_vertex_data(Evas_3D_Mesh *mesh, +_set_vec2_vertex_data(Evas_Canvas3D_Mesh *mesh, int frame, int vcount, Evas_Vec2 *data, - Evas_3D_Vertex_Attrib attr) + Evas_Canvas3D_Vertex_Attrib attr) { float *address, *out; int stride, i; eo_do(mesh, - evas_3d_mesh_frame_vertex_data_copy_set(frame, attr, 0, NULL), - address = (float *)evas_3d_mesh_frame_vertex_data_map(frame, attr), - stride = evas_3d_mesh_frame_vertex_stride_get(frame, attr)); + evas_canvas3d_mesh_frame_vertex_data_copy_set(frame, attr, 0, NULL), + address = (float *)evas_canvas3d_mesh_frame_vertex_data_map(frame, attr), + stride = evas_canvas3d_mesh_frame_vertex_stride_get(frame, attr)); if (stride == 0) stride = sizeof(float) * 2; for (i = 0; i < vcount; i++) { @@ -74,7 +74,7 @@ _set_vec2_vertex_data(Evas_3D_Mesh *mesh, } free(data); eo_do(mesh, - evas_3d_mesh_frame_vertex_data_unmap(frame, attr)); + evas_canvas3d_mesh_frame_vertex_data_unmap(frame, attr)); } void @@ -137,65 +137,65 @@ _primitives_vec3_normalize(Evas_Vec3 *out) } void -evas_common_set_model_from_primitive(Evas_3D_Mesh *model, +evas_common_set_model_from_primitive(Evas_Canvas3D_Mesh *model, int frame, - Evas_3D_Primitive_Data *primitive) + Evas_Canvas3D_Primitive_Data *primitive) { Evas_Real ratio = primitive->ratio; int precision = primitive->precision; - Evas_3D_Surface_Func *surface = primitive->surface; + Evas_Canvas3D_Surface_Func *surface = primitive->surface; Evas_Vec2 tex_scale = primitive->tex_scale; - Evas_3D_Primitive_Mode mode = primitive->mode; + Evas_Canvas3D_Primitive_Mode mode = primitive->mode; switch (primitive->form) { - case EVAS_3D_MESH_PRIMITIVE_NONE: - case EVAS_3D_MESH_PRIMITIVE_COUNT: + case EVAS_CANVAS3D_MESH_PRIMITIVE_NONE: + case EVAS_CANVAS3D_MESH_PRIMITIVE_COUNT: { ERR("Primitive with this type cannot be set to mesh."); break; } - case EVAS_3D_MESH_PRIMITIVE_SQUARE: + case EVAS_CANVAS3D_MESH_PRIMITIVE_SQUARE: { evas_model_set_from_square_primitive(model, frame); break; } - case EVAS_3D_MESH_PRIMITIVE_CUBE: + case EVAS_CANVAS3D_MESH_PRIMITIVE_CUBE: { evas_model_set_from_cube_primitive(model, frame); break; } - case EVAS_3D_MESH_PRIMITIVE_CYLINDER: + case EVAS_CANVAS3D_MESH_PRIMITIVE_CYLINDER: { evas_model_set_from_cylinder_primitive(model, frame, mode, precision, tex_scale); break; } - case EVAS_3D_MESH_PRIMITIVE_CONE: + case EVAS_CANVAS3D_MESH_PRIMITIVE_CONE: { evas_model_set_from_cone_primitive(model, frame, mode, precision, tex_scale); break; } - case EVAS_3D_MESH_PRIMITIVE_SPHERE: + case EVAS_CANVAS3D_MESH_PRIMITIVE_SPHERE: { evas_model_set_from_sphere_primitive(model, frame, mode, precision, tex_scale); break; } - case EVAS_3D_MESH_PRIMITIVE_TORUS: + case EVAS_CANVAS3D_MESH_PRIMITIVE_TORUS: { evas_model_set_from_torus_primitive(model, frame, ratio, precision, tex_scale); break; } - case EVAS_3D_MESH_PRIMITIVE_SURFACE: + case EVAS_CANVAS3D_MESH_PRIMITIVE_SURFACE: { evas_model_set_from_surface_primitive(model, frame, surface, precision, tex_scale); break; } - case EVAS_3D_MESH_PRIMITIVE_TERRAIN: + case EVAS_CANVAS3D_MESH_PRIMITIVE_TERRAIN: { evas_model_set_from_terrain_primitive(model, frame, precision, tex_scale); diff --git a/src/lib/evas/common3d/primitives/primitive_common.h b/src/lib/evas/common3d/primitives/primitive_common.h index c2b47f375b..fa05b6f649 100644 --- a/src/lib/evas/common3d/primitives/primitive_common.h +++ b/src/lib/evas/common3d/primitives/primitive_common.h @@ -18,37 +18,37 @@ #define SET_VERTEX_DATA(frame) \ eo_do(mesh, \ - evas_3d_mesh_vertex_count_set(vcount), \ - evas_3d_mesh_frame_add(frame), \ - evas_3d_mesh_index_data_copy_set(EVAS_3D_INDEX_FORMAT_UNSIGNED_SHORT, \ + evas_canvas3d_mesh_vertex_count_set(vcount), \ + evas_canvas3d_mesh_frame_add(frame), \ + evas_canvas3d_mesh_index_data_copy_set(EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_SHORT, \ icount, &indices[0])); \ - _set_vec3_vertex_data(mesh, frame, vcount, vertices, EVAS_3D_VERTEX_POSITION); \ - _set_vec3_vertex_data(mesh, frame, vcount, normals, EVAS_3D_VERTEX_NORMAL); \ - _set_vec2_vertex_data(mesh, frame, vcount, tex_coord, EVAS_3D_VERTEX_TEXCOORD); \ - _set_vec3_vertex_data(mesh, frame, vcount, tangents, EVAS_3D_VERTEX_TANGENT); \ + _set_vec3_vertex_data(mesh, frame, vcount, vertices, EVAS_CANVAS3D_VERTEX_POSITION); \ + _set_vec3_vertex_data(mesh, frame, vcount, normals, EVAS_CANVAS3D_VERTEX_NORMAL); \ + _set_vec2_vertex_data(mesh, frame, vcount, tex_coord, EVAS_CANVAS3D_VERTEX_TEXCOORD); \ + _set_vec3_vertex_data(mesh, frame, vcount, tangents, EVAS_CANVAS3D_VERTEX_TANGENT); \ free(indices); #define SET_VERTEX_DATA_FROM_ARRAY(mesh, frame, varray, vcount, indices, icount) \ eo_do(mesh, \ - evas_3d_mesh_vertex_count_set(vcount), \ - evas_3d_mesh_frame_add(frame), \ - evas_3d_mesh_index_data_copy_set(EVAS_3D_INDEX_FORMAT_UNSIGNED_SHORT, \ + evas_canvas3d_mesh_vertex_count_set(vcount), \ + evas_canvas3d_mesh_frame_add(frame), \ + evas_canvas3d_mesh_index_data_copy_set(EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_SHORT, \ icount, &indices[0])); \ - _set_vertex_data_from_array(mesh, frame, varray, EVAS_3D_VERTEX_POSITION, \ + _set_vertex_data_from_array(mesh, frame, varray, EVAS_CANVAS3D_VERTEX_POSITION, \ 0, 3, 15, vcount); \ - _set_vertex_data_from_array(mesh, frame, varray, EVAS_3D_VERTEX_NORMAL, \ + _set_vertex_data_from_array(mesh, frame, varray, EVAS_CANVAS3D_VERTEX_NORMAL, \ 3, 3, 15, vcount); \ - _set_vertex_data_from_array(mesh, frame, varray, EVAS_3D_VERTEX_COLOR, \ + _set_vertex_data_from_array(mesh, frame, varray, EVAS_CANVAS3D_VERTEX_COLOR, \ 6, 4, 15, vcount); \ - _set_vertex_data_from_array(mesh, frame, varray, EVAS_3D_VERTEX_TEXCOORD, \ + _set_vertex_data_from_array(mesh, frame, varray, EVAS_CANVAS3D_VERTEX_TEXCOORD, \ 10, 2, 15, vcount); \ - _set_vertex_data_from_array(mesh, frame, varray, EVAS_3D_VERTEX_TANGENT, \ + _set_vertex_data_from_array(mesh, frame, varray, EVAS_CANVAS3D_VERTEX_TANGENT, \ 12, 3, 15, vcount); void _generate_indices(unsigned short *indices, int count, int width); -void _set_vec3_vertex_data(Evas_3D_Mesh *mesh, int frame, int vcount, Evas_Vec3 *data, Evas_3D_Vertex_Attrib attr); -void _set_vec2_vertex_data(Evas_3D_Mesh *mesh, int frame, int vcount, Evas_Vec2 *data, Evas_3D_Vertex_Attrib attr); -void _set_vertex_data_from_array(Evas_3D_Mesh *mesh, int frame, const float *data, Evas_3D_Vertex_Attrib attr, int start, int attr_count, int line, int vcount); +void _set_vec3_vertex_data(Evas_Canvas3D_Mesh *mesh, int frame, int vcount, Evas_Vec3 *data, Evas_Canvas3D_Vertex_Attrib attr); +void _set_vec2_vertex_data(Evas_Canvas3D_Mesh *mesh, int frame, int vcount, Evas_Vec2 *data, Evas_Canvas3D_Vertex_Attrib attr); +void _set_vertex_data_from_array(Evas_Canvas3D_Mesh *mesh, int frame, const float *data, Evas_Canvas3D_Vertex_Attrib attr, int start, int attr_count, int line, int vcount); void _primitives_vec3_copy(Evas_Vec3 *dst, const Evas_Vec3 *src); void _primitives_vec3_subtract(Evas_Vec3 *out, const Evas_Vec3 *a, const Evas_Vec3 *b); diff --git a/src/lib/evas/common3d/primitives/solids_of_revolution/cone.c b/src/lib/evas/common3d/primitives/solids_of_revolution/cone.c index 2b62f287c0..9a48c2a8df 100644 --- a/src/lib/evas/common3d/primitives/solids_of_revolution/cone.c +++ b/src/lib/evas/common3d/primitives/solids_of_revolution/cone.c @@ -1,7 +1,7 @@ #include "../primitive_common.h" void -_set_default_cone(Evas_3D_Mesh *mesh, +_set_default_cone(Evas_Canvas3D_Mesh *mesh, int frame, int p, Evas_Vec2 tex_scale) @@ -63,7 +63,7 @@ _set_default_cone(Evas_3D_Mesh *mesh, } void -_set_cone_without_base(Evas_3D_Mesh *mesh, +_set_cone_without_base(Evas_Canvas3D_Mesh *mesh, int frame, int p, Evas_Vec2 tex_scale) @@ -113,21 +113,21 @@ _set_cone_without_base(Evas_3D_Mesh *mesh, } void -evas_model_set_from_cone_primitive(Evas_3D_Mesh *mesh, +evas_model_set_from_cone_primitive(Evas_Canvas3D_Mesh *mesh, int frame, - Evas_3D_Primitive_Mode mode, + Evas_Canvas3D_Primitive_Mode mode, int p, Evas_Vec2 tex_scale) { switch (mode) { - case EVAS_3D_PRIMITIVE_MODE_DEFAULT: - case EVAS_3D_PRIMITIVE_MODE_ALTERNATIVE_UV: + case EVAS_CANVAS3D_PRIMITIVE_MODE_DEFAULT: + case EVAS_CANVAS3D_PRIMITIVE_MODE_ALTERNATIVE_UV: { _set_default_cone(mesh, frame, p, tex_scale); break; } - case EVAS_3D_PRIMITIVE_MODE_WITHOUT_BASE: + case EVAS_CANVAS3D_PRIMITIVE_MODE_WITHOUT_BASE: { _set_cone_without_base(mesh, frame, p, tex_scale); break; diff --git a/src/lib/evas/common3d/primitives/solids_of_revolution/cylinder.c b/src/lib/evas/common3d/primitives/solids_of_revolution/cylinder.c index dabe6f4989..d990a057d2 100644 --- a/src/lib/evas/common3d/primitives/solids_of_revolution/cylinder.c +++ b/src/lib/evas/common3d/primitives/solids_of_revolution/cylinder.c @@ -1,7 +1,7 @@ #include "../primitive_common.h" void -_set_default_cylinder(Evas_3D_Mesh *mesh, +_set_default_cylinder(Evas_Canvas3D_Mesh *mesh, int frame, int p, Evas_Vec2 tex_scale) @@ -64,7 +64,7 @@ _set_default_cylinder(Evas_3D_Mesh *mesh, } void -_set_cylinder_without_bases(Evas_3D_Mesh *mesh, +_set_cylinder_without_bases(Evas_Canvas3D_Mesh *mesh, int frame, int p, Evas_Vec2 tex_scale) @@ -109,21 +109,21 @@ _set_cylinder_without_bases(Evas_3D_Mesh *mesh, } void -evas_model_set_from_cylinder_primitive(Evas_3D_Mesh *mesh, +evas_model_set_from_cylinder_primitive(Evas_Canvas3D_Mesh *mesh, int frame, - Evas_3D_Primitive_Mode mode, + Evas_Canvas3D_Primitive_Mode mode, int p, Evas_Vec2 tex_scale) { switch (mode) { - case EVAS_3D_PRIMITIVE_MODE_DEFAULT: - case EVAS_3D_PRIMITIVE_MODE_ALTERNATIVE_UV: + case EVAS_CANVAS3D_PRIMITIVE_MODE_DEFAULT: + case EVAS_CANVAS3D_PRIMITIVE_MODE_ALTERNATIVE_UV: { _set_default_cylinder(mesh, frame, p, tex_scale); break; } - case EVAS_3D_PRIMITIVE_MODE_WITHOUT_BASE: + case EVAS_CANVAS3D_PRIMITIVE_MODE_WITHOUT_BASE: { _set_cylinder_without_bases(mesh, frame, p, tex_scale); break; diff --git a/src/lib/evas/common3d/primitives/solids_of_revolution/sphere.c b/src/lib/evas/common3d/primitives/solids_of_revolution/sphere.c index 1a2409b2a5..adbd22aa79 100644 --- a/src/lib/evas/common3d/primitives/solids_of_revolution/sphere.c +++ b/src/lib/evas/common3d/primitives/solids_of_revolution/sphere.c @@ -1,7 +1,7 @@ #include "../primitive_common.h" void -_set_default_sphere(Evas_3D_Mesh *mesh, +_set_default_sphere(Evas_Canvas3D_Mesh *mesh, int frame, int p, Evas_Vec2 tex_scale) @@ -52,7 +52,7 @@ _set_default_sphere(Evas_3D_Mesh *mesh, } void -_set_sphere_with_alternative_uv(Evas_3D_Mesh *mesh, +_set_sphere_with_alternative_uv(Evas_Canvas3D_Mesh *mesh, int frame, int p, Evas_Vec2 tex_scale) @@ -162,21 +162,21 @@ _set_sphere_with_alternative_uv(Evas_3D_Mesh *mesh, } void -evas_model_set_from_sphere_primitive(Evas_3D_Mesh *mesh, +evas_model_set_from_sphere_primitive(Evas_Canvas3D_Mesh *mesh, int frame, - Evas_3D_Primitive_Mode mode, + Evas_Canvas3D_Primitive_Mode mode, int p, Evas_Vec2 tex_scale) { switch (mode) { - case EVAS_3D_PRIMITIVE_MODE_DEFAULT: - case EVAS_3D_PRIMITIVE_MODE_WITHOUT_BASE: + case EVAS_CANVAS3D_PRIMITIVE_MODE_DEFAULT: + case EVAS_CANVAS3D_PRIMITIVE_MODE_WITHOUT_BASE: { _set_default_sphere(mesh, frame, p, tex_scale); break; } - case EVAS_3D_PRIMITIVE_MODE_ALTERNATIVE_UV: + case EVAS_CANVAS3D_PRIMITIVE_MODE_ALTERNATIVE_UV: { _set_sphere_with_alternative_uv(mesh, frame, p, tex_scale); break; diff --git a/src/lib/evas/common3d/primitives/solids_of_revolution/torus.c b/src/lib/evas/common3d/primitives/solids_of_revolution/torus.c index abb76d8c88..91101229fa 100644 --- a/src/lib/evas/common3d/primitives/solids_of_revolution/torus.c +++ b/src/lib/evas/common3d/primitives/solids_of_revolution/torus.c @@ -1,7 +1,7 @@ #include "../primitive_common.h" void -evas_model_set_from_torus_primitive(Evas_3D_Mesh *mesh, +evas_model_set_from_torus_primitive(Evas_Canvas3D_Mesh *mesh, int frame, Evas_Real ratio, int p, diff --git a/src/lib/evas/common3d/primitives/surfaces/surface.c b/src/lib/evas/common3d/primitives/surfaces/surface.c index 7eb1779ebe..8d0bd3fc46 100644 --- a/src/lib/evas/common3d/primitives/surfaces/surface.c +++ b/src/lib/evas/common3d/primitives/surfaces/surface.c @@ -1,6 +1,6 @@ #include "../primitive_common.h" -Evas_Vec3 _get_func_normal(Evas_3D_Surface_Func *func, Evas_Real x, Evas_Real y) +Evas_Vec3 _get_func_normal(Evas_Canvas3D_Surface_Func *func, Evas_Real x, Evas_Real y) { Evas_Vec3 v00, v01, v10, d1, d2, normal; @@ -50,9 +50,9 @@ _normalize(Evas_Vec3 *vertices, Evas_Vec3 *normals, int vcount) } void -evas_model_set_from_surface_primitive(Evas_3D_Mesh *mesh, +evas_model_set_from_surface_primitive(Evas_Canvas3D_Mesh *mesh, int frame, - Evas_3D_Surface_Func func, + Evas_Canvas3D_Surface_Func func, int p, Evas_Vec2 tex_scale) { diff --git a/src/lib/evas/common3d/primitives/surfaces/terrain.c b/src/lib/evas/common3d/primitives/surfaces/terrain.c index 542ed74b0d..a71f94fa22 100644 --- a/src/lib/evas/common3d/primitives/surfaces/terrain.c +++ b/src/lib/evas/common3d/primitives/surfaces/terrain.c @@ -76,7 +76,7 @@ _perlin_terrain(Evas_Real *out_x, } void -evas_model_set_from_terrain_primitive(Evas_3D_Mesh *mesh, +evas_model_set_from_terrain_primitive(Evas_Canvas3D_Mesh *mesh, int frame, int p, Evas_Vec2 tex_scale) diff --git a/src/lib/evas/common3d/primitives/tabulated_primitives/cube.c b/src/lib/evas/common3d/primitives/tabulated_primitives/cube.c index 6f70a02b9d..85d49beaaa 100644 --- a/src/lib/evas/common3d/primitives/tabulated_primitives/cube.c +++ b/src/lib/evas/common3d/primitives/tabulated_primitives/cube.c @@ -51,7 +51,7 @@ const unsigned short indices_of_cube[] = }; void -evas_model_set_from_cube_primitive(Evas_3D_Mesh *mesh, int frame) +evas_model_set_from_cube_primitive(Evas_Canvas3D_Mesh *mesh, int frame) { SET_VERTEX_DATA_FROM_ARRAY(mesh, frame, vertices_of_cube, 24, indices_of_cube, 36) } diff --git a/src/lib/evas/common3d/primitives/tabulated_primitives/square.c b/src/lib/evas/common3d/primitives/tabulated_primitives/square.c index 6f5c0c6f27..e34e2b0dbb 100644 --- a/src/lib/evas/common3d/primitives/tabulated_primitives/square.c +++ b/src/lib/evas/common3d/primitives/tabulated_primitives/square.c @@ -12,7 +12,7 @@ const float vertices_of_square[] = const unsigned short indices_of_square[] = {0, 1, 2, 2, 1, 3}; void -evas_model_set_from_square_primitive(Evas_3D_Mesh *mesh, int frame) +evas_model_set_from_square_primitive(Evas_Canvas3D_Mesh *mesh, int frame) { SET_VERTEX_DATA_FROM_ARRAY(mesh, frame, vertices_of_square, 4, indices_of_square, 6) } diff --git a/src/lib/evas/include/evas_private.h b/src/lib/evas/include/evas_private.h index 967a02aeef..05de77c56c 100644 --- a/src/lib/evas/include/evas_private.h +++ b/src/lib/evas/include/evas_private.h @@ -81,67 +81,67 @@ typedef struct _Evas_Object_Filter_Data Evas_Object_Filter_Data; // 3D stuff -#define EVAS_3D_VERTEX_ATTRIB_COUNT 5 -#define EVAS_3D_MATERIAL_ATTRIB_COUNT 5 - -typedef struct _Evas_3D_Object Evas_3D_Object_Data; -typedef struct _Evas_3D_Scene_Public_Data Evas_3D_Scene_Public_Data; -typedef struct _Evas_3D_Vertex_Buffer Evas_3D_Vertex_Buffer; -typedef struct _Evas_3D_Mesh_Frame Evas_3D_Mesh_Frame; -typedef struct _Evas_3D_Node_Mesh Evas_3D_Node_Mesh; -typedef struct _Evas_3D_Object_Func Evas_3D_Object_Func; -typedef struct _Evas_3D_Pick_Data Evas_3D_Pick_Data; -typedef struct _Evas_3D_Interpolate_Vertex_Buffer Evas_3D_Interpolate_Vertex_Buffer; - -typedef struct _Evas_3D_Scene Evas_3D_Scene_Data; -typedef struct _Evas_3D_Node Evas_3D_Node_Data; -typedef struct _Evas_3D_Mesh Evas_3D_Mesh_Data; -typedef struct _Evas_3D_Camera Evas_3D_Camera_Data; -typedef struct _Evas_3D_Light Evas_3D_Light_Data; -typedef struct _Evas_3D_Material Evas_3D_Material_Data; -typedef struct _Evas_3D_Texture Evas_3D_Texture_Data; -typedef struct _Evas_3D_Primitive Evas_3D_Primitive_Data; +#define EVAS_CANVAS3D_VERTEX_ATTRIB_COUNT 5 +#define EVAS_CANVAS3D_MATERIAL_ATTRIB_COUNT 5 + +typedef struct _Evas_Canvas3D_Object Evas_Canvas3D_Object_Data; +typedef struct _Evas_Canvas3D_Scene_Public_Data Evas_Canvas3D_Scene_Public_Data; +typedef struct _Evas_Canvas3D_Vertex_Buffer Evas_Canvas3D_Vertex_Buffer; +typedef struct _Evas_Canvas3D_Mesh_Frame Evas_Canvas3D_Mesh_Frame; +typedef struct _Evas_Canvas3D_Node_Mesh Evas_Canvas3D_Node_Mesh; +typedef struct _Evas_Canvas3D_Object_Func Evas_Canvas3D_Object_Func; +typedef struct _Evas_Canvas3D_Pick_Data Evas_Canvas3D_Pick_Data; +typedef struct _Evas_Canvas3D_Interpolate_Vertex_Buffer Evas_Canvas3D_Interpolate_Vertex_Buffer; + +typedef struct _Evas_Canvas3D_Scene Evas_Canvas3D_Scene_Data; +typedef struct _Evas_Canvas3D_Node Evas_Canvas3D_Node_Data; +typedef struct _Evas_Canvas3D_Mesh Evas_Canvas3D_Mesh_Data; +typedef struct _Evas_Canvas3D_Camera Evas_Canvas3D_Camera_Data; +typedef struct _Evas_Canvas3D_Light Evas_Canvas3D_Light_Data; +typedef struct _Evas_Canvas3D_Material Evas_Canvas3D_Material_Data; +typedef struct _Evas_Canvas3D_Texture Evas_Canvas3D_Texture_Data; +typedef struct _Evas_Canvas3D_Primitive Evas_Canvas3D_Primitive_Data; /* Structs for mesh eet saver/loader */ -typedef struct _Evas_3D_Vec2_Eet Evas_3D_Vec2_Eet; -typedef struct _Evas_3D_Vec3_Eet Evas_3D_Vec3_Eet; -typedef struct _Evas_3D_Vertex_Eet Evas_3D_Vertex_Eet; -typedef struct _Evas_3D_Geometry_Eet Evas_3D_Geometry_Eet; -typedef struct _Evas_3D_Color_Eet Evas_3D_Color_Eet; -typedef struct _Evas_3D_Material_Eet Evas_3D_Material_Eet; -typedef struct _Evas_3D_Frame_Eet Evas_3D_Frame_Eet; -typedef struct _Evas_3D_Mesh_Eet Evas_3D_Mesh_Eet; -typedef struct _Evas_3D_Header_Eet Evas_3D_Header_Eet; -typedef struct _Evas_3D_File_Eet Evas_3D_File_Eet; - -struct _Evas_3D_Vec2_Eet +typedef struct _Evas_Canvas3D_Vec2_Eet Evas_Canvas3D_Vec2_Eet; +typedef struct _Evas_Canvas3D_Vec3_Eet Evas_Canvas3D_Vec3_Eet; +typedef struct _Evas_Canvas3D_Vertex_Eet Evas_Canvas3D_Vertex_Eet; +typedef struct _Evas_Canvas3D_Geometry_Eet Evas_Canvas3D_Geometry_Eet; +typedef struct _Evas_Canvas3D_Color_Eet Evas_Canvas3D_Color_Eet; +typedef struct _Evas_Canvas3D_Material_Eet Evas_Canvas3D_Material_Eet; +typedef struct _Evas_Canvas3D_Frame_Eet Evas_Canvas3D_Frame_Eet; +typedef struct _Evas_Canvas3D_Mesh_Eet Evas_Canvas3D_Mesh_Eet; +typedef struct _Evas_Canvas3D_Header_Eet Evas_Canvas3D_Header_Eet; +typedef struct _Evas_Canvas3D_File_Eet Evas_Canvas3D_File_Eet; + +struct _Evas_Canvas3D_Vec2_Eet { float x; float y; }; -struct _Evas_3D_Vec3_Eet +struct _Evas_Canvas3D_Vec3_Eet { float x; float y; float z; }; -struct _Evas_3D_Vertex_Eet +struct _Evas_Canvas3D_Vertex_Eet { - Evas_3D_Vec3_Eet position; - Evas_3D_Vec3_Eet normal; - Evas_3D_Vec2_Eet texcoord; + Evas_Canvas3D_Vec3_Eet position; + Evas_Canvas3D_Vec3_Eet normal; + Evas_Canvas3D_Vec2_Eet texcoord; };//one point of mesh -struct _Evas_3D_Geometry_Eet +struct _Evas_Canvas3D_Geometry_Eet { unsigned int id; int vertices_count; - Evas_3D_Vertex_Eet *vertices; -};//contain array of vertices and id for using in Evas_3D_Frame_Eet in future + Evas_Canvas3D_Vertex_Eet *vertices; +};//contain array of vertices and id for using in Evas_Canvas3D_Frame_Eet in future -struct _Evas_3D_Color_Eet +struct _Evas_Canvas3D_Color_Eet { float r; float g; @@ -149,32 +149,32 @@ struct _Evas_3D_Color_Eet float a; }; -struct _Evas_3D_Material_Eet +struct _Evas_Canvas3D_Material_Eet { int id; float shininess; int colors_count; - Evas_3D_Color_Eet *colors;//Color per attribute (ambient, diffuse, specular etc.) + Evas_Canvas3D_Color_Eet *colors;//Color per attribute (ambient, diffuse, specular etc.) }; -struct _Evas_3D_Frame_Eet +struct _Evas_Canvas3D_Frame_Eet { int id; int geometry_id; int material_id; };//only ids to prevent of spending of memory when animation will change only geometry or only material -struct _Evas_3D_Mesh_Eet +struct _Evas_Canvas3D_Mesh_Eet { int materials_count; int frames_count; int geometries_count; - Evas_3D_Material_Eet *materials; - Evas_3D_Frame_Eet *frames; - Evas_3D_Geometry_Eet *geometries; + Evas_Canvas3D_Material_Eet *materials; + Evas_Canvas3D_Frame_Eet *frames; + Evas_Canvas3D_Geometry_Eet *geometries; };//contain materials, geometries and bounding between it (frames) -struct _Evas_3D_Header_Eet +struct _Evas_Canvas3D_Header_Eet { int version; int *materials;//colors_count @@ -184,42 +184,42 @@ struct _Evas_3D_Header_Eet int frames; };//can be use for fast allocating of memory -struct _Evas_3D_File_Eet +struct _Evas_Canvas3D_File_Eet { - Evas_3D_Mesh_Eet *mesh; - Evas_3D_Header_Eet *header; + Evas_Canvas3D_Mesh_Eet *mesh; + Evas_Canvas3D_Header_Eet *header; };//contain mesh data and information about mesh size -typedef Eina_Bool (*Evas_3D_Node_Func)(Evas_3D_Node *, void *data); +typedef Eina_Bool (*Evas_Canvas3D_Node_Func)(Evas_Canvas3D_Node *, void *data); -typedef enum _Evas_3D_Node_Traverse_Type +typedef enum _Evas_Canvas3D_Node_Traverse_Type { - EVAS_3D_NODE_TRAVERSE_DOWNWARD, - EVAS_3D_NODE_TRAVERSE_UPWARD, -} Evas_3D_Node_Traverse_Type; + EVAS_CANVAS3D_NODE_TRAVERSE_DOWNWARD, + EVAS_CANVAS3D_NODE_TRAVERSE_UPWARD, +} Evas_Canvas3D_Node_Traverse_Type; -typedef enum _Evas_3D_Tree_Traverse_Type +typedef enum _Evas_Canvas3D_Tree_Traverse_Type { - EVAS_3D_TREE_TRAVERSE_PRE_ORDER, - EVAS_3D_TREE_TRAVERSE_ANY_ORDER = EVAS_3D_TREE_TRAVERSE_PRE_ORDER, - EVAS_3D_TREE_TRAVERSE_POST_ORDER, - EVAS_3D_TREE_TRAVERSE_LEVEL_ORDER, -} Evas_3D_Tree_Traverse_Type; + EVAS_CANVAS3D_TREE_TRAVERSE_PRE_ORDER, + EVAS_CANVAS3D_TREE_TRAVERSE_ANY_ORDER = EVAS_CANVAS3D_TREE_TRAVERSE_PRE_ORDER, + EVAS_CANVAS3D_TREE_TRAVERSE_POST_ORDER, + EVAS_CANVAS3D_TREE_TRAVERSE_LEVEL_ORDER, +} Evas_Canvas3D_Tree_Traverse_Type; -struct _Evas_3D_Object +struct _Evas_Canvas3D_Object { Evas *evas; - Evas_3D_Object_Type type; + Evas_Canvas3D_Object_Type type; - Eina_Bool dirty[EVAS_3D_STATE_MAX]; + Eina_Bool dirty[EVAS_CANVAS3D_STATE_MAX]; }; -struct _Evas_3D_Scene +struct _Evas_Canvas3D_Scene { - Evas_3D_Node *root_node; - Evas_3D_Node *camera_node; + Evas_Canvas3D_Node *root_node; + Evas_Canvas3D_Node *camera_node; Evas_Color bg_color; Eina_Bool shadows_enabled :1; Eina_Bool color_pick_enabled :1; @@ -232,18 +232,18 @@ struct _Evas_3D_Scene Eina_Hash *colors_node_mesh; }; -struct _Evas_3D_Node_Mesh +struct _Evas_Canvas3D_Node_Mesh { - Evas_3D_Node *node; - Evas_3D_Mesh *mesh; + Evas_Canvas3D_Node *node; + Evas_Canvas3D_Mesh *mesh; int frame; }; -struct _Evas_3D_Node +struct _Evas_Canvas3D_Node { Eina_List *members; - Evas_3D_Node *parent; - Evas_3D_Node *billboard_target; + Evas_Canvas3D_Node *parent; + Evas_Canvas3D_Node *billboard_target; Evas_Vec3 position; Evas_Vec4 orientation; @@ -260,17 +260,17 @@ struct _Evas_3D_Node Evas_Box3 local_obb; Evas_Sphere local_bsphere; - Evas_3D_Node_Type type; + Evas_Canvas3D_Node_Type type; /* Camera node. */ union { struct { - Evas_3D_Camera *camera; + Evas_Canvas3D_Camera *camera; Evas_Mat4 matrix_world_to_eye; } camera; struct { - Evas_3D_Light *light; + Evas_Canvas3D_Light *light; Evas_Mat4 matrix_local_to_world; } light; @@ -292,13 +292,13 @@ struct _Evas_3D_Node Eina_Bool scale_inherit : 1; }; -struct _Evas_3D_Camera +struct _Evas_Canvas3D_Camera { Evas_Mat4 projection; Eina_Hash *nodes; }; -struct _Evas_3D_Light +struct _Evas_Canvas3D_Light { Evas_Color ambient; Evas_Color diffuse; @@ -318,7 +318,7 @@ struct _Evas_3D_Light Eina_Hash *nodes; }; -struct _Evas_3D_Vertex_Buffer +struct _Evas_Canvas3D_Vertex_Buffer { int element_count; int stride; @@ -328,7 +328,7 @@ struct _Evas_3D_Vertex_Buffer Eina_Bool mapped; }; -struct _Evas_3D_Interpolate_Vertex_Buffer +struct _Evas_Canvas3D_Interpolate_Vertex_Buffer { void *data0; int stride0; @@ -341,42 +341,42 @@ struct _Evas_3D_Interpolate_Vertex_Buffer Evas_Real weight; }; -struct _Evas_3D_Mesh_Frame +struct _Evas_Canvas3D_Mesh_Frame { - Evas_3D_Mesh *mesh; + Evas_Canvas3D_Mesh *mesh; int frame; - Evas_3D_Material *material; + Evas_Canvas3D_Material *material; Evas_Box3 aabb; - Evas_3D_Vertex_Buffer vertices[EVAS_3D_VERTEX_ATTRIB_COUNT]; + Evas_Canvas3D_Vertex_Buffer vertices[EVAS_CANVAS3D_VERTEX_ATTRIB_COUNT]; }; -struct _Evas_3D_Mesh +struct _Evas_Canvas3D_Mesh { - Evas_3D_Shade_Mode shade_mode; + Evas_Canvas3D_Shade_Mode shade_mode; int vertex_count; int frame_count; Eina_List *frames; - Evas_3D_Index_Format index_format; + Evas_Canvas3D_Index_Format index_format; int index_count; void *indices; int index_size; Eina_Bool owns_indices; Eina_Bool index_mapped; - Evas_3D_Vertex_Assembly assembly; + Evas_Canvas3D_Vertex_Assembly assembly; Eina_Hash *nodes; Eina_Bool shadowed; Eina_Bool blending :1; - Evas_3D_Blend_Func blend_sfactor; - Evas_3D_Blend_Func blend_dfactor; + Evas_Canvas3D_Blend_Func blend_sfactor; + Evas_Canvas3D_Blend_Func blend_dfactor; - Evas_3D_Comparison alpha_comparison; + Evas_Canvas3D_Comparison alpha_comparison; Evas_Real alpha_ref_value; Eina_Bool alpha_test_enabled :1; @@ -390,7 +390,7 @@ struct _Evas_3D_Mesh Eina_Bool color_pick_enabled :1; }; -struct _Evas_3D_Texture +struct _Evas_Canvas3D_Texture { /* List of materials using this texture. */ Eina_Hash *materials; @@ -406,34 +406,34 @@ struct _Evas_3D_Texture Eina_Bool atlas_enable :1; }; -struct _Evas_3D_Material +struct _Evas_Canvas3D_Material { struct { Eina_Bool enable; Evas_Color color; - Evas_3D_Texture *texture; - } attribs[EVAS_3D_MATERIAL_ATTRIB_COUNT]; + Evas_Canvas3D_Texture *texture; + } attribs[EVAS_CANVAS3D_MATERIAL_ATTRIB_COUNT]; Evas_Real shininess; Eina_Hash *meshes; }; -struct _Evas_3D_Primitive +struct _Evas_Canvas3D_Primitive { - Evas_3D_Mesh_Primitive form; - Evas_3D_Primitive_Mode mode; + Evas_Canvas3D_Mesh_Primitive form; + Evas_Canvas3D_Primitive_Mode mode; Evas_Real ratio; int precision; - Evas_3D_Surface_Func *surface; + Evas_Canvas3D_Surface_Func *surface; Evas_Vec2 tex_scale; }; -struct _Evas_3D_Scene_Public_Data +struct _Evas_Canvas3D_Scene_Public_Data { Evas_Color bg_color; - Evas_3D_Node *camera_node; + Evas_Canvas3D_Node *camera_node; Eina_List *light_nodes; Eina_List *mesh_nodes; Eina_Bool shadows_enabled :1; @@ -443,7 +443,7 @@ struct _Evas_3D_Scene_Public_Data Eina_Hash *colors_node_mesh; }; -struct _Evas_3D_Pick_Data +struct _Evas_Canvas3D_Pick_Data { /* Input */ Evas_Real x, y; @@ -453,8 +453,8 @@ struct _Evas_3D_Pick_Data /* Output */ Eina_Bool picked; Evas_Real z; - Evas_3D_Node *node; - Evas_3D_Mesh *mesh; + Evas_Canvas3D_Node *node; + Evas_Canvas3D_Mesh *mesh; Evas_Real u, v; Evas_Real s, t; }; @@ -1416,10 +1416,10 @@ struct _Evas_Func void *(*texture_new) (void *data, Eina_Bool use_atlas); void (*texture_free) (void *data, void *texture); void (*texture_size_get) (void *data, void *texture, int *w, int *h); - void (*texture_wrap_set) (void *data, void *texture, Evas_3D_Wrap_Mode s, Evas_3D_Wrap_Mode t); - void (*texture_wrap_get) (void *data, void *texture, Evas_3D_Wrap_Mode *s, Evas_3D_Wrap_Mode *t); - void (*texture_filter_set) (void *data, void *texture, Evas_3D_Texture_Filter min, Evas_3D_Texture_Filter mag); - void (*texture_filter_get) (void *data, void *texture, Evas_3D_Texture_Filter *min, Evas_3D_Texture_Filter *mag); + void (*texture_wrap_set) (void *data, void *texture, Evas_Canvas3D_Wrap_Mode s, Evas_Canvas3D_Wrap_Mode t); + void (*texture_wrap_get) (void *data, void *texture, Evas_Canvas3D_Wrap_Mode *s, Evas_Canvas3D_Wrap_Mode *t); + void (*texture_filter_set) (void *data, void *texture, Evas_Canvas3D_Texture_Filter min, Evas_Canvas3D_Texture_Filter mag); + void (*texture_filter_get) (void *data, void *texture, Evas_Canvas3D_Texture_Filter *min, Evas_Canvas3D_Texture_Filter *mag); void (*texture_image_set) (void *data, void *texture, void *image); void *(*texture_image_get) (void *data, void *texture); @@ -1709,79 +1709,79 @@ void _canvas_smart_objects_calculate(Eo *e, void *_pd, va_list *list); void _canvas_smart_objects_calculate_count_get(Eo *e, void *_pd, va_list *list); /* Node functions. */ -void evas_3d_node_traverse(Evas_3D_Node *from, Evas_3D_Node *to, Evas_3D_Node_Traverse_Type type, Eina_Bool skip, Evas_3D_Node_Func func, void *data); -void evas_3d_node_tree_traverse(Evas_3D_Node *root, Evas_3D_Tree_Traverse_Type type, Eina_Bool skip, Evas_3D_Node_Func func, void *data); -Eina_Bool evas_3d_node_mesh_collect(Evas_3D_Node *node, void *data); -Eina_Bool evas_3d_node_color_node_mesh_collect(Evas_3D_Node *node, void *data); -Eina_Bool evas_3d_node_light_collect(Evas_3D_Node *node, void *data); -void evas_3d_node_scene_root_add(Evas_3D_Node *node, Evas_3D_Scene *scene); -void evas_3d_node_scene_root_del(Evas_3D_Node *node, Evas_3D_Scene *scene); -void evas_3d_node_scene_camera_add(Evas_3D_Node *node, Evas_3D_Scene *scene); -void evas_3d_node_scene_camera_del(Evas_3D_Node *node, Evas_3D_Scene *scene); +void evas_canvas3d_node_traverse(Evas_Canvas3D_Node *from, Evas_Canvas3D_Node *to, Evas_Canvas3D_Node_Traverse_Type type, Eina_Bool skip, Evas_Canvas3D_Node_Func func, void *data); +void evas_canvas3d_node_tree_traverse(Evas_Canvas3D_Node *root, Evas_Canvas3D_Tree_Traverse_Type type, Eina_Bool skip, Evas_Canvas3D_Node_Func func, void *data); +Eina_Bool evas_canvas3d_node_mesh_collect(Evas_Canvas3D_Node *node, void *data); +Eina_Bool evas_canvas3d_node_color_node_mesh_collect(Evas_Canvas3D_Node *node, void *data); +Eina_Bool evas_canvas3d_node_light_collect(Evas_Canvas3D_Node *node, void *data); +void evas_canvas3d_node_scene_root_add(Evas_Canvas3D_Node *node, Evas_Canvas3D_Scene *scene); +void evas_canvas3d_node_scene_root_del(Evas_Canvas3D_Node *node, Evas_Canvas3D_Scene *scene); +void evas_canvas3d_node_scene_camera_add(Evas_Canvas3D_Node *node, Evas_Canvas3D_Scene *scene); +void evas_canvas3d_node_scene_camera_del(Evas_Canvas3D_Node *node, Evas_Canvas3D_Scene *scene); /* Camera functions. */ -void evas_3d_camera_node_add(Evas_3D_Camera *camera, Evas_3D_Node *node); -void evas_3d_camera_node_del(Evas_3D_Camera *camera, Evas_3D_Node *node); +void evas_canvas3d_camera_node_add(Evas_Canvas3D_Camera *camera, Evas_Canvas3D_Node *node); +void evas_canvas3d_camera_node_del(Evas_Canvas3D_Camera *camera, Evas_Canvas3D_Node *node); /* Light functions. */ -void evas_3d_light_node_add(Evas_3D_Light *light, Evas_3D_Node *node); -void evas_3d_light_node_del(Evas_3D_Light *light, Evas_3D_Node *node); +void evas_canvas3d_light_node_add(Evas_Canvas3D_Light *light, Evas_Canvas3D_Node *node); +void evas_canvas3d_light_node_del(Evas_Canvas3D_Light *light, Evas_Canvas3D_Node *node); /* Mesh functions. */ -void evas_3d_mesh_node_add(Evas_3D_Mesh *mesh, Evas_3D_Node *node); -void evas_3d_mesh_node_del(Evas_3D_Mesh *mesh, Evas_3D_Node *node); -void evas_3d_mesh_interpolate_position_get(Evas_Vec3 *out, const Evas_3D_Vertex_Buffer *pos0, const Evas_3D_Vertex_Buffer *pos1, Evas_Real weight, int index); -void evas_3d_mesh_interpolate_vertex_buffer_get(Evas_3D_Mesh *mesh, int frame, Evas_3D_Vertex_Attrib attrib, Evas_3D_Vertex_Buffer *buffer0, Evas_3D_Vertex_Buffer *buffer1, Evas_Real *weight); -void evas_3d_mesh_file_md2_set(Evas_3D_Mesh *mesh, const char *file); -void evas_3d_mesh_save_obj(Evas_3D_Mesh *mesh, const char *file, Evas_3D_Mesh_Frame *f); -void evas_3d_mesh_file_obj_set(Evas_3D_Mesh *mesh, const char *file); -Eina_Bool evas_3d_mesh_aabb_add_to_frame(Evas_3D_Mesh_Data *pd, int frame, int stride); -void evas_3d_mesh_file_eet_set(Evas_3D_Mesh *mesh, const char *file); -void evas_3d_mesh_save_eet(Evas_3D_Mesh *mesh, const char *file, Evas_3D_Mesh_Frame *f); -void evas_3d_mesh_file_ply_set(Evas_3D_Mesh *mesh, const char *file); -void evas_3d_mesh_save_ply(Evas_3D_Mesh *mesh, const char *file, Evas_3D_Mesh_Frame *f); +void evas_canvas3d_mesh_node_add(Evas_Canvas3D_Mesh *mesh, Evas_Canvas3D_Node *node); +void evas_canvas3d_mesh_node_del(Evas_Canvas3D_Mesh *mesh, Evas_Canvas3D_Node *node); +void evas_canvas3d_mesh_interpolate_position_get(Evas_Vec3 *out, const Evas_Canvas3D_Vertex_Buffer *pos0, const Evas_Canvas3D_Vertex_Buffer *pos1, Evas_Real weight, int index); +void evas_canvas3d_mesh_interpolate_vertex_buffer_get(Evas_Canvas3D_Mesh *mesh, int frame, Evas_Canvas3D_Vertex_Attrib attrib, Evas_Canvas3D_Vertex_Buffer *buffer0, Evas_Canvas3D_Vertex_Buffer *buffer1, Evas_Real *weight); +void evas_canvas3d_mesh_file_md2_set(Evas_Canvas3D_Mesh *mesh, const char *file); +void evas_canvas3d_mesh_save_obj(Evas_Canvas3D_Mesh *mesh, const char *file, Evas_Canvas3D_Mesh_Frame *f); +void evas_canvas3d_mesh_file_obj_set(Evas_Canvas3D_Mesh *mesh, const char *file); +Eina_Bool evas_canvas3d_mesh_aabb_add_to_frame(Evas_Canvas3D_Mesh_Data *pd, int frame, int stride); +void evas_canvas3d_mesh_file_eet_set(Evas_Canvas3D_Mesh *mesh, const char *file); +void evas_canvas3d_mesh_save_eet(Evas_Canvas3D_Mesh *mesh, const char *file, Evas_Canvas3D_Mesh_Frame *f); +void evas_canvas3d_mesh_file_ply_set(Evas_Canvas3D_Mesh *mesh, const char *file); +void evas_canvas3d_mesh_save_ply(Evas_Canvas3D_Mesh *mesh, const char *file, Evas_Canvas3D_Mesh_Frame *f); /* Texture functions. */ -void evas_3d_texture_material_add(Evas_3D_Texture *texture, Evas_3D_Material *material); -void evas_3d_texture_material_del(Evas_3D_Texture *texture, Evas_3D_Material *material); +void evas_canvas3d_texture_material_add(Evas_Canvas3D_Texture *texture, Evas_Canvas3D_Material *material); +void evas_canvas3d_texture_material_del(Evas_Canvas3D_Texture *texture, Evas_Canvas3D_Material *material); /* Material functions. */ -void evas_3d_material_mesh_add(Evas_3D_Material *material, Evas_3D_Mesh *mesh); -void evas_3d_material_mesh_del(Evas_3D_Material *material, Evas_3D_Mesh *mesh); +void evas_canvas3d_material_mesh_add(Evas_Canvas3D_Material *material, Evas_Canvas3D_Mesh *mesh); +void evas_canvas3d_material_mesh_del(Evas_Canvas3D_Material *material, Evas_Canvas3D_Mesh *mesh); /* Scene functions. */ -void evas_3d_scene_data_init(Evas_3D_Scene_Public_Data *data); -void evas_3d_scene_data_fini(Evas_3D_Scene_Public_Data *data); +void evas_canvas3d_scene_data_init(Evas_Canvas3D_Scene_Public_Data *data); +void evas_canvas3d_scene_data_fini(Evas_Canvas3D_Scene_Public_Data *data); /* Eet saver/loader functions */ -Evas_3D_File_Eet *_evas_3d_eet_file_new(void); -void _evas_3d_eet_file_init(void); -void _evas_3d_eet_descriptor_shutdown(void); -void _evas_3d_eet_file_free(void); +Evas_Canvas3D_File_Eet *_evas_canvas3d_eet_file_new(void); +void _evas_canvas3d_eet_file_init(void); +void _evas_canvas3d_eet_descriptor_shutdown(void); +void _evas_canvas3d_eet_file_free(void); /* Temporary save/load functions */ -void evas_common_load_model_from_file(Evas_3D_Mesh *model, const char *file); -void evas_common_load_model_from_eina_file(Evas_3D_Mesh *model, const Eina_File *file); -void evas_common_save_model_to_file(Evas_3D_Mesh *model, const char *file, Evas_3D_Mesh_Frame *f); -void evas_model_load_file_eet(Evas_3D_Mesh *mesh, Eina_File *file); -void evas_model_load_file_md2(Evas_3D_Mesh *mesh, Eina_File *file); -void evas_model_load_file_obj(Evas_3D_Mesh *mesh, Eina_File *file); -void evas_model_load_file_ply(Evas_3D_Mesh *mesh, Eina_File *file); -void evas_model_save_file_eet(Evas_3D_Mesh *mesh, const char *file, Evas_3D_Mesh_Frame *f); -void evas_model_save_file_obj(Evas_3D_Mesh *mesh, const char *file, Evas_3D_Mesh_Frame *f); -void evas_model_save_file_ply(Evas_3D_Mesh *mesh, const char *file, Evas_3D_Mesh_Frame *f); +void evas_common_load_model_from_file(Evas_Canvas3D_Mesh *model, const char *file); +void evas_common_load_model_from_eina_file(Evas_Canvas3D_Mesh *model, const Eina_File *file); +void evas_common_save_model_to_file(Evas_Canvas3D_Mesh *model, const char *file, Evas_Canvas3D_Mesh_Frame *f); +void evas_model_load_file_eet(Evas_Canvas3D_Mesh *mesh, Eina_File *file); +void evas_model_load_file_md2(Evas_Canvas3D_Mesh *mesh, Eina_File *file); +void evas_model_load_file_obj(Evas_Canvas3D_Mesh *mesh, Eina_File *file); +void evas_model_load_file_ply(Evas_Canvas3D_Mesh *mesh, Eina_File *file); +void evas_model_save_file_eet(Evas_Canvas3D_Mesh *mesh, const char *file, Evas_Canvas3D_Mesh_Frame *f); +void evas_model_save_file_obj(Evas_Canvas3D_Mesh *mesh, const char *file, Evas_Canvas3D_Mesh_Frame *f); +void evas_model_save_file_ply(Evas_Canvas3D_Mesh *mesh, const char *file, Evas_Canvas3D_Mesh_Frame *f); /* Primitives functions */ -void evas_common_set_model_from_primitive(Evas_3D_Mesh *model, int frame, Evas_3D_Primitive_Data *primitive); -void evas_model_set_from_square_primitive(Evas_3D_Mesh *mesh, int frame); -void evas_model_set_from_cube_primitive(Evas_3D_Mesh *mesh, int frame); -void evas_model_set_from_cylinder_primitive(Evas_3D_Mesh *mesh, int frame, Evas_3D_Primitive_Mode mode, int precision, Evas_Vec2 tex_scale); -void evas_model_set_from_cone_primitive(Evas_3D_Mesh *mesh, int frame, Evas_3D_Primitive_Mode mode, int precision, Evas_Vec2 tex_scale); -void evas_model_set_from_sphere_primitive(Evas_3D_Mesh *mesh, int frame, Evas_3D_Primitive_Mode mode, int precision, Evas_Vec2 tex_scale); -void evas_model_set_from_torus_primitive(Evas_3D_Mesh *mesh, int frame, Evas_Real ratio, int precision, Evas_Vec2 tex_scale); -void evas_model_set_from_surface_primitive(Evas_3D_Mesh *mesh, int frame, Evas_3D_Surface_Func func, int precision, Evas_Vec2 tex_scale); -void evas_model_set_from_terrain_primitive(Evas_3D_Mesh *mesh, int frame, int precision, Evas_Vec2 tex_scale); +void evas_common_set_model_from_primitive(Evas_Canvas3D_Mesh *model, int frame, Evas_Canvas3D_Primitive_Data *primitive); +void evas_model_set_from_square_primitive(Evas_Canvas3D_Mesh *mesh, int frame); +void evas_model_set_from_cube_primitive(Evas_Canvas3D_Mesh *mesh, int frame); +void evas_model_set_from_cylinder_primitive(Evas_Canvas3D_Mesh *mesh, int frame, Evas_Canvas3D_Primitive_Mode mode, int precision, Evas_Vec2 tex_scale); +void evas_model_set_from_cone_primitive(Evas_Canvas3D_Mesh *mesh, int frame, Evas_Canvas3D_Primitive_Mode mode, int precision, Evas_Vec2 tex_scale); +void evas_model_set_from_sphere_primitive(Evas_Canvas3D_Mesh *mesh, int frame, Evas_Canvas3D_Primitive_Mode mode, int precision, Evas_Vec2 tex_scale); +void evas_model_set_from_torus_primitive(Evas_Canvas3D_Mesh *mesh, int frame, Evas_Real ratio, int precision, Evas_Vec2 tex_scale); +void evas_model_set_from_surface_primitive(Evas_Canvas3D_Mesh *mesh, int frame, Evas_Canvas3D_Surface_Func func, int precision, Evas_Vec2 tex_scale); +void evas_model_set_from_terrain_primitive(Evas_Canvas3D_Mesh *mesh, int frame, int precision, Evas_Vec2 tex_scale); extern int _evas_alloc_error; extern int _evas_event_counter; diff --git a/src/modules/evas/engines/gl_common/evas_gl_3d.c b/src/modules/evas/engines/gl_common/evas_gl_3d.c index 066261250d..da8385302e 100644 --- a/src/modules/evas/engines/gl_common/evas_gl_3d.c +++ b/src/modules/evas/engines/gl_common/evas_gl_3d.c @@ -11,8 +11,8 @@ it = eina_hash_iterator_data_new(pd_mesh_node->data.mesh.node_meshes); \ while (eina_iterator_next(it, &ptr)) \ { \ - Evas_3D_Node_Mesh *nm = (Evas_3D_Node_Mesh *)ptr; \ - Evas_3D_Mesh_Data *pdmesh = eo_data_scope_get(nm->mesh, EVAS_3D_MESH_CLASS); + Evas_Canvas3D_Node_Mesh *nm = (Evas_Canvas3D_Node_Mesh *)ptr; \ + Evas_Canvas3D_Mesh_Data *pdmesh = eo_data_scope_get(nm->mesh, EVAS_CANVAS3D_MESH_CLASS); #define RENDER_MESH_NODE_ITERATE_END \ } \ @@ -128,15 +128,15 @@ e3d_texture_get(E3D_Texture *texture) } static inline GLenum -_to_gl_texture_wrap(Evas_3D_Wrap_Mode wrap) +_to_gl_texture_wrap(Evas_Canvas3D_Wrap_Mode wrap) { switch (wrap) { - case EVAS_3D_WRAP_MODE_CLAMP: + case EVAS_CANVAS3D_WRAP_MODE_CLAMP: return GL_CLAMP_TO_EDGE; - case EVAS_3D_WRAP_MODE_REFLECT: + case EVAS_CANVAS3D_WRAP_MODE_REFLECT: return GL_MIRRORED_REPEAT; - case EVAS_3D_WRAP_MODE_REPEAT: + case EVAS_CANVAS3D_WRAP_MODE_REPEAT: return GL_REPEAT; default: break; @@ -146,41 +146,41 @@ _to_gl_texture_wrap(Evas_3D_Wrap_Mode wrap) return GL_CLAMP_TO_EDGE; } -static inline Evas_3D_Wrap_Mode +static inline Evas_Canvas3D_Wrap_Mode _to_e3d_texture_wrap(GLenum wrap) { switch (wrap) { case GL_CLAMP_TO_EDGE: - return EVAS_3D_WRAP_MODE_CLAMP; + return EVAS_CANVAS3D_WRAP_MODE_CLAMP; case GL_MIRRORED_REPEAT: - return EVAS_3D_WRAP_MODE_REFLECT; + return EVAS_CANVAS3D_WRAP_MODE_REFLECT; case GL_REPEAT: - return EVAS_3D_WRAP_MODE_REPEAT; + return EVAS_CANVAS3D_WRAP_MODE_REPEAT; default: break; } ERR("Invalid texture wrap mode."); - return EVAS_3D_WRAP_MODE_CLAMP; + return EVAS_CANVAS3D_WRAP_MODE_CLAMP; } static inline GLenum -_to_gl_texture_filter(Evas_3D_Texture_Filter filter) +_to_gl_texture_filter(Evas_Canvas3D_Texture_Filter filter) { switch (filter) { - case EVAS_3D_TEXTURE_FILTER_NEAREST: + case EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST: return GL_NEAREST; - case EVAS_3D_TEXTURE_FILTER_LINEAR: + case EVAS_CANVAS3D_TEXTURE_FILTER_LINEAR: return GL_LINEAR; - case EVAS_3D_TEXTURE_FILTER_NEAREST_MIPMAP_NEAREST: + case EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST_MIPMAP_NEAREST: return GL_NEAREST_MIPMAP_NEAREST; - case EVAS_3D_TEXTURE_FILTER_NEAREST_MIPMAP_LINEAR: + case EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST_MIPMAP_LINEAR: return GL_NEAREST_MIPMAP_LINEAR; - case EVAS_3D_TEXTURE_FILTER_LINEAR_MIPMAP_NEAREST: + case EVAS_CANVAS3D_TEXTURE_FILTER_LINEAR_MIPMAP_NEAREST: return GL_LINEAR_MIPMAP_NEAREST; - case EVAS_3D_TEXTURE_FILTER_LINEAR_MIPMAP_LINEAR: + case EVAS_CANVAS3D_TEXTURE_FILTER_LINEAR_MIPMAP_LINEAR: return GL_LINEAR_MIPMAP_LINEAR; default: break; @@ -190,33 +190,33 @@ _to_gl_texture_filter(Evas_3D_Texture_Filter filter) return GL_NEAREST; } -static inline Evas_3D_Texture_Filter +static inline Evas_Canvas3D_Texture_Filter _to_e3d_texture_filter(GLenum filter) { switch (filter) { case GL_NEAREST: - return EVAS_3D_TEXTURE_FILTER_NEAREST; + return EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST; case GL_LINEAR: - return EVAS_3D_TEXTURE_FILTER_LINEAR; + return EVAS_CANVAS3D_TEXTURE_FILTER_LINEAR; case GL_NEAREST_MIPMAP_NEAREST: - return EVAS_3D_TEXTURE_FILTER_NEAREST_MIPMAP_NEAREST; + return EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST_MIPMAP_NEAREST; case GL_NEAREST_MIPMAP_LINEAR: - return EVAS_3D_TEXTURE_FILTER_NEAREST_MIPMAP_LINEAR; + return EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST_MIPMAP_LINEAR; case GL_LINEAR_MIPMAP_NEAREST: - return EVAS_3D_TEXTURE_FILTER_LINEAR_MIPMAP_NEAREST; + return EVAS_CANVAS3D_TEXTURE_FILTER_LINEAR_MIPMAP_NEAREST; case GL_LINEAR_MIPMAP_LINEAR: - return EVAS_3D_TEXTURE_FILTER_LINEAR_MIPMAP_LINEAR; + return EVAS_CANVAS3D_TEXTURE_FILTER_LINEAR_MIPMAP_LINEAR; default: break; } ERR("Invalid texture wrap mode."); - return EVAS_3D_TEXTURE_FILTER_NEAREST; + return EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST; } void -e3d_texture_wrap_set(E3D_Texture *texture, Evas_3D_Wrap_Mode s, Evas_3D_Wrap_Mode t) +e3d_texture_wrap_set(E3D_Texture *texture, Evas_Canvas3D_Wrap_Mode s, Evas_Canvas3D_Wrap_Mode t) { GLenum gl_s, gl_t; @@ -232,7 +232,7 @@ e3d_texture_wrap_set(E3D_Texture *texture, Evas_3D_Wrap_Mode s, Evas_3D_Wrap_Mod } void -e3d_texture_wrap_get(const E3D_Texture *texture, Evas_3D_Wrap_Mode *s, Evas_3D_Wrap_Mode *t) +e3d_texture_wrap_get(const E3D_Texture *texture, Evas_Canvas3D_Wrap_Mode *s, Evas_Canvas3D_Wrap_Mode *t) { if (s) *s = _to_e3d_texture_wrap(texture->wrap_s); @@ -242,7 +242,7 @@ e3d_texture_wrap_get(const E3D_Texture *texture, Evas_3D_Wrap_Mode *s, Evas_3D_W } void -e3d_texture_filter_set(E3D_Texture *texture, Evas_3D_Texture_Filter min, Evas_3D_Texture_Filter mag) +e3d_texture_filter_set(E3D_Texture *texture, Evas_Canvas3D_Texture_Filter min, Evas_Canvas3D_Texture_Filter mag) { GLenum gl_min, gl_mag; @@ -259,7 +259,7 @@ e3d_texture_filter_set(E3D_Texture *texture, Evas_3D_Texture_Filter min, Evas_3D void e3d_texture_filter_get(const E3D_Texture *texture, - Evas_3D_Texture_Filter *min, Evas_3D_Texture_Filter *mag) + Evas_Canvas3D_Texture_Filter *min, Evas_Canvas3D_Texture_Filter *mag) { if (min) *min = _to_e3d_texture_filter(texture->filter_min); @@ -509,20 +509,20 @@ e3d_drawable_format_get(E3D_Drawable *drawable) } static inline void -_mesh_frame_find(Evas_3D_Mesh *mesh, int frame, +_mesh_frame_find(Evas_Canvas3D_Mesh *mesh, int frame, Eina_List **l, Eina_List **r) { Eina_List *left, *right; - Evas_3D_Mesh_Frame *f0 = NULL, *f1; - Evas_3D_Mesh_Data *pdmesh = eo_data_scope_get(mesh, EVAS_3D_MESH_CLASS); + Evas_Canvas3D_Mesh_Frame *f0 = NULL, *f1; + Evas_Canvas3D_Mesh_Data *pdmesh = eo_data_scope_get(mesh, EVAS_CANVAS3D_MESH_CLASS); left = pdmesh->frames; right = eina_list_next(left); while (right) { - f0 = (Evas_3D_Mesh_Frame *)eina_list_data_get(left); - f1 = (Evas_3D_Mesh_Frame *)eina_list_data_get(right); + f0 = (Evas_Canvas3D_Mesh_Frame *)eina_list_data_get(left); + f1 = (Evas_Canvas3D_Mesh_Frame *)eina_list_data_get(right); if (frame >= f0->frame && frame <= f1->frame) break; @@ -551,36 +551,36 @@ _mesh_frame_find(Evas_3D_Mesh *mesh, int frame, static inline void _vertex_attrib_flag_add(E3D_Draw_Data *data, - Evas_3D_Vertex_Attrib attrib, + Evas_Canvas3D_Vertex_Attrib attrib, Eina_Bool blend) { switch (attrib) { - case EVAS_3D_VERTEX_POSITION: + case EVAS_CANVAS3D_VERTEX_POSITION: data->flags |= E3D_SHADER_FLAG_VERTEX_POSITION; if (blend) data->flags |= E3D_SHADER_FLAG_VERTEX_POSITION_BLEND; break; - case EVAS_3D_VERTEX_NORMAL: + case EVAS_CANVAS3D_VERTEX_NORMAL: data->flags |= E3D_SHADER_FLAG_VERTEX_NORMAL; if (blend) data->flags |= E3D_SHADER_FLAG_VERTEX_NORMAL_BLEND; break; - case EVAS_3D_VERTEX_TANGENT: + case EVAS_CANVAS3D_VERTEX_TANGENT: data->flags |= E3D_SHADER_FLAG_VERTEX_TANGENT; if (blend) data->flags |= E3D_SHADER_FLAG_VERTEX_TANGENT_BLEND; break; - case EVAS_3D_VERTEX_COLOR: + case EVAS_CANVAS3D_VERTEX_COLOR: data->flags |= E3D_SHADER_FLAG_VERTEX_COLOR; if (blend) data->flags |= E3D_SHADER_FLAG_VERTEX_COLOR_BLEND; break; - case EVAS_3D_VERTEX_TEXCOORD: + case EVAS_CANVAS3D_VERTEX_TEXCOORD: data->flags |= E3D_SHADER_FLAG_VERTEX_TEXCOORD; if (blend) @@ -593,23 +593,23 @@ _vertex_attrib_flag_add(E3D_Draw_Data *data, } static inline void -_material_color_flag_add(E3D_Draw_Data *data, Evas_3D_Material_Attrib attrib) +_material_color_flag_add(E3D_Draw_Data *data, Evas_Canvas3D_Material_Attrib attrib) { switch (attrib) { - case EVAS_3D_MATERIAL_AMBIENT: + case EVAS_CANVAS3D_MATERIAL_AMBIENT: data->flags |= E3D_SHADER_FLAG_AMBIENT; break; - case EVAS_3D_MATERIAL_DIFFUSE: + case EVAS_CANVAS3D_MATERIAL_DIFFUSE: data->flags |= E3D_SHADER_FLAG_DIFFUSE; break; - case EVAS_3D_MATERIAL_SPECULAR: + case EVAS_CANVAS3D_MATERIAL_SPECULAR: data->flags |= E3D_SHADER_FLAG_SPECULAR; break; - case EVAS_3D_MATERIAL_EMISSION: + case EVAS_CANVAS3D_MATERIAL_EMISSION: data->flags |= E3D_SHADER_FLAG_EMISSION; break; - case EVAS_3D_MATERIAL_NORMAL: + case EVAS_CANVAS3D_MATERIAL_NORMAL: ERR("Material attribute normal should not be used with color values."); break; default: @@ -619,39 +619,39 @@ _material_color_flag_add(E3D_Draw_Data *data, Evas_3D_Material_Attrib attrib) } static inline void -_material_texture_flag_add(E3D_Draw_Data *data, Evas_3D_Material_Attrib attrib, Eina_Bool blend) +_material_texture_flag_add(E3D_Draw_Data *data, Evas_Canvas3D_Material_Attrib attrib, Eina_Bool blend) { switch (attrib) { - case EVAS_3D_MATERIAL_AMBIENT: + case EVAS_CANVAS3D_MATERIAL_AMBIENT: data->flags |= E3D_SHADER_FLAG_AMBIENT; data->flags |= E3D_SHADER_FLAG_AMBIENT_TEXTURE; if (blend) data->flags |= E3D_SHADER_FLAG_AMBIENT_TEXTURE_BLEND; break; - case EVAS_3D_MATERIAL_DIFFUSE: + case EVAS_CANVAS3D_MATERIAL_DIFFUSE: data->flags |= E3D_SHADER_FLAG_DIFFUSE; data->flags |= E3D_SHADER_FLAG_DIFFUSE_TEXTURE; if (blend) data->flags |= E3D_SHADER_FLAG_DIFFUSE_TEXTURE_BLEND; break; - case EVAS_3D_MATERIAL_SPECULAR: + case EVAS_CANVAS3D_MATERIAL_SPECULAR: data->flags |= E3D_SHADER_FLAG_SPECULAR; data->flags |= E3D_SHADER_FLAG_SPECULAR_TEXTURE; if (blend) data->flags |= E3D_SHADER_FLAG_SPECULAR_TEXTURE_BLEND; break; - case EVAS_3D_MATERIAL_EMISSION: + case EVAS_CANVAS3D_MATERIAL_EMISSION: data->flags |= E3D_SHADER_FLAG_EMISSION; data->flags |= E3D_SHADER_FLAG_EMISSION_TEXTURE; if (blend) data->flags |= E3D_SHADER_FLAG_EMISSION_TEXTURE_BLEND; break; - case EVAS_3D_MATERIAL_NORMAL: + case EVAS_CANVAS3D_MATERIAL_NORMAL: data->flags |= E3D_SHADER_FLAG_NORMAL_TEXTURE; if (blend) @@ -666,13 +666,13 @@ _material_texture_flag_add(E3D_Draw_Data *data, Evas_3D_Material_Attrib attrib, static inline Eina_Bool _vertex_attrib_build(E3D_Draw_Data *data, int frame, const Eina_List *l, const Eina_List *r, - Evas_3D_Vertex_Attrib attrib) + Evas_Canvas3D_Vertex_Attrib attrib) { - const Evas_3D_Mesh_Frame *f0 = NULL, *f1 = NULL; + const Evas_Canvas3D_Mesh_Frame *f0 = NULL, *f1 = NULL; while (l) { - f0 = (const Evas_3D_Mesh_Frame *)eina_list_data_get(l); + f0 = (const Evas_Canvas3D_Mesh_Frame *)eina_list_data_get(l); if (f0->vertices[attrib].data != NULL) break; @@ -683,7 +683,7 @@ _vertex_attrib_build(E3D_Draw_Data *data, int frame, while (r) { - f1 = (const Evas_3D_Mesh_Frame *)eina_list_data_get(r); + f1 = (const Evas_Canvas3D_Mesh_Frame *)eina_list_data_get(r); if (f1->vertices[attrib].data != NULL) break; @@ -734,17 +734,17 @@ _vertex_attrib_build(E3D_Draw_Data *data, int frame, static inline Eina_Bool _material_color_build(E3D_Draw_Data *data, int frame, const Eina_List *l, const Eina_List *r, - Evas_3D_Material_Attrib attrib) + Evas_Canvas3D_Material_Attrib attrib) { - const Evas_3D_Mesh_Frame *f0 = NULL, *f1 = NULL; + const Evas_Canvas3D_Mesh_Frame *f0 = NULL, *f1 = NULL; while (l) { - f0 = (const Evas_3D_Mesh_Frame *)eina_list_data_get(l); + f0 = (const Evas_Canvas3D_Mesh_Frame *)eina_list_data_get(l); if (f0->material) { - Evas_3D_Material_Data *pdm = eo_data_scope_get(f0->material, EVAS_3D_MATERIAL_CLASS); + Evas_Canvas3D_Material_Data *pdm = eo_data_scope_get(f0->material, EVAS_CANVAS3D_MATERIAL_CLASS); if (pdm->attribs[attrib].enable) break; } @@ -755,11 +755,11 @@ _material_color_build(E3D_Draw_Data *data, int frame, while (r) { - f1 = (const Evas_3D_Mesh_Frame *)eina_list_data_get(r); + f1 = (const Evas_Canvas3D_Mesh_Frame *)eina_list_data_get(r); if (f1->material) { - Evas_3D_Material_Data *pdm = eo_data_scope_get(f1->material, EVAS_3D_MATERIAL_CLASS); + Evas_Canvas3D_Material_Data *pdm = eo_data_scope_get(f1->material, EVAS_CANVAS3D_MATERIAL_CLASS); if (pdm->attribs[attrib].enable) break; } @@ -788,18 +788,18 @@ _material_color_build(E3D_Draw_Data *data, int frame, f1 = NULL; } } - Evas_3D_Material_Data *pdmf0 = eo_data_scope_get(f0->material, EVAS_3D_MATERIAL_CLASS); + Evas_Canvas3D_Material_Data *pdmf0 = eo_data_scope_get(f0->material, EVAS_CANVAS3D_MATERIAL_CLASS); if (f1 == NULL) { data->materials[attrib].color = pdmf0->attribs[attrib].color; - if (attrib == EVAS_3D_MATERIAL_SPECULAR) + if (attrib == EVAS_CANVAS3D_MATERIAL_SPECULAR) data->shininess = pdmf0->shininess; } else { Evas_Real weight; - Evas_3D_Material_Data *pdmf1 = eo_data_scope_get(f1->material, EVAS_3D_MATERIAL_CLASS); + Evas_Canvas3D_Material_Data *pdmf1 = eo_data_scope_get(f1->material, EVAS_CANVAS3D_MATERIAL_CLASS); weight = (f1->frame - frame) / (Evas_Real)(f1->frame - f0->frame); evas_color_blend(&data->materials[attrib].color, @@ -807,7 +807,7 @@ _material_color_build(E3D_Draw_Data *data, int frame, &pdmf0->attribs[attrib].color, weight); - if (attrib == EVAS_3D_MATERIAL_SPECULAR) + if (attrib == EVAS_CANVAS3D_MATERIAL_SPECULAR) { data->shininess = pdmf0->shininess * weight + pdmf1->shininess * (1.0 - weight); @@ -821,17 +821,17 @@ _material_color_build(E3D_Draw_Data *data, int frame, static inline Eina_Bool _material_texture_build(E3D_Draw_Data *data, int frame, const Eina_List *l, const Eina_List *r, - Evas_3D_Material_Attrib attrib) + Evas_Canvas3D_Material_Attrib attrib) { - const Evas_3D_Mesh_Frame *f0 = NULL, *f1 = NULL; + const Evas_Canvas3D_Mesh_Frame *f0 = NULL, *f1 = NULL; while (l) { - f0 = (const Evas_3D_Mesh_Frame *)eina_list_data_get(l); + f0 = (const Evas_Canvas3D_Mesh_Frame *)eina_list_data_get(l); if (f0->material) { - Evas_3D_Material_Data *pdm = eo_data_scope_get(f0->material, EVAS_3D_MATERIAL_CLASS); + Evas_Canvas3D_Material_Data *pdm = eo_data_scope_get(f0->material, EVAS_CANVAS3D_MATERIAL_CLASS); if (pdm->attribs[attrib].enable && pdm->attribs[attrib].texture != NULL) break; } @@ -842,11 +842,11 @@ _material_texture_build(E3D_Draw_Data *data, int frame, while (r) { - f1 = (const Evas_3D_Mesh_Frame *)eina_list_data_get(r); + f1 = (const Evas_Canvas3D_Mesh_Frame *)eina_list_data_get(r); if (f1->material) { - Evas_3D_Material_Data *pdm = eo_data_scope_get(f1->material, EVAS_3D_MATERIAL_CLASS); + Evas_Canvas3D_Material_Data *pdm = eo_data_scope_get(f1->material, EVAS_CANVAS3D_MATERIAL_CLASS); if (pdm->attribs[attrib].enable && pdm->attribs[attrib].texture != NULL) break; } @@ -876,23 +876,23 @@ _material_texture_build(E3D_Draw_Data *data, int frame, } } - Evas_3D_Material_Data *pdmf0 = eo_data_scope_get(f0->material, EVAS_3D_MATERIAL_CLASS); + Evas_Canvas3D_Material_Data *pdmf0 = eo_data_scope_get(f0->material, EVAS_CANVAS3D_MATERIAL_CLASS); data->materials[attrib].sampler0 = data->texture_count++; - Evas_3D_Texture_Data *pd = eo_data_scope_get(pdmf0->attribs[attrib].texture, EVAS_3D_TEXTURE_CLASS); + Evas_Canvas3D_Texture_Data *pd = eo_data_scope_get(pdmf0->attribs[attrib].texture, EVAS_CANVAS3D_TEXTURE_CLASS); data->materials[attrib].tex0 = (E3D_Texture *)pd->engine_data; if (f1) { - Evas_3D_Material_Data *pdmf1 = eo_data_scope_get(f1->material, EVAS_3D_MATERIAL_CLASS); + Evas_Canvas3D_Material_Data *pdmf1 = eo_data_scope_get(f1->material, EVAS_CANVAS3D_MATERIAL_CLASS); Evas_Real weight = (f1->frame - frame) / (Evas_Real)(f1->frame - f0->frame); data->materials[attrib].sampler1 = data->texture_count++; - pd = eo_data_scope_get(pdmf1->attribs[attrib].texture, EVAS_3D_TEXTURE_CLASS); + pd = eo_data_scope_get(pdmf1->attribs[attrib].texture, EVAS_CANVAS3D_TEXTURE_CLASS); data->materials[attrib].tex1 = (E3D_Texture *)pd->engine_data; data->materials[attrib].texture_weight = weight; - if (attrib == EVAS_3D_MATERIAL_SPECULAR) + if (attrib == EVAS_CANVAS3D_MATERIAL_SPECULAR) { data->shininess = pdmf0->shininess * weight + pdmf1->shininess * (1.0 - weight); @@ -902,7 +902,7 @@ _material_texture_build(E3D_Draw_Data *data, int frame, } else { - if (attrib == EVAS_3D_MATERIAL_SPECULAR) + if (attrib == EVAS_CANVAS3D_MATERIAL_SPECULAR) data->shininess = pdmf0->shininess; _material_texture_flag_add(data, attrib, EINA_FALSE); @@ -913,12 +913,12 @@ _material_texture_build(E3D_Draw_Data *data, int frame, static inline void _light_build(E3D_Draw_Data *data, - const Evas_3D_Node *light, + const Evas_Canvas3D_Node *light, const Evas_Mat4 *matrix_eye) { - Evas_3D_Node_Data *pd_light_node = eo_data_scope_get(light, EVAS_3D_NODE_CLASS); - Evas_3D_Light *l = pd_light_node ? pd_light_node->data.light.light : NULL; - Evas_3D_Light_Data *pdl = l ? eo_data_scope_get(l, EVAS_3D_LIGHT_CLASS) : NULL; + Evas_Canvas3D_Node_Data *pd_light_node = eo_data_scope_get(light, EVAS_CANVAS3D_NODE_CLASS); + Evas_Canvas3D_Light *l = pd_light_node ? pd_light_node->data.light.light : NULL; + Evas_Canvas3D_Light_Data *pdl = l ? eo_data_scope_get(l, EVAS_CANVAS3D_LIGHT_CLASS) : NULL; Evas_Vec3 pos, dir; if (pdl == NULL) @@ -981,15 +981,15 @@ _light_build(E3D_Draw_Data *data, static inline Eina_Bool _mesh_draw_data_build(E3D_Draw_Data *data, - Evas_3D_Mesh *mesh, int frame, + Evas_Canvas3D_Mesh *mesh, int frame, const Evas_Mat4 *matrix_eye, const Evas_Mat4 *matrix_mv, const Evas_Mat4 *matrix_mvp, const Evas_Mat4 *matrix_light, - const Evas_3D_Node *light) + const Evas_Canvas3D_Node *light) { Eina_List *l, *r; - Evas_3D_Mesh_Data *pdmesh = eo_data_scope_get(mesh, EVAS_3D_MESH_CLASS); + Evas_Canvas3D_Mesh_Data *pdmesh = eo_data_scope_get(mesh, EVAS_CANVAS3D_MESH_CLASS); if (pdmesh->frames == NULL) return EINA_FALSE; @@ -1031,7 +1031,7 @@ _mesh_draw_data_build(E3D_Draw_Data *data, #define BUILD(type, arg, check) \ do { \ - Eina_Bool ret = _##type##_build(data, frame, l, r, EVAS_3D_##arg); \ + Eina_Bool ret = _##type##_build(data, frame, l, r, EVAS_CANVAS3D_##arg); \ if (check && !ret) \ { \ ERR("Missing attribute : " #arg); \ @@ -1039,12 +1039,12 @@ _mesh_draw_data_build(E3D_Draw_Data *data, } \ } while (0) - if (pdmesh->shade_mode == EVAS_3D_SHADE_MODE_VERTEX_COLOR) + if (pdmesh->shade_mode == EVAS_CANVAS3D_SHADE_MODE_VERTEX_COLOR) { BUILD(vertex_attrib, VERTEX_POSITION, EINA_TRUE); BUILD(vertex_attrib, VERTEX_COLOR, EINA_TRUE); } - else if (pdmesh->shade_mode == EVAS_3D_SHADE_MODE_SHADOW_MAP_RENDER) + else if (pdmesh->shade_mode == EVAS_CANVAS3D_SHADE_MODE_SHADOW_MAP_RENDER) { BUILD(vertex_attrib, VERTEX_POSITION, EINA_TRUE); if (pdmesh->alpha_test_enabled) @@ -1055,11 +1055,11 @@ _mesh_draw_data_build(E3D_Draw_Data *data, BUILD(vertex_attrib, VERTEX_TEXCOORD, EINA_FALSE); } } - else if (pdmesh->shade_mode == EVAS_3D_SHADE_MODE_COLOR_PICK) + else if (pdmesh->shade_mode == EVAS_CANVAS3D_SHADE_MODE_COLOR_PICK) { BUILD(vertex_attrib, VERTEX_POSITION, EINA_TRUE); } - else if (pdmesh->shade_mode == EVAS_3D_SHADE_MODE_DIFFUSE) + else if (pdmesh->shade_mode == EVAS_CANVAS3D_SHADE_MODE_DIFFUSE) { BUILD(vertex_attrib, VERTEX_POSITION, EINA_TRUE); BUILD(material_color, MATERIAL_DIFFUSE, EINA_TRUE); @@ -1068,7 +1068,7 @@ _mesh_draw_data_build(E3D_Draw_Data *data, if (_flags_need_tex_coord(data->flags)) BUILD(vertex_attrib, VERTEX_TEXCOORD, EINA_FALSE); } - else if (pdmesh->shade_mode == EVAS_3D_SHADE_MODE_FLAT) + else if (pdmesh->shade_mode == EVAS_CANVAS3D_SHADE_MODE_FLAT) { BUILD(vertex_attrib, VERTEX_POSITION, EINA_TRUE); BUILD(vertex_attrib, VERTEX_NORMAL, EINA_TRUE); @@ -1089,7 +1089,7 @@ _mesh_draw_data_build(E3D_Draw_Data *data, if (_flags_need_tex_coord(data->flags)) BUILD(vertex_attrib, VERTEX_TEXCOORD, EINA_FALSE); } - else if (pdmesh->shade_mode == EVAS_3D_SHADE_MODE_PHONG) + else if (pdmesh->shade_mode == EVAS_CANVAS3D_SHADE_MODE_PHONG) { BUILD(vertex_attrib, VERTEX_POSITION, EINA_TRUE); BUILD(vertex_attrib, VERTEX_NORMAL, EINA_TRUE); @@ -1110,8 +1110,8 @@ _mesh_draw_data_build(E3D_Draw_Data *data, if (_flags_need_tex_coord(data->flags)) BUILD(vertex_attrib, VERTEX_TEXCOORD, EINA_FALSE); } - else if ((pdmesh->shade_mode == EVAS_3D_SHADE_MODE_NORMAL_MAP) || - (pdmesh->shade_mode == EVAS_3D_SHADE_MODE_PARALLAX_OCCLUSION)) + else if ((pdmesh->shade_mode == EVAS_CANVAS3D_SHADE_MODE_NORMAL_MAP) || + (pdmesh->shade_mode == EVAS_CANVAS3D_SHADE_MODE_PARALLAX_OCCLUSION)) { BUILD(vertex_attrib, VERTEX_POSITION, EINA_TRUE); BUILD(vertex_attrib, VERTEX_NORMAL, EINA_TRUE); @@ -1120,7 +1120,7 @@ _mesh_draw_data_build(E3D_Draw_Data *data, BUILD(vertex_attrib, VERTEX_TANGENT, EINA_FALSE); - if (pdmesh->shade_mode == EVAS_3D_SHADE_MODE_NORMAL_MAP) + if (pdmesh->shade_mode == EVAS_CANVAS3D_SHADE_MODE_NORMAL_MAP) BUILD(vertex_attrib, VERTEX_TANGENT, EINA_FALSE); else BUILD(vertex_attrib, VERTEX_TANGENT, EINA_TRUE); @@ -1153,7 +1153,7 @@ _mesh_draw_data_build(E3D_Draw_Data *data, } static inline void -_mesh_draw(E3D_Renderer *renderer, Evas_3D_Mesh *mesh, int frame, Evas_3D_Node *light, +_mesh_draw(E3D_Renderer *renderer, Evas_Canvas3D_Mesh *mesh, int frame, Evas_Canvas3D_Node *light, const Evas_Mat4 *matrix_eye, const Evas_Mat4 *matrix_mv, const Evas_Mat4 *matrix_mvp, const Evas_Mat4 *matrix_light) { E3D_Draw_Data data; @@ -1165,12 +1165,12 @@ _mesh_draw(E3D_Renderer *renderer, Evas_3D_Mesh *mesh, int frame, Evas_3D_Node * } void _shadowmap_render(E3D_Drawable *drawable, E3D_Renderer *renderer, - Evas_3D_Scene_Public_Data *data, Evas_Mat4 *matrix_light_eye, - Evas_3D_Node *light) + Evas_Canvas3D_Scene_Public_Data *data, Evas_Mat4 *matrix_light_eye, + Evas_Canvas3D_Node *light) { Eina_List *l; - Evas_3D_Node *n; - Evas_3D_Shade_Mode shade_mode; + Evas_Canvas3D_Node *n; + Evas_Canvas3D_Shade_Mode shade_mode; Eina_Bool blend_enabled; Evas_Color c = {1.0, 1.0, 1.0, 1.0}; Evas_Mat4 matrix_vp; @@ -1192,9 +1192,9 @@ void _shadowmap_render(E3D_Drawable *drawable, E3D_Renderer *renderer, e3d_renderer_target_set(renderer, drawable); e3d_renderer_clear(renderer, &c); - Evas_3D_Node_Data *pd_light_node = eo_data_scope_get(light, EVAS_3D_NODE_CLASS); - Evas_3D_Light_Data *pd = eo_data_scope_get(pd_light_node->data.light.light, - EVAS_3D_LIGHT_CLASS); + Evas_Canvas3D_Node_Data *pd_light_node = eo_data_scope_get(light, EVAS_CANVAS3D_NODE_CLASS); + Evas_Canvas3D_Light_Data *pd = eo_data_scope_get(pd_light_node->data.light.light, + EVAS_CANVAS3D_LIGHT_CLASS); Evas_Vec4 planes[6]; evas_mat4_multiply(&matrix_vp, &pd->projection, matrix_light_eye); @@ -1202,7 +1202,7 @@ void _shadowmap_render(E3D_Drawable *drawable, E3D_Renderer *renderer, EINA_LIST_FOREACH(data->mesh_nodes, l, n) { - Evas_3D_Node_Data *pd_mesh_node = eo_data_scope_get(n, EVAS_3D_NODE_CLASS); + Evas_Canvas3D_Node_Data *pd_mesh_node = eo_data_scope_get(n, EVAS_CANVAS3D_NODE_CLASS); if (evas_is_sphere_in_frustum(&pd_mesh_node->bsphere, planes)) { @@ -1211,7 +1211,7 @@ void _shadowmap_render(E3D_Drawable *drawable, E3D_Renderer *renderer, shade_mode = pdmesh->shade_mode; blend_enabled = pdmesh->blending; pdmesh->blending = EINA_FALSE; - pdmesh->shade_mode = EVAS_3D_SHADE_MODE_SHADOW_MAP_RENDER; + pdmesh->shade_mode = EVAS_CANVAS3D_SHADE_MODE_SHADOW_MAP_RENDER; _mesh_draw(renderer, nm->mesh, nm->frame, light, matrix_light_eye, &matrix_mv, &matrix_mvp, &matrix_mvp); pdmesh->shade_mode = shade_mode; @@ -1229,31 +1229,31 @@ void _shadowmap_render(E3D_Drawable *drawable, E3D_Renderer *renderer, } void -e3d_drawable_scene_render(E3D_Drawable *drawable, E3D_Renderer *renderer, Evas_3D_Scene_Public_Data *data) +e3d_drawable_scene_render(E3D_Drawable *drawable, E3D_Renderer *renderer, Evas_Canvas3D_Scene_Public_Data *data) { Eina_List *l; - Evas_3D_Node *n; + Evas_Canvas3D_Node *n; const Evas_Mat4 *matrix_eye; - Evas_3D_Node *light; + Evas_Canvas3D_Node *light; Evas_Mat4 matrix_light_eye, matrix_vp;; - Evas_3D_Light_Data *ld = NULL; - Evas_3D_Node_Data *pd_light_node; + Evas_Canvas3D_Light_Data *ld = NULL; + Evas_Canvas3D_Node_Data *pd_light_node; Evas_Vec4 planes[6]; /* Get eye matrix. */ - Evas_3D_Node_Data *pd_camera_node = eo_data_scope_get(data->camera_node, EVAS_3D_NODE_CLASS); + Evas_Canvas3D_Node_Data *pd_camera_node = eo_data_scope_get(data->camera_node, EVAS_CANVAS3D_NODE_CLASS); matrix_eye = &pd_camera_node->data.camera.matrix_world_to_eye; - Evas_3D_Camera_Data *pd = eo_data_scope_get(pd_camera_node->data.camera.camera, EVAS_3D_CAMERA_CLASS); + Evas_Canvas3D_Camera_Data *pd = eo_data_scope_get(pd_camera_node->data.camera.camera, EVAS_CANVAS3D_CAMERA_CLASS); light = eina_list_data_get(data->light_nodes); if (data->shadows_enabled) { - pd_light_node = eo_data_scope_get(light, EVAS_3D_NODE_CLASS); + pd_light_node = eo_data_scope_get(light, EVAS_CANVAS3D_NODE_CLASS); evas_mat4_inverse_build(&matrix_light_eye, &pd_light_node->position_world, &pd_light_node->orientation_world, &pd_light_node->scale_world); - ld = eo_data_scope_get(pd_light_node->data.light.light, EVAS_3D_LIGHT_CLASS); + ld = eo_data_scope_get(pd_light_node->data.light.light, EVAS_CANVAS3D_LIGHT_CLASS); _shadowmap_render(drawable, renderer, data, &matrix_light_eye, light); } @@ -1270,7 +1270,7 @@ e3d_drawable_scene_render(E3D_Drawable *drawable, E3D_Renderer *renderer, Evas_3 Evas_Mat4 matrix_mvp; Eina_Iterator *it; void *ptr; - Evas_3D_Node_Data *pd_mesh_node = eo_data_scope_get(n, EVAS_3D_NODE_CLASS); + Evas_Canvas3D_Node_Data *pd_mesh_node = eo_data_scope_get(n, EVAS_CANVAS3D_NODE_CLASS); // TODO Add other frustum shapes if (evas_is_sphere_in_frustum(&pd_mesh_node->bsphere, planes)) @@ -1291,8 +1291,8 @@ e3d_drawable_scene_render(E3D_Drawable *drawable, E3D_Renderer *renderer, Evas_3 it = eina_hash_iterator_data_new(pd_mesh_node->data.mesh.node_meshes); while (eina_iterator_next(it, &ptr)) { - Evas_3D_Node_Mesh *nm = (Evas_3D_Node_Mesh *)ptr; - Evas_3D_Mesh_Data *pdmesh = eo_data_scope_get(nm->mesh, EVAS_3D_MESH_CLASS); + Evas_Canvas3D_Node_Mesh *nm = (Evas_Canvas3D_Node_Mesh *)ptr; + Evas_Canvas3D_Mesh_Data *pdmesh = eo_data_scope_get(nm->mesh, EVAS_CANVAS3D_MESH_CLASS); if (data->shadows_enabled) { pdmesh->shadowed = EINA_TRUE; @@ -1309,10 +1309,10 @@ e3d_drawable_scene_render(E3D_Drawable *drawable, E3D_Renderer *renderer, Evas_3 Eina_Bool e3d_drawable_scene_render_to_texture(E3D_Drawable *drawable, E3D_Renderer *renderer, - Evas_3D_Scene_Public_Data *data) + Evas_Canvas3D_Scene_Public_Data *data) { const Evas_Mat4 *matrix_eye; - Evas_3D_Shade_Mode shade_mode; + Evas_Canvas3D_Shade_Mode shade_mode; Eina_Stringshare *tmp; Eina_Iterator *itmn; void *ptrmn; @@ -1334,19 +1334,19 @@ e3d_drawable_scene_render_to_texture(E3D_Drawable *drawable, E3D_Renderer *rende e3d_renderer_clear(renderer, &c); - Evas_3D_Node_Data *pd_camera_node = eo_data_scope_get(data->camera_node, EVAS_3D_NODE_CLASS); + Evas_Canvas3D_Node_Data *pd_camera_node = eo_data_scope_get(data->camera_node, EVAS_CANVAS3D_NODE_CLASS); matrix_eye = &pd_camera_node->data.camera.matrix_world_to_eye; - Evas_3D_Camera_Data *pd = eo_data_scope_get(pd_camera_node->data.camera.camera, EVAS_3D_CAMERA_CLASS); + Evas_Canvas3D_Camera_Data *pd = eo_data_scope_get(pd_camera_node->data.camera.camera, EVAS_CANVAS3D_CAMERA_CLASS); itmn = eina_hash_iterator_data_new(data->colors_node_mesh); while (eina_iterator_next(itmn, &ptrmn)) { - Evas_3D_Node *n; + Evas_Canvas3D_Node *n; Eina_Array *arr = NULL; arr = (Eina_Array *)ptrmn; - n = (Evas_3D_Node *)eina_array_data_get(arr, 0); + n = (Evas_Canvas3D_Node *)eina_array_data_get(arr, 0); /*To avoid repeatedly render mesh*/ if (!repeat_node) repeat_node = eina_list_append(repeat_node, (void*)n); @@ -1357,7 +1357,7 @@ e3d_drawable_scene_render_to_texture(E3D_Drawable *drawable, E3D_Renderer *rende else repeat_node = eina_list_append(repeat_node, (void *)n); } - Evas_3D_Node_Data *pd_mesh_node = eo_data_scope_get(n, EVAS_3D_NODE_CLASS); + Evas_Canvas3D_Node_Data *pd_mesh_node = eo_data_scope_get(n, EVAS_CANVAS3D_NODE_CLASS); RENDER_MESH_NODE_ITERATE_BEGIN(eye) { if (pdmesh->color_pick_enabled) @@ -1374,7 +1374,7 @@ e3d_drawable_scene_render_to_texture(E3D_Drawable *drawable, E3D_Renderer *rende pdmesh->color_pick_key.b = unic_color->b; #endif shade_mode = pdmesh->shade_mode; - pdmesh->shade_mode = EVAS_3D_SHADE_MODE_COLOR_PICK; + pdmesh->shade_mode = EVAS_CANVAS3D_SHADE_MODE_COLOR_PICK; _mesh_draw(renderer, nm->mesh, nm->frame, NULL, matrix_eye, &matrix_mv, &matrix_mvp, NULL); pdmesh->shade_mode = shade_mode; diff --git a/src/modules/evas/engines/gl_common/evas_gl_3d_common.h b/src/modules/evas/engines/gl_common/evas_gl_3d_common.h index cda8548882..d59fd7e23d 100644 --- a/src/modules/evas/engines/gl_common/evas_gl_3d_common.h +++ b/src/modules/evas/engines/gl_common/evas_gl_3d_common.h @@ -17,17 +17,17 @@ Evas_GL_Image *e3d_texture_get(E3D_Texture *texture); void e3d_texture_import(E3D_Texture *texture, GLuint tex); Eina_Bool e3d_texture_is_imported_get(const E3D_Texture *texture); -void e3d_texture_wrap_set(E3D_Texture *texture, Evas_3D_Wrap_Mode s, Evas_3D_Wrap_Mode t); -void e3d_texture_wrap_get(const E3D_Texture *texture, Evas_3D_Wrap_Mode *s, Evas_3D_Wrap_Mode *t); +void e3d_texture_wrap_set(E3D_Texture *texture, Evas_Canvas3D_Wrap_Mode s, Evas_Canvas3D_Wrap_Mode t); +void e3d_texture_wrap_get(const E3D_Texture *texture, Evas_Canvas3D_Wrap_Mode *s, Evas_Canvas3D_Wrap_Mode *t); -void e3d_texture_filter_set(E3D_Texture *texture, Evas_3D_Texture_Filter min, Evas_3D_Texture_Filter mag); -void e3d_texture_filter_get(const E3D_Texture *texture, Evas_3D_Texture_Filter *min, Evas_3D_Texture_Filter *mag); +void e3d_texture_filter_set(E3D_Texture *texture, Evas_Canvas3D_Texture_Filter min, Evas_Canvas3D_Texture_Filter mag); +void e3d_texture_filter_get(const E3D_Texture *texture, Evas_Canvas3D_Texture_Filter *min, Evas_Canvas3D_Texture_Filter *mag); /* Drawable */ E3D_Drawable *e3d_drawable_new(int w, int h, int alpha, GLenum depth_format, GLenum stencil_format); void e3d_drawable_free(E3D_Drawable *drawable); -void e3d_drawable_scene_render(E3D_Drawable *drawable, E3D_Renderer *renderer, Evas_3D_Scene_Public_Data *data); -Eina_Bool e3d_drawable_scene_render_to_texture(E3D_Drawable *drawable, E3D_Renderer *renderer, Evas_3D_Scene_Public_Data *data); +void e3d_drawable_scene_render(E3D_Drawable *drawable, E3D_Renderer *renderer, Evas_Canvas3D_Scene_Public_Data *data); +Eina_Bool e3d_drawable_scene_render_to_texture(E3D_Drawable *drawable, E3D_Renderer *renderer, Evas_Canvas3D_Scene_Public_Data *data); void e3d_drawable_size_get(E3D_Drawable *drawable, int *w, int *h); GLuint e3d_drawable_texture_id_get(E3D_Drawable *drawable); GLuint e3d_drawable_texture_color_pick_id_get(E3D_Drawable *drawable); diff --git a/src/modules/evas/engines/gl_common/evas_gl_3d_private.h b/src/modules/evas/engines/gl_common/evas_gl_3d_private.h index d1c467bb7d..4ac9caced2 100644 --- a/src/modules/evas/engines/gl_common/evas_gl_3d_private.h +++ b/src/modules/evas/engines/gl_common/evas_gl_3d_private.h @@ -54,7 +54,7 @@ _flags_need_tex_coord(E3D_Shader_Flag flags) struct _E3D_Draw_Data { E3D_Shader_Flag flags; - Evas_3D_Shade_Mode mode; + Evas_Canvas3D_Shade_Mode mode; Evas_Mat4 matrix_mvp; Evas_Mat4 matrix_mv; @@ -62,15 +62,15 @@ struct _E3D_Draw_Data Evas_Mat4 matrix_light; struct { - Evas_3D_Vertex_Buffer vertex0; - Evas_3D_Vertex_Buffer vertex1; + Evas_Canvas3D_Vertex_Buffer vertex0; + Evas_Canvas3D_Vertex_Buffer vertex1; Evas_Real weight; - } vertices[EVAS_3D_VERTEX_ATTRIB_COUNT]; + } vertices[EVAS_CANVAS3D_VERTEX_ATTRIB_COUNT]; - Evas_3D_Vertex_Assembly assembly; + Evas_Canvas3D_Vertex_Assembly assembly; int vertex_count; int index_count; - Evas_3D_Index_Format index_format; + Evas_Canvas3D_Index_Format index_format; const void *indices; GLint texture_count; @@ -82,16 +82,16 @@ struct _E3D_Draw_Data E3D_Texture *tex0; E3D_Texture *tex1; Evas_Real texture_weight; - } materials[EVAS_3D_MATERIAL_ATTRIB_COUNT]; + } materials[EVAS_CANVAS3D_MATERIAL_ATTRIB_COUNT]; Evas_Real shininess; GLint smap_sampler; - Evas_3D_Blend_Func blend_sfactor; - Evas_3D_Blend_Func blend_dfactor; + Evas_Canvas3D_Blend_Func blend_sfactor; + Evas_Canvas3D_Blend_Func blend_dfactor; Eina_Bool blending : 1; - Evas_3D_Comparison alpha_comparison; + Evas_Canvas3D_Comparison alpha_comparison; Evas_Real alpha_ref_value; Eina_Bool alpha_test_enabled :1; @@ -161,10 +161,10 @@ struct _E3D_Drawable void e3d_texture_param_update(E3D_Texture *texture); /* Program */ -E3D_Program *e3d_program_new(Evas_3D_Shade_Mode mode, E3D_Shader_Flag flags); +E3D_Program *e3d_program_new(Evas_Canvas3D_Shade_Mode mode, E3D_Shader_Flag flags); void e3d_program_free(E3D_Program *program); GLuint e3d_program_id_get(const E3D_Program *program); -Evas_3D_Shade_Mode e3d_program_shade_mode_get(const E3D_Program *program); +Evas_Canvas3D_Shade_Mode e3d_program_shade_mode_get(const E3D_Program *program); E3D_Shader_Flag e3d_program_shader_flags_get(const E3D_Program *program); void e3d_program_uniform_upload(E3D_Program *program, const E3D_Draw_Data *data); diff --git a/src/modules/evas/engines/gl_common/evas_gl_3d_renderer.c b/src/modules/evas/engines/gl_common/evas_gl_3d_renderer.c index 5e4124147d..0710ab580d 100644 --- a/src/modules/evas/engines/gl_common/evas_gl_3d_renderer.c +++ b/src/modules/evas/engines/gl_common/evas_gl_3d_renderer.c @@ -19,23 +19,23 @@ struct _E3D_Renderer }; static inline GLenum -_gl_assembly_get(Evas_3D_Vertex_Assembly assembly) +_gl_assembly_get(Evas_Canvas3D_Vertex_Assembly assembly) { switch (assembly) { - case EVAS_3D_VERTEX_ASSEMBLY_POINTS: + case EVAS_CANVAS3D_VERTEX_ASSEMBLY_POINTS: return GL_POINTS; - case EVAS_3D_VERTEX_ASSEMBLY_LINES: + case EVAS_CANVAS3D_VERTEX_ASSEMBLY_LINES: return GL_LINES; - case EVAS_3D_VERTEX_ASSEMBLY_LINE_STRIP: + case EVAS_CANVAS3D_VERTEX_ASSEMBLY_LINE_STRIP: return GL_LINE_STRIP; - case EVAS_3D_VERTEX_ASSEMBLY_LINE_LOOP: + case EVAS_CANVAS3D_VERTEX_ASSEMBLY_LINE_LOOP: return GL_LINE_LOOP; - case EVAS_3D_VERTEX_ASSEMBLY_TRIANGLES: + case EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLES: return GL_TRIANGLES; - case EVAS_3D_VERTEX_ASSEMBLY_TRIANGLE_STRIP: + case EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLE_STRIP: return GL_TRIANGLE_STRIP; - case EVAS_3D_VERTEX_ASSEMBLY_TRIANGLE_FAN: + case EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLE_FAN: return GL_TRIANGLE_FAN; default: return GL_NONE; @@ -43,39 +43,39 @@ _gl_assembly_get(Evas_3D_Vertex_Assembly assembly) } static inline GLenum -_gl_blend_func_get(Evas_3D_Blend_Func blend_func) +_gl_blend_func_get(Evas_Canvas3D_Blend_Func blend_func) { switch (blend_func) { - case EVAS_3D_BLEND_ZERO: + case EVAS_CANVAS3D_BLEND_ZERO: return GL_ZERO; - case EVAS_3D_BLEND_ONE: + case EVAS_CANVAS3D_BLEND_ONE: return GL_ONE; - case EVAS_3D_BLEND_SRC_COLOR: + case EVAS_CANVAS3D_BLEND_SRC_COLOR: return GL_SRC_COLOR; - case EVAS_3D_BLEND_ONE_MINUS_SRC_COLOR: + case EVAS_CANVAS3D_BLEND_ONE_MINUS_SRC_COLOR: return GL_ONE_MINUS_SRC_COLOR; - case EVAS_3D_BLEND_DST_COLOR: + case EVAS_CANVAS3D_BLEND_DST_COLOR: return GL_DST_COLOR; - case EVAS_3D_BLEND_ONE_MINUS_DST_COLOR: + case EVAS_CANVAS3D_BLEND_ONE_MINUS_DST_COLOR: return GL_ONE_MINUS_DST_COLOR; - case EVAS_3D_BLEND_SRC_ALPHA: + case EVAS_CANVAS3D_BLEND_SRC_ALPHA: return GL_SRC_ALPHA; - case EVAS_3D_BLEND_ONE_MINUS_SRC_ALPHA: + case EVAS_CANVAS3D_BLEND_ONE_MINUS_SRC_ALPHA: return GL_ONE_MINUS_SRC_ALPHA; - case EVAS_3D_BLEND_DST_ALPHA: + case EVAS_CANVAS3D_BLEND_DST_ALPHA: return GL_DST_ALPHA; - case EVAS_3D_BLEND_ONE_MINUS_DST_ALPHA: + case EVAS_CANVAS3D_BLEND_ONE_MINUS_DST_ALPHA: return GL_ONE_MINUS_DST_ALPHA; - case EVAS_3D_BLEND_CONSTANT_COLOR: + case EVAS_CANVAS3D_BLEND_CONSTANT_COLOR: return GL_CONSTANT_COLOR; - case EVAS_3D_BLEND_ONE_MINUS_CONSTANT_COLOR: + case EVAS_CANVAS3D_BLEND_ONE_MINUS_CONSTANT_COLOR: return GL_ONE_MINUS_CONSTANT_COLOR; - case EVAS_3D_BLEND_CONSTANT_ALPHA: + case EVAS_CANVAS3D_BLEND_CONSTANT_ALPHA: return GL_CONSTANT_ALPHA; - case EVAS_3D_BLEND_ONE_MINUS_CONSTANT_ALPHA: + case EVAS_CANVAS3D_BLEND_ONE_MINUS_CONSTANT_ALPHA: return GL_ONE_MINUS_CONSTANT_ALPHA; - case EVAS_3D_BLEND_SRC_ALPHA_SATURATE: + case EVAS_CANVAS3D_BLEND_SRC_ALPHA_SATURATE: return GL_SRC_ALPHA_SATURATE; default: return GL_ZERO; @@ -84,25 +84,25 @@ _gl_blend_func_get(Evas_3D_Blend_Func blend_func) #ifndef GL_GLES static inline GLenum -_gl_comparison_func_get(Evas_3D_Comparison comparison_func) +_gl_comparison_func_get(Evas_Canvas3D_Comparison comparison_func) { switch (comparison_func) { - case EVAS_3D_COMPARISON_NEVER: + case EVAS_CANVAS3D_COMPARISON_NEVER: return GL_NEVER; - case EVAS_3D_COMPARISON_LESS: + case EVAS_CANVAS3D_COMPARISON_LESS: return GL_LESS; - case EVAS_3D_COMPARISON_EQUAL: + case EVAS_CANVAS3D_COMPARISON_EQUAL: return GL_EQUAL; - case EVAS_3D_COMPARISON_LEQUAL: + case EVAS_CANVAS3D_COMPARISON_LEQUAL: return GL_LEQUAL; - case EVAS_3D_COMPARISON_GREATER: + case EVAS_CANVAS3D_COMPARISON_GREATER: return GL_GREATER; - case EVAS_3D_COMPARISON_NOTEQUAL: + case EVAS_CANVAS3D_COMPARISON_NOTEQUAL: return GL_NOTEQUAL; - case EVAS_3D_COMPARISON_GEQUAL: + case EVAS_CANVAS3D_COMPARISON_GEQUAL: return GL_GEQUAL; - case EVAS_3D_COMPARISON_ALWAYS: + case EVAS_CANVAS3D_COMPARISON_ALWAYS: return GL_ALWAYS; default: return GL_ALWAYS; @@ -132,27 +132,27 @@ _renderer_vertex_attrib_array_disable(E3D_Renderer *renderer, int index) static inline void _renderer_vertex_attrib_pointer_set(E3D_Renderer *renderer EINA_UNUSED, int index, - const Evas_3D_Vertex_Buffer *buffer) + const Evas_Canvas3D_Vertex_Buffer *buffer) { glVertexAttribPointer(index, buffer->element_count, GL_FLOAT, GL_FALSE, buffer->stride, buffer->data); } static inline void -_renderer_elements_draw(E3D_Renderer *renderer EINA_UNUSED, Evas_3D_Vertex_Assembly assembly, - int count, Evas_3D_Index_Format format, const void *indices) +_renderer_elements_draw(E3D_Renderer *renderer EINA_UNUSED, Evas_Canvas3D_Vertex_Assembly assembly, + int count, Evas_Canvas3D_Index_Format format, const void *indices) { GLenum mode = _gl_assembly_get(assembly); - if (format == EVAS_3D_INDEX_FORMAT_UNSIGNED_BYTE) + if (format == EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_BYTE) glDrawElements(mode, count, GL_UNSIGNED_BYTE, indices); - else if (format == EVAS_3D_INDEX_FORMAT_UNSIGNED_SHORT) + else if (format == EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_SHORT) glDrawElements(mode, count, GL_UNSIGNED_SHORT, indices); } static inline void _renderer_array_draw(E3D_Renderer *renderer EINA_UNUSED, - Evas_3D_Vertex_Assembly assembly, int count) + Evas_Canvas3D_Vertex_Assembly assembly, int count) { GLenum mode = _gl_assembly_get(assembly); @@ -176,7 +176,7 @@ _renderer_texture_bind(E3D_Renderer *renderer, E3D_Draw_Data *data) { int i; - for (i = 0; i < EVAS_3D_MATERIAL_ATTRIB_COUNT; i++) + for (i = 0; i < EVAS_CANVAS3D_MATERIAL_ATTRIB_COUNT; i++) { if (data->materials[i].tex0) { @@ -317,9 +317,9 @@ e3d_renderer_draw(E3D_Renderer *renderer, E3D_Draw_Data *data) /* Set up vertex attrib pointers. */ index = 0; - for (i = 0; i < EVAS_3D_VERTEX_ATTRIB_COUNT; i++) + for (i = 0; i < EVAS_CANVAS3D_VERTEX_ATTRIB_COUNT; i++) { - const Evas_3D_Vertex_Buffer *buffer; + const Evas_Canvas3D_Vertex_Buffer *buffer; buffer = &data->vertices[i].vertex0; diff --git a/src/modules/evas/engines/gl_common/evas_gl_3d_shader.c b/src/modules/evas/engines/gl_common/evas_gl_3d_shader.c index 694ce8a7e2..22fcced761 100644 --- a/src/modules/evas/engines/gl_common/evas_gl_3d_shader.c +++ b/src/modules/evas/engines/gl_common/evas_gl_3d_shader.c @@ -118,7 +118,7 @@ struct _E3D_Program GLuint prog; E3D_Shader_Flag flags; - Evas_3D_Shade_Mode mode; + Evas_Canvas3D_Shade_Mode mode; GLint uniform_locations[E3D_UNIFORM_COUNT]; }; @@ -410,103 +410,103 @@ _uniform_upload(E3D_Uniform u, GLint loc, const E3D_Draw_Data *data) break; } case E3D_UNIFORM_POSITION_WEIGHT: - glUniform1f(loc, data->vertices[EVAS_3D_VERTEX_POSITION].weight); + glUniform1f(loc, data->vertices[EVAS_CANVAS3D_VERTEX_POSITION].weight); break; case E3D_UNIFORM_NORMAL_WEIGHT: - glUniform1f(loc, data->vertices[EVAS_3D_VERTEX_NORMAL].weight); + glUniform1f(loc, data->vertices[EVAS_CANVAS3D_VERTEX_NORMAL].weight); break; case E3D_UNIFORM_TANGENT_WEIGHT: - glUniform1f(loc, data->vertices[EVAS_3D_VERTEX_TANGENT].weight); + glUniform1f(loc, data->vertices[EVAS_CANVAS3D_VERTEX_TANGENT].weight); break; case E3D_UNIFORM_COLOR_WEIGHT: - glUniform1f(loc, data->vertices[EVAS_3D_VERTEX_COLOR].weight); + glUniform1f(loc, data->vertices[EVAS_CANVAS3D_VERTEX_COLOR].weight); break; case E3D_UNIFORM_TEXCOORD_WEIGHT: - glUniform1f(loc, data->vertices[EVAS_3D_VERTEX_TEXCOORD].weight); + glUniform1f(loc, data->vertices[EVAS_CANVAS3D_VERTEX_TEXCOORD].weight); break; case E3D_UNIFORM_TEXTURE_WEIGHT_AMBIENT: - glUniform1f(loc, data->materials[EVAS_3D_MATERIAL_AMBIENT].texture_weight); + glUniform1f(loc, data->materials[EVAS_CANVAS3D_MATERIAL_AMBIENT].texture_weight); break; case E3D_UNIFORM_TEXTURE_WEIGHT_DIFFUSE: - glUniform1f(loc, data->materials[EVAS_3D_MATERIAL_DIFFUSE].texture_weight); + glUniform1f(loc, data->materials[EVAS_CANVAS3D_MATERIAL_DIFFUSE].texture_weight); break; case E3D_UNIFORM_TEXTURE_WEIGHT_SPECULAR: - glUniform1f(loc, data->materials[EVAS_3D_MATERIAL_SPECULAR].texture_weight); + glUniform1f(loc, data->materials[EVAS_CANVAS3D_MATERIAL_SPECULAR].texture_weight); break; case E3D_UNIFORM_TEXTURE_WEIGHT_EMISSION: - glUniform1f(loc, data->materials[EVAS_3D_MATERIAL_EMISSION].texture_weight); + glUniform1f(loc, data->materials[EVAS_CANVAS3D_MATERIAL_EMISSION].texture_weight); break; case E3D_UNIFORM_TEXTURE_WEIGHT_NORMAL: - glUniform1f(loc, data->materials[EVAS_3D_MATERIAL_NORMAL].texture_weight); + glUniform1f(loc, data->materials[EVAS_CANVAS3D_MATERIAL_NORMAL].texture_weight); break; case E3D_UNIFORM_TEXTURE_AMBIENT0: - glUniform1i(loc, data->materials[EVAS_3D_MATERIAL_AMBIENT].sampler0); + glUniform1i(loc, data->materials[EVAS_CANVAS3D_MATERIAL_AMBIENT].sampler0); break; case E3D_UNIFORM_TEXTURE_DIFFUSE0: - glUniform1i(loc, data->materials[EVAS_3D_MATERIAL_DIFFUSE].sampler0); + glUniform1i(loc, data->materials[EVAS_CANVAS3D_MATERIAL_DIFFUSE].sampler0); break; case E3D_UNIFORM_TEXTURE_SPECULAR0: - glUniform1i(loc, data->materials[EVAS_3D_MATERIAL_SPECULAR].sampler0); + glUniform1i(loc, data->materials[EVAS_CANVAS3D_MATERIAL_SPECULAR].sampler0); break; case E3D_UNIFORM_TEXTURE_EMISSION0: - glUniform1i(loc, data->materials[EVAS_3D_MATERIAL_EMISSION].sampler0); + glUniform1i(loc, data->materials[EVAS_CANVAS3D_MATERIAL_EMISSION].sampler0); break; case E3D_UNIFORM_TEXTURE_NORMAL0: - glUniform1i(loc, data->materials[EVAS_3D_MATERIAL_NORMAL].sampler0); + glUniform1i(loc, data->materials[EVAS_CANVAS3D_MATERIAL_NORMAL].sampler0); break; case E3D_UNIFORM_TEXTURE_AMBIENT1: - glUniform1i(loc, data->materials[EVAS_3D_MATERIAL_AMBIENT].sampler1); + glUniform1i(loc, data->materials[EVAS_CANVAS3D_MATERIAL_AMBIENT].sampler1); break; case E3D_UNIFORM_TEXTURE_DIFFUSE1: - glUniform1i(loc, data->materials[EVAS_3D_MATERIAL_DIFFUSE].sampler1); + glUniform1i(loc, data->materials[EVAS_CANVAS3D_MATERIAL_DIFFUSE].sampler1); break; case E3D_UNIFORM_TEXTURE_SPECULAR1: - glUniform1i(loc, data->materials[EVAS_3D_MATERIAL_SPECULAR].sampler1); + glUniform1i(loc, data->materials[EVAS_CANVAS3D_MATERIAL_SPECULAR].sampler1); break; case E3D_UNIFORM_TEXTURE_EMISSION1: - glUniform1i(loc, data->materials[EVAS_3D_MATERIAL_EMISSION].sampler1); + glUniform1i(loc, data->materials[EVAS_CANVAS3D_MATERIAL_EMISSION].sampler1); break; case E3D_UNIFORM_TEXTURE_NORMAL1: - glUniform1i(loc, data->materials[EVAS_3D_MATERIAL_NORMAL].sampler1); + glUniform1i(loc, data->materials[EVAS_CANVAS3D_MATERIAL_NORMAL].sampler1); break; case E3D_UNIFORM_TEXTURE_MATRIX_TRANSFORM_AMBIENT0: { - SET_TEX_COORD_TRANSFORM_MATRIX(EVAS_3D_MATERIAL_AMBIENT, 0) + SET_TEX_COORD_TRANSFORM_MATRIX(EVAS_CANVAS3D_MATERIAL_AMBIENT, 0) break; } case E3D_UNIFORM_TEXTURE_MATRIX_TRANSFORM_DIFFUSE0: { - SET_TEX_COORD_TRANSFORM_MATRIX(EVAS_3D_MATERIAL_DIFFUSE, 0) + SET_TEX_COORD_TRANSFORM_MATRIX(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 0) break; } case E3D_UNIFORM_TEXTURE_MATRIX_TRANSFORM_SPECULAR0: { - SET_TEX_COORD_TRANSFORM_MATRIX(EVAS_3D_MATERIAL_SPECULAR, 0) + SET_TEX_COORD_TRANSFORM_MATRIX(EVAS_CANVAS3D_MATERIAL_SPECULAR, 0) break; } case E3D_UNIFORM_TEXTURE_MATRIX_TRANSFORM_EMISSION0: { - SET_TEX_COORD_TRANSFORM_MATRIX(EVAS_3D_MATERIAL_EMISSION, 0) + SET_TEX_COORD_TRANSFORM_MATRIX(EVAS_CANVAS3D_MATERIAL_EMISSION, 0) break; } case E3D_UNIFORM_TEXTURE_MATRIX_TRANSFORM_NORMAL0: { - SET_TEX_COORD_TRANSFORM_MATRIX(EVAS_3D_MATERIAL_NORMAL, 0) + SET_TEX_COORD_TRANSFORM_MATRIX(EVAS_CANVAS3D_MATERIAL_NORMAL, 0) break; } case E3D_UNIFORM_TEXTURE_MATRIX_TRANSFORM_AMBIENT1: { - SET_TEX_COORD_TRANSFORM_MATRIX(EVAS_3D_MATERIAL_AMBIENT, 1) + SET_TEX_COORD_TRANSFORM_MATRIX(EVAS_CANVAS3D_MATERIAL_AMBIENT, 1) break; } case E3D_UNIFORM_TEXTURE_MATRIX_TRANSFORM_DIFFUSE1: { - SET_TEX_COORD_TRANSFORM_MATRIX(EVAS_3D_MATERIAL_DIFFUSE, 1) + SET_TEX_COORD_TRANSFORM_MATRIX(EVAS_CANVAS3D_MATERIAL_DIFFUSE, 1) break; } case E3D_UNIFORM_TEXTURE_MATRIX_TRANSFORM_SPECULAR1: { - SET_TEX_COORD_TRANSFORM_MATRIX(EVAS_3D_MATERIAL_SPECULAR, 1) + SET_TEX_COORD_TRANSFORM_MATRIX(EVAS_CANVAS3D_MATERIAL_SPECULAR, 1) break; } case E3D_UNIFORM_TEXTURE_MATRIX_TRANSFORM_EMISSION1: { - SET_TEX_COORD_TRANSFORM_MATRIX(EVAS_3D_MATERIAL_EMISSION, 1) + SET_TEX_COORD_TRANSFORM_MATRIX(EVAS_CANVAS3D_MATERIAL_EMISSION, 1) break; } case E3D_UNIFORM_TEXTURE_MATRIX_TRANSFORM_NORMAL1: { - SET_TEX_COORD_TRANSFORM_MATRIX(EVAS_3D_MATERIAL_NORMAL, 1) + SET_TEX_COORD_TRANSFORM_MATRIX(EVAS_CANVAS3D_MATERIAL_NORMAL, 1) break; } case E3D_UNIFORM_SHADOWMAP: @@ -545,31 +545,31 @@ _uniform_upload(E3D_Uniform u, GLint loc, const E3D_Draw_Data *data) break; case E3D_UNIFORM_MATERIAL_AMBIENT: glUniform4f(loc, - data->materials[EVAS_3D_MATERIAL_AMBIENT].color.r, - data->materials[EVAS_3D_MATERIAL_AMBIENT].color.g, - data->materials[EVAS_3D_MATERIAL_AMBIENT].color.b, - data->materials[EVAS_3D_MATERIAL_AMBIENT].color.a); + data->materials[EVAS_CANVAS3D_MATERIAL_AMBIENT].color.r, + data->materials[EVAS_CANVAS3D_MATERIAL_AMBIENT].color.g, + data->materials[EVAS_CANVAS3D_MATERIAL_AMBIENT].color.b, + data->materials[EVAS_CANVAS3D_MATERIAL_AMBIENT].color.a); break; case E3D_UNIFORM_MATERIAL_DIFFUSE: glUniform4f(loc, - data->materials[EVAS_3D_MATERIAL_DIFFUSE].color.r, - data->materials[EVAS_3D_MATERIAL_DIFFUSE].color.g, - data->materials[EVAS_3D_MATERIAL_DIFFUSE].color.b, - data->materials[EVAS_3D_MATERIAL_DIFFUSE].color.a); + data->materials[EVAS_CANVAS3D_MATERIAL_DIFFUSE].color.r, + data->materials[EVAS_CANVAS3D_MATERIAL_DIFFUSE].color.g, + data->materials[EVAS_CANVAS3D_MATERIAL_DIFFUSE].color.b, + data->materials[EVAS_CANVAS3D_MATERIAL_DIFFUSE].color.a); break; case E3D_UNIFORM_MATERIAL_SPECULAR: glUniform4f(loc, - data->materials[EVAS_3D_MATERIAL_SPECULAR].color.r, - data->materials[EVAS_3D_MATERIAL_SPECULAR].color.g, - data->materials[EVAS_3D_MATERIAL_SPECULAR].color.b, - data->materials[EVAS_3D_MATERIAL_SPECULAR].color.a); + data->materials[EVAS_CANVAS3D_MATERIAL_SPECULAR].color.r, + data->materials[EVAS_CANVAS3D_MATERIAL_SPECULAR].color.g, + data->materials[EVAS_CANVAS3D_MATERIAL_SPECULAR].color.b, + data->materials[EVAS_CANVAS3D_MATERIAL_SPECULAR].color.a); break; case E3D_UNIFORM_MATERIAL_EMISSION: glUniform4f(loc, - data->materials[EVAS_3D_MATERIAL_EMISSION].color.r, - data->materials[EVAS_3D_MATERIAL_EMISSION].color.g, - data->materials[EVAS_3D_MATERIAL_EMISSION].color.b, - data->materials[EVAS_3D_MATERIAL_EMISSION].color.a); + data->materials[EVAS_CANVAS3D_MATERIAL_EMISSION].color.r, + data->materials[EVAS_CANVAS3D_MATERIAL_EMISSION].color.g, + data->materials[EVAS_CANVAS3D_MATERIAL_EMISSION].color.b, + data->materials[EVAS_CANVAS3D_MATERIAL_EMISSION].color.a); break; case E3D_UNIFORM_MATERIAL_SHININESS: glUniform1f(loc, data->shininess); @@ -592,7 +592,7 @@ _uniform_upload(E3D_Uniform u, GLint loc, const E3D_Draw_Data *data) #endif case E3D_UNIFORM_ALPHATEST_COMPARISON: glUniform1i(loc, - (data->alpha_comparison ? data->alpha_comparison : EVAS_3D_COMPARISON_GREATER)); + (data->alpha_comparison ? data->alpha_comparison : EVAS_CANVAS3D_COMPARISON_GREATER)); break; case E3D_UNIFORM_ALPHATEST_REFVALUE: glUniform1f(loc, (data->alpha_ref_value ? data->alpha_ref_value : 0.0)); @@ -618,7 +618,7 @@ e3d_program_uniform_upload(E3D_Program *program, const E3D_Draw_Data *data) } E3D_Program * -e3d_program_new(Evas_3D_Shade_Mode mode, E3D_Shader_Flag flags) +e3d_program_new(Evas_Canvas3D_Shade_Mode mode, E3D_Shader_Flag flags) { E3D_Shader_String vert, frag; E3D_Program *program = NULL; @@ -690,7 +690,7 @@ e3d_program_id_get(const E3D_Program *program) return program->prog; } -Evas_3D_Shade_Mode +Evas_Canvas3D_Shade_Mode e3d_program_shade_mode_get(const E3D_Program *program) { return program->mode; diff --git a/src/modules/evas/engines/gl_generic/evas_engine.c b/src/modules/evas/engines/gl_generic/evas_engine.c index ddcab2cd04..35005ea140 100644 --- a/src/modules/evas/engines/gl_generic/evas_engine.c +++ b/src/modules/evas/engines/gl_generic/evas_engine.c @@ -2224,28 +2224,28 @@ eng_texture_size_get(void *data EINA_UNUSED, void *texture, int *w, int *h) static void eng_texture_wrap_set(void *data EINA_UNUSED, void *texture, - Evas_3D_Wrap_Mode s, Evas_3D_Wrap_Mode t) + Evas_Canvas3D_Wrap_Mode s, Evas_Canvas3D_Wrap_Mode t) { e3d_texture_wrap_set((E3D_Texture *)texture, s, t); } static void eng_texture_wrap_get(void *data EINA_UNUSED, void *texture, - Evas_3D_Wrap_Mode *s, Evas_3D_Wrap_Mode *t) + Evas_Canvas3D_Wrap_Mode *s, Evas_Canvas3D_Wrap_Mode *t) { e3d_texture_wrap_get((E3D_Texture *)texture, s, t); } static void eng_texture_filter_set(void *data EINA_UNUSED, void *texture, - Evas_3D_Texture_Filter min, Evas_3D_Texture_Filter mag) + Evas_Canvas3D_Texture_Filter min, Evas_Canvas3D_Texture_Filter mag) { e3d_texture_filter_set((E3D_Texture *)texture, min, mag); } static void eng_texture_filter_get(void *data EINA_UNUSED, void *texture, - Evas_3D_Texture_Filter *min, Evas_3D_Texture_Filter *mag) + Evas_Canvas3D_Texture_Filter *min, Evas_Canvas3D_Texture_Filter *mag) { e3d_texture_filter_get((E3D_Texture *)texture, min, mag); } diff --git a/src/modules/evas/model_loaders/eet/evas_model_load_eet.c b/src/modules/evas/model_loaders/eet/evas_model_load_eet.c index 815b9f1d50..803846d244 100644 --- a/src/modules/evas/model_loaders/eet/evas_model_load_eet.c +++ b/src/modules/evas/model_loaders/eet/evas_model_load_eet.c @@ -7,33 +7,33 @@ #include "evas_common_private.h" #include "evas_private.h" -extern Evas_3D_File_Eet* eet_file; -extern const char EVAS_3D_FILE_CACHE_FILE_ENTRY[]; +extern Evas_Canvas3D_File_Eet* eet_file; +extern const char EVAS_CANVAS3D_FILE_CACHE_FILE_ENTRY[]; extern Eet_Data_Descriptor *_file_descriptor; void -_set_geometry_to_mesh_from_eet_file(Evas_3D_Mesh *mesh, - Evas_3D_Mesh_Eet *eet_mesh) +_set_geometry_to_mesh_from_eet_file(Evas_Canvas3D_Mesh *mesh, + Evas_Canvas3D_Mesh_Eet *eet_mesh) { float *pos, *nor, *tex; int stride_pos, stride_nor, stride_tex, j; eo_do(mesh, - evas_3d_mesh_vertex_count_set(eet_mesh->geometries->vertices_count), - evas_3d_mesh_vertex_assembly_set(EVAS_3D_VERTEX_ASSEMBLY_TRIANGLES), - evas_3d_mesh_frame_add(0), + evas_canvas3d_mesh_vertex_count_set(eet_mesh->geometries->vertices_count), + evas_canvas3d_mesh_vertex_assembly_set(EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLES), + evas_canvas3d_mesh_frame_add(0), - evas_3d_mesh_frame_vertex_data_copy_set(0, EVAS_3D_VERTEX_POSITION, 0, NULL), - evas_3d_mesh_frame_vertex_data_copy_set(0, EVAS_3D_VERTEX_NORMAL, 0, NULL), - evas_3d_mesh_frame_vertex_data_copy_set(0, EVAS_3D_VERTEX_TEXCOORD, 0, NULL), + evas_canvas3d_mesh_frame_vertex_data_copy_set(0, EVAS_CANVAS3D_VERTEX_POSITION, 0, NULL), + evas_canvas3d_mesh_frame_vertex_data_copy_set(0, EVAS_CANVAS3D_VERTEX_NORMAL, 0, NULL), + evas_canvas3d_mesh_frame_vertex_data_copy_set(0, EVAS_CANVAS3D_VERTEX_TEXCOORD, 0, NULL), - pos = (float *)evas_3d_mesh_frame_vertex_data_map(0, EVAS_3D_VERTEX_POSITION), - nor = (float *)evas_3d_mesh_frame_vertex_data_map(0, EVAS_3D_VERTEX_NORMAL), - tex = (float *)evas_3d_mesh_frame_vertex_data_map(0, EVAS_3D_VERTEX_TEXCOORD), + pos = (float *)evas_canvas3d_mesh_frame_vertex_data_map(0, EVAS_CANVAS3D_VERTEX_POSITION), + nor = (float *)evas_canvas3d_mesh_frame_vertex_data_map(0, EVAS_CANVAS3D_VERTEX_NORMAL), + tex = (float *)evas_canvas3d_mesh_frame_vertex_data_map(0, EVAS_CANVAS3D_VERTEX_TEXCOORD), - stride_pos = evas_3d_mesh_frame_vertex_stride_get(0, EVAS_3D_VERTEX_POSITION), - stride_nor = evas_3d_mesh_frame_vertex_stride_get(0, EVAS_3D_VERTEX_NORMAL), - stride_tex = evas_3d_mesh_frame_vertex_stride_get(0, EVAS_3D_VERTEX_TEXCOORD)); + stride_pos = evas_canvas3d_mesh_frame_vertex_stride_get(0, EVAS_CANVAS3D_VERTEX_POSITION), + stride_nor = evas_canvas3d_mesh_frame_vertex_stride_get(0, EVAS_CANVAS3D_VERTEX_NORMAL), + stride_tex = evas_canvas3d_mesh_frame_vertex_stride_get(0, EVAS_CANVAS3D_VERTEX_TEXCOORD)); if (stride_pos == 0) stride_pos = sizeof(float) * 3; if (stride_nor == 0) stride_nor = sizeof(float) * 3; @@ -62,71 +62,71 @@ _set_geometry_to_mesh_from_eet_file(Evas_3D_Mesh *mesh, /* unmap vertex buffer */ eo_do(mesh, - evas_3d_mesh_frame_vertex_data_unmap(0, EVAS_3D_VERTEX_POSITION), - evas_3d_mesh_frame_vertex_data_unmap(0, EVAS_3D_VERTEX_NORMAL), - evas_3d_mesh_frame_vertex_data_unmap(0, EVAS_3D_VERTEX_TEXCOORD)); + evas_canvas3d_mesh_frame_vertex_data_unmap(0, EVAS_CANVAS3D_VERTEX_POSITION), + evas_canvas3d_mesh_frame_vertex_data_unmap(0, EVAS_CANVAS3D_VERTEX_NORMAL), + evas_canvas3d_mesh_frame_vertex_data_unmap(0, EVAS_CANVAS3D_VERTEX_TEXCOORD)); } void -_set_material_to_mesh_from_eet_file(Evas_3D_Mesh *mesh, - Evas_3D_Mesh_Eet *eet_mesh) +_set_material_to_mesh_from_eet_file(Evas_Canvas3D_Mesh *mesh, + Evas_Canvas3D_Mesh_Eet *eet_mesh) { - Evas_3D_Object_Data *pd = eo_data_scope_get(mesh, EVAS_3D_OBJECT_CLASS); + Evas_Canvas3D_Object_Data *pd = eo_data_scope_get(mesh, EVAS_CANVAS3D_OBJECT_CLASS); Eo *material = NULL; - material = eo_add(EVAS_3D_MATERIAL_CLASS, pd->evas); + material = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, pd->evas); eo_do(material, - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, !!(eet_mesh->materials->colors[0].a > 0)), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, !!(eet_mesh->materials->colors[1].a > 0)), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, !!(eet_mesh->materials->colors[2].a > 0)), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_NORMAL, EINA_TRUE), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, + evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_NORMAL, EINA_TRUE), + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_AMBIENT, eet_mesh->materials->colors[0].r, eet_mesh->materials->colors[0].g, eet_mesh->materials->colors[0].b, eet_mesh->materials->colors[0].a), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_DIFFUSE, eet_mesh->materials->colors[1].r, eet_mesh->materials->colors[1].g, eet_mesh->materials->colors[1].b, eet_mesh->materials->colors[1].a), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, + evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_SPECULAR, eet_mesh->materials->colors[2].r, eet_mesh->materials->colors[2].g, eet_mesh->materials->colors[2].b, eet_mesh->materials->colors[2].a), - evas_3d_material_shininess_set(eet_mesh->materials->shininess)); + evas_canvas3d_material_shininess_set(eet_mesh->materials->shininess)); - eo_do(mesh, evas_3d_mesh_frame_material_set(0, material)); + eo_do(mesh, evas_canvas3d_mesh_frame_material_set(0, material)); } void -evas_model_load_file_eet(Evas_3D_Mesh *mesh, Eina_File *file) +evas_model_load_file_eet(Evas_Canvas3D_Mesh *mesh, Eina_File *file) { Eet_File *ef; - _evas_3d_eet_file_init(); + _evas_canvas3d_eet_file_init(); ef = eet_mmap(file); eet_file = eet_data_read(ef, _file_descriptor, - EVAS_3D_FILE_CACHE_FILE_ENTRY); + EVAS_CANVAS3D_FILE_CACHE_FILE_ENTRY); eet_close(ef); if ((eet_file->mesh == NULL) || (eet_file->header == NULL)) { ERR("Reading of file is failed."); - _evas_3d_eet_file_free(); + _evas_canvas3d_eet_file_free(); return; } _set_geometry_to_mesh_from_eet_file(mesh, eet_file->mesh); _set_material_to_mesh_from_eet_file(mesh, eet_file->mesh); - _evas_3d_eet_file_free(); + _evas_canvas3d_eet_file_free(); } diff --git a/src/modules/evas/model_loaders/md2/evas_model_load_md2.c b/src/modules/evas/model_loaders/md2/evas_model_load_md2.c index 98989abed1..169b7f6023 100644 --- a/src/modules/evas/model_loaders/md2/evas_model_load_md2.c +++ b/src/modules/evas/model_loaders/md2/evas_model_load_md2.c @@ -318,14 +318,14 @@ error: } void -evas_model_load_file_md2(Evas_3D_Mesh *mesh, Eina_File *file) +evas_model_load_file_md2(Evas_Canvas3D_Mesh *mesh, Eina_File *file) { MD2_Loader loader; int i, j, k; float *pos, *nor, *tex; int stride_pos, stride_nor, stride_tex; float s_scale, t_scale; - Evas_3D_Mesh_Data *pd; + Evas_Canvas3D_Mesh_Data *pd; /* Initialize MD2 loader (Open file and read MD2 head ant etc) */ if (!_md2_loader_init(&loader, file)) @@ -338,8 +338,8 @@ evas_model_load_file_md2(Evas_3D_Mesh *mesh, Eina_File *file) t_scale = 1.0 / (float)(loader.skin_height - 1); eo_do(mesh, - evas_3d_mesh_vertex_count_set(loader.triangle_count * 3), - evas_3d_mesh_vertex_assembly_set(EVAS_3D_VERTEX_ASSEMBLY_TRIANGLES)); + evas_canvas3d_mesh_vertex_count_set(loader.triangle_count * 3), + evas_canvas3d_mesh_vertex_assembly_set(EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLES)); /* Load frames */ for (i = 0; i < loader.frame_count; i++) @@ -349,21 +349,21 @@ evas_model_load_file_md2(Evas_3D_Mesh *mesh, Eina_File *file) eo_do(mesh, /* Add a mesh frame. */ - evas_3d_mesh_frame_add(f), + evas_canvas3d_mesh_frame_add(f), /* Allocate vertex buffer for the frame. */ - evas_3d_mesh_frame_vertex_data_copy_set(f, EVAS_3D_VERTEX_POSITION, 0, NULL), - evas_3d_mesh_frame_vertex_data_copy_set(f, EVAS_3D_VERTEX_NORMAL, 0, NULL), - evas_3d_mesh_frame_vertex_data_copy_set(f, EVAS_3D_VERTEX_TEXCOORD, 0, NULL), + evas_canvas3d_mesh_frame_vertex_data_copy_set(f, EVAS_CANVAS3D_VERTEX_POSITION, 0, NULL), + evas_canvas3d_mesh_frame_vertex_data_copy_set(f, EVAS_CANVAS3D_VERTEX_NORMAL, 0, NULL), + evas_canvas3d_mesh_frame_vertex_data_copy_set(f, EVAS_CANVAS3D_VERTEX_TEXCOORD, 0, NULL), /* Map vertex buffer. */ - pos = (float *)evas_3d_mesh_frame_vertex_data_map(f, EVAS_3D_VERTEX_POSITION), - nor = (float *)evas_3d_mesh_frame_vertex_data_map(f, EVAS_3D_VERTEX_NORMAL), - tex = (float *)evas_3d_mesh_frame_vertex_data_map(f, EVAS_3D_VERTEX_TEXCOORD), + pos = (float *)evas_canvas3d_mesh_frame_vertex_data_map(f, EVAS_CANVAS3D_VERTEX_POSITION), + nor = (float *)evas_canvas3d_mesh_frame_vertex_data_map(f, EVAS_CANVAS3D_VERTEX_NORMAL), + tex = (float *)evas_canvas3d_mesh_frame_vertex_data_map(f, EVAS_CANVAS3D_VERTEX_TEXCOORD), - stride_pos = evas_3d_mesh_frame_vertex_stride_get(f, EVAS_3D_VERTEX_POSITION), - stride_nor = evas_3d_mesh_frame_vertex_stride_get(f, EVAS_3D_VERTEX_NORMAL), - stride_tex = evas_3d_mesh_frame_vertex_stride_get(f, EVAS_3D_VERTEX_TEXCOORD)); + stride_pos = evas_canvas3d_mesh_frame_vertex_stride_get(f, EVAS_CANVAS3D_VERTEX_POSITION), + stride_nor = evas_canvas3d_mesh_frame_vertex_stride_get(f, EVAS_CANVAS3D_VERTEX_NORMAL), + stride_tex = evas_canvas3d_mesh_frame_vertex_stride_get(f, EVAS_CANVAS3D_VERTEX_TEXCOORD)); if (stride_pos == 0) stride_pos = sizeof(float) * 3; @@ -405,13 +405,13 @@ evas_model_load_file_md2(Evas_3D_Mesh *mesh, Eina_File *file) /* Unmap vertex buffer. */ eo_do(mesh, - evas_3d_mesh_frame_vertex_data_unmap(f, EVAS_3D_VERTEX_POSITION), - evas_3d_mesh_frame_vertex_data_unmap(f, EVAS_3D_VERTEX_NORMAL), - evas_3d_mesh_frame_vertex_data_unmap(f, EVAS_3D_VERTEX_TEXCOORD)); + evas_canvas3d_mesh_frame_vertex_data_unmap(f, EVAS_CANVAS3D_VERTEX_POSITION), + evas_canvas3d_mesh_frame_vertex_data_unmap(f, EVAS_CANVAS3D_VERTEX_NORMAL), + evas_canvas3d_mesh_frame_vertex_data_unmap(f, EVAS_CANVAS3D_VERTEX_TEXCOORD)); - pd = eo_data_scope_get(mesh, EVAS_3D_MESH_CLASS); + pd = eo_data_scope_get(mesh, EVAS_CANVAS3D_MESH_CLASS); - if (!evas_3d_mesh_aabb_add_to_frame(pd, f, stride_pos)) + if (!evas_canvas3d_mesh_aabb_add_to_frame(pd, f, stride_pos)) { ERR("Axis-Aligned Bounding Box wasn't added in frame %d ", f); } diff --git a/src/modules/evas/model_loaders/obj/evas_model_load_obj.c b/src/modules/evas/model_loaders/obj/evas_model_load_obj.c index e1fdf48dbd..ccb65ea48d 100644 --- a/src/modules/evas/model_loaders/obj/evas_model_load_obj.c +++ b/src/modules/evas/model_loaders/obj/evas_model_load_obj.c @@ -217,7 +217,7 @@ _read_point(int *triangles, } void -evas_model_load_file_obj(Evas_3D_Mesh *mesh, Eina_File *file) +evas_model_load_file_obj(Evas_Canvas3D_Mesh *mesh, Eina_File *file) { long i; OBJ_Counts counts;//count elements of mesh in .obj @@ -373,24 +373,24 @@ evas_model_load_file_obj(Evas_3D_Mesh *mesh, Eina_File *file) /* prepare of mesh and take pointers to data which must be read */ eo_do(mesh, - evas_3d_mesh_vertex_count_set(counts._triangles_counter * 3), - evas_3d_mesh_vertex_assembly_set(EVAS_3D_VERTEX_ASSEMBLY_TRIANGLES), - evas_3d_mesh_frame_add(0), - evas_3d_mesh_frame_vertex_data_copy_set(0, EVAS_3D_VERTEX_POSITION, 0, NULL), - pos = (float *)evas_3d_mesh_frame_vertex_data_map(0, EVAS_3D_VERTEX_POSITION), - stride_pos = evas_3d_mesh_frame_vertex_stride_get(0, EVAS_3D_VERTEX_POSITION)); + evas_canvas3d_mesh_vertex_count_set(counts._triangles_counter * 3), + evas_canvas3d_mesh_vertex_assembly_set(EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLES), + evas_canvas3d_mesh_frame_add(0), + evas_canvas3d_mesh_frame_vertex_data_copy_set(0, EVAS_CANVAS3D_VERTEX_POSITION, 0, NULL), + pos = (float *)evas_canvas3d_mesh_frame_vertex_data_map(0, EVAS_CANVAS3D_VERTEX_POSITION), + stride_pos = evas_canvas3d_mesh_frame_vertex_stride_get(0, EVAS_CANVAS3D_VERTEX_POSITION)); if (counts.existence_of_normal) eo_do(mesh, - evas_3d_mesh_frame_vertex_data_copy_set(0, EVAS_3D_VERTEX_NORMAL, 0, NULL), - nor = (float *)evas_3d_mesh_frame_vertex_data_map(0, EVAS_3D_VERTEX_NORMAL), - stride_nor = evas_3d_mesh_frame_vertex_stride_get(0, EVAS_3D_VERTEX_NORMAL)); + evas_canvas3d_mesh_frame_vertex_data_copy_set(0, EVAS_CANVAS3D_VERTEX_NORMAL, 0, NULL), + nor = (float *)evas_canvas3d_mesh_frame_vertex_data_map(0, EVAS_CANVAS3D_VERTEX_NORMAL), + stride_nor = evas_canvas3d_mesh_frame_vertex_stride_get(0, EVAS_CANVAS3D_VERTEX_NORMAL)); if (counts.existence_of_tex_point) eo_do(mesh, - evas_3d_mesh_frame_vertex_data_copy_set(0, EVAS_3D_VERTEX_TEXCOORD, 0, NULL), - tex = (float *)evas_3d_mesh_frame_vertex_data_map(0, EVAS_3D_VERTEX_TEXCOORD), - stride_tex = evas_3d_mesh_frame_vertex_stride_get(0, EVAS_3D_VERTEX_TEXCOORD)); + evas_canvas3d_mesh_frame_vertex_data_copy_set(0, EVAS_CANVAS3D_VERTEX_TEXCOORD, 0, NULL), + tex = (float *)evas_canvas3d_mesh_frame_vertex_data_map(0, EVAS_CANVAS3D_VERTEX_TEXCOORD), + stride_tex = evas_canvas3d_mesh_frame_vertex_stride_get(0, EVAS_CANVAS3D_VERTEX_TEXCOORD)); if (stride_pos == 0) stride_pos = sizeof(float) * 3; if ((counts.existence_of_normal) && (stride_nor == 0)) @@ -437,15 +437,15 @@ evas_model_load_file_obj(Evas_3D_Mesh *mesh, Eina_File *file) free(_triangles); /* Unmap vertex buffer. */ - eo_do(mesh, evas_3d_mesh_frame_vertex_data_unmap(0, EVAS_3D_VERTEX_POSITION)); + eo_do(mesh, evas_canvas3d_mesh_frame_vertex_data_unmap(0, EVAS_CANVAS3D_VERTEX_POSITION)); if (counts.existence_of_normal) - eo_do(mesh, evas_3d_mesh_frame_vertex_data_unmap(0, EVAS_3D_VERTEX_NORMAL)); + eo_do(mesh, evas_canvas3d_mesh_frame_vertex_data_unmap(0, EVAS_CANVAS3D_VERTEX_NORMAL)); if (counts.existence_of_tex_point) - eo_do(mesh, evas_3d_mesh_frame_vertex_data_unmap(0, EVAS_3D_VERTEX_TEXCOORD)); + eo_do(mesh, evas_canvas3d_mesh_frame_vertex_data_unmap(0, EVAS_CANVAS3D_VERTEX_TEXCOORD)); - Evas_3D_Mesh_Data *pd = eo_data_scope_get(mesh, EVAS_3D_MESH_CLASS); + Evas_Canvas3D_Mesh_Data *pd = eo_data_scope_get(mesh, EVAS_CANVAS3D_MESH_CLASS); - if (!evas_3d_mesh_aabb_add_to_frame(pd, 0, stride_pos)) + if (!evas_canvas3d_mesh_aabb_add_to_frame(pd, 0, stride_pos)) { ERR("Axis-Aligned Bounding Box wan't added in frame %d ", 0); } diff --git a/src/modules/evas/model_loaders/ply/evas_model_load_ply.c b/src/modules/evas/model_loaders/ply/evas_model_load_ply.c index 0eac908dd8..7812780fb7 100644 --- a/src/modules/evas/model_loaders/ply/evas_model_load_ply.c +++ b/src/modules/evas/model_loaders/ply/evas_model_load_ply.c @@ -178,9 +178,9 @@ _read_header(char *map)//Check properties of mesh in .ply file. } void -evas_model_load_file_ply(Evas_3D_Mesh *mesh, Eina_File *file) +evas_model_load_file_ply(Evas_Canvas3D_Mesh *mesh, Eina_File *file) { - Evas_3D_Mesh_Data *pd; + Evas_Canvas3D_Mesh_Data *pd; int i = 0, j = 0, k = 0, count_of_triangles_in_line = 0; float *pos, *nor, *tex, *col; int stride_pos, stride_nor, stride_tex, stride_col; @@ -275,23 +275,23 @@ evas_model_load_file_ply(Evas_3D_Mesh *mesh, Eina_File *file) /* prepare of mesh and take pointers to data which must be read */ eo_do(mesh, - evas_3d_mesh_vertex_count_set(header.triangles_count * 3), - evas_3d_mesh_vertex_assembly_set(EVAS_3D_VERTEX_ASSEMBLY_TRIANGLES), - evas_3d_mesh_frame_add(0), - evas_3d_mesh_frame_vertex_data_copy_set(0, EVAS_3D_VERTEX_POSITION, 0, NULL), - evas_3d_mesh_frame_vertex_data_copy_set(0, EVAS_3D_VERTEX_NORMAL, 0, NULL), - evas_3d_mesh_frame_vertex_data_copy_set(0, EVAS_3D_VERTEX_TEXCOORD, 0, NULL), - evas_3d_mesh_frame_vertex_data_copy_set(0, EVAS_3D_VERTEX_COLOR, 0, NULL), - - pos = (float *)evas_3d_mesh_frame_vertex_data_map(0, EVAS_3D_VERTEX_POSITION), - nor = (float *)evas_3d_mesh_frame_vertex_data_map(0, EVAS_3D_VERTEX_NORMAL), - tex = (float *)evas_3d_mesh_frame_vertex_data_map(0, EVAS_3D_VERTEX_TEXCOORD), - col = (float *)evas_3d_mesh_frame_vertex_data_map(0, EVAS_3D_VERTEX_COLOR), - - stride_pos = evas_3d_mesh_frame_vertex_stride_get(0, EVAS_3D_VERTEX_POSITION), - stride_nor = evas_3d_mesh_frame_vertex_stride_get(0, EVAS_3D_VERTEX_NORMAL), - stride_tex = evas_3d_mesh_frame_vertex_stride_get(0, EVAS_3D_VERTEX_TEXCOORD), - stride_col = evas_3d_mesh_frame_vertex_stride_get(0, EVAS_3D_VERTEX_COLOR)); + evas_canvas3d_mesh_vertex_count_set(header.triangles_count * 3), + evas_canvas3d_mesh_vertex_assembly_set(EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLES), + evas_canvas3d_mesh_frame_add(0), + evas_canvas3d_mesh_frame_vertex_data_copy_set(0, EVAS_CANVAS3D_VERTEX_POSITION, 0, NULL), + evas_canvas3d_mesh_frame_vertex_data_copy_set(0, EVAS_CANVAS3D_VERTEX_NORMAL, 0, NULL), + evas_canvas3d_mesh_frame_vertex_data_copy_set(0, EVAS_CANVAS3D_VERTEX_TEXCOORD, 0, NULL), + evas_canvas3d_mesh_frame_vertex_data_copy_set(0, EVAS_CANVAS3D_VERTEX_COLOR, 0, NULL), + + pos = (float *)evas_canvas3d_mesh_frame_vertex_data_map(0, EVAS_CANVAS3D_VERTEX_POSITION), + nor = (float *)evas_canvas3d_mesh_frame_vertex_data_map(0, EVAS_CANVAS3D_VERTEX_NORMAL), + tex = (float *)evas_canvas3d_mesh_frame_vertex_data_map(0, EVAS_CANVAS3D_VERTEX_TEXCOORD), + col = (float *)evas_canvas3d_mesh_frame_vertex_data_map(0, EVAS_CANVAS3D_VERTEX_COLOR), + + stride_pos = evas_canvas3d_mesh_frame_vertex_stride_get(0, EVAS_CANVAS3D_VERTEX_POSITION), + stride_nor = evas_canvas3d_mesh_frame_vertex_stride_get(0, EVAS_CANVAS3D_VERTEX_NORMAL), + stride_tex = evas_canvas3d_mesh_frame_vertex_stride_get(0, EVAS_CANVAS3D_VERTEX_TEXCOORD), + stride_col = evas_canvas3d_mesh_frame_vertex_stride_get(0, EVAS_CANVAS3D_VERTEX_COLOR)); if (stride_pos == 0) stride_pos = sizeof(float) * 3; if (stride_nor == 0) stride_nor = sizeof(float) * 3; @@ -366,14 +366,14 @@ evas_model_load_file_ply(Evas_3D_Mesh *mesh, Eina_File *file) /* Unmap vertex buffer. */ eo_do(mesh, - evas_3d_mesh_frame_vertex_data_unmap(0, EVAS_3D_VERTEX_POSITION), - evas_3d_mesh_frame_vertex_data_unmap(0, EVAS_3D_VERTEX_NORMAL), - evas_3d_mesh_frame_vertex_data_unmap(0, EVAS_3D_VERTEX_TEXCOORD), - evas_3d_mesh_frame_vertex_data_unmap(0, EVAS_3D_VERTEX_COLOR)); + evas_canvas3d_mesh_frame_vertex_data_unmap(0, EVAS_CANVAS3D_VERTEX_POSITION), + evas_canvas3d_mesh_frame_vertex_data_unmap(0, EVAS_CANVAS3D_VERTEX_NORMAL), + evas_canvas3d_mesh_frame_vertex_data_unmap(0, EVAS_CANVAS3D_VERTEX_TEXCOORD), + evas_canvas3d_mesh_frame_vertex_data_unmap(0, EVAS_CANVAS3D_VERTEX_COLOR)); - pd = eo_data_scope_get(mesh, EVAS_3D_MESH_CLASS); + pd = eo_data_scope_get(mesh, EVAS_CANVAS3D_MESH_CLASS); - if (!evas_3d_mesh_aabb_add_to_frame(pd, 0, stride_pos)) + if (!evas_canvas3d_mesh_aabb_add_to_frame(pd, 0, stride_pos)) { ERR("Axis-Aligned Bounding Box wan't added in frame %d ", 0); } diff --git a/src/modules/evas/model_savers/eet/evas_model_save_eet.c b/src/modules/evas/model_savers/eet/evas_model_save_eet.c index 9f4365b7e6..97ac9454f3 100644 --- a/src/modules/evas/model_savers/eet/evas_model_save_eet.c +++ b/src/modules/evas/model_savers/eet/evas_model_save_eet.c @@ -9,23 +9,23 @@ #define COMPONENT_OF_DEFAULT_GREY_COLOR 0.3 #define TRANSPARENCY_OF_DEFAULT_GREY_COLOR 0.5 -extern Evas_3D_File_Eet* eet_file; -extern const char EVAS_3D_FILE_CACHE_FILE_ENTRY[]; +extern Evas_Canvas3D_File_Eet* eet_file; +extern const char EVAS_CANVAS3D_FILE_CACHE_FILE_ENTRY[]; extern Eet_Data_Descriptor *_file_descriptor; void -_set_geometry_to_eet_file_from_mesh(Evas_3D_Mesh_Data *mesh, - Evas_3D_Mesh_Eet *eet_mesh, - Evas_3D_Header_Eet *eet_header, - Evas_3D_Mesh_Frame *f) +_set_geometry_to_eet_file_from_mesh(Evas_Canvas3D_Mesh_Data *mesh, + Evas_Canvas3D_Mesh_Eet *eet_mesh, + Evas_Canvas3D_Header_Eet *eet_header, + Evas_Canvas3D_Mesh_Frame *f) { - Evas_3D_Vertex_Buffer *vb; + Evas_Canvas3D_Vertex_Buffer *vb; int i; float *src; - Evas_3D_Vertex_Eet *vertices = - malloc(sizeof(Evas_3D_Vertex_Eet) * mesh->vertex_count); - Evas_3D_Geometry_Eet *geometry = - malloc(sizeof(Evas_3D_Geometry_Eet)); + Evas_Canvas3D_Vertex_Eet *vertices = + malloc(sizeof(Evas_Canvas3D_Vertex_Eet) * mesh->vertex_count); + Evas_Canvas3D_Geometry_Eet *geometry = + malloc(sizeof(Evas_Canvas3D_Geometry_Eet)); int *geometries = malloc(sizeof(int)); if ((vertices == NULL) || (geometry == NULL)) @@ -59,9 +59,9 @@ _set_geometry_to_eet_file_from_mesh(Evas_3D_Mesh_Data *mesh, src += f->vertices[a].element_count;\ } geometry->vertices = vertices; - SAVE_GEOMETRICS(EVAS_3D_VERTEX_POSITION, position, vertices[i].position.z = src[2];) - SAVE_GEOMETRICS(EVAS_3D_VERTEX_NORMAL, normal, vertices[i].normal.z = src[2];) - SAVE_GEOMETRICS(EVAS_3D_VERTEX_TEXCOORD, texcoord,) + SAVE_GEOMETRICS(EVAS_CANVAS3D_VERTEX_POSITION, position, vertices[i].position.z = src[2];) + SAVE_GEOMETRICS(EVAS_CANVAS3D_VERTEX_NORMAL, normal, vertices[i].normal.z = src[2];) + SAVE_GEOMETRICS(EVAS_CANVAS3D_VERTEX_TEXCOORD, texcoord,) #undef SAVE_GEOMETRICS eet_mesh->geometries = geometry; @@ -69,17 +69,17 @@ _set_geometry_to_eet_file_from_mesh(Evas_3D_Mesh_Data *mesh, } void -_set_material_to_eet_file_from_mesh(Evas_3D_Mesh_Eet *eet_mesh, - Evas_3D_Header_Eet *eet_header, - Evas_3D_Mesh_Frame *f) +_set_material_to_eet_file_from_mesh(Evas_Canvas3D_Mesh_Eet *eet_mesh, + Evas_Canvas3D_Header_Eet *eet_header, + Evas_Canvas3D_Mesh_Frame *f) { int i; - Evas_3D_Material_Data *material = - eo_data_scope_get(f->material, EVAS_3D_MATERIAL_CLASS); - Evas_3D_Material_Eet *saved_materials = - malloc(sizeof(Evas_3D_Material_Eet)); - Evas_3D_Color_Eet *saved_colors = - malloc(sizeof(Evas_3D_Color_Eet) * EVAS_3D_MATERIAL_ATTRIB_COUNT); + Evas_Canvas3D_Material_Data *material = + eo_data_scope_get(f->material, EVAS_CANVAS3D_MATERIAL_CLASS); + Evas_Canvas3D_Material_Eet *saved_materials = + malloc(sizeof(Evas_Canvas3D_Material_Eet)); + Evas_Canvas3D_Color_Eet *saved_colors = + malloc(sizeof(Evas_Canvas3D_Color_Eet) * EVAS_CANVAS3D_MATERIAL_ATTRIB_COUNT); int *materials = malloc(sizeof(int)); if ((saved_materials == NULL) || (saved_colors == NULL)) @@ -121,8 +121,8 @@ _set_material_to_eet_file_from_mesh(Evas_3D_Mesh_Eet *eet_mesh, saved_materials->shininess = material->shininess; } - saved_materials->colors_count = EVAS_3D_MATERIAL_ATTRIB_COUNT; - materials[0] = EVAS_3D_MATERIAL_ATTRIB_COUNT; + saved_materials->colors_count = EVAS_CANVAS3D_MATERIAL_ATTRIB_COUNT; + materials[0] = EVAS_CANVAS3D_MATERIAL_ATTRIB_COUNT; saved_materials->id = 1; saved_materials->colors = saved_colors; eet_mesh->materials = saved_materials; @@ -130,9 +130,9 @@ _set_material_to_eet_file_from_mesh(Evas_3D_Mesh_Eet *eet_mesh, } void -_set_frame_to_eet_file_from_mesh(Evas_3D_Mesh_Eet *eet_mesh) +_set_frame_to_eet_file_from_mesh(Evas_Canvas3D_Mesh_Eet *eet_mesh) { - eet_mesh->frames = malloc(sizeof(Evas_3D_Frame_Eet)); + eet_mesh->frames = malloc(sizeof(Evas_Canvas3D_Frame_Eet)); if (eet_mesh->frames == NULL) { @@ -146,18 +146,18 @@ _set_frame_to_eet_file_from_mesh(Evas_3D_Mesh_Eet *eet_mesh) } void -evas_model_save_file_eet(Evas_3D_Mesh *mesh, +evas_model_save_file_eet(Evas_Canvas3D_Mesh *mesh, const char *file, - Evas_3D_Mesh_Frame *f) + Evas_Canvas3D_Mesh_Frame *f) { - Evas_3D_Mesh_Data *pd = eo_data_scope_get(mesh, EVAS_3D_MESH_CLASS); + Evas_Canvas3D_Mesh_Data *pd = eo_data_scope_get(mesh, EVAS_CANVAS3D_MESH_CLASS); Eet_File *ef = eet_open(file, EET_FILE_MODE_WRITE); - Evas_3D_Mesh_Eet* eet_mesh = malloc(sizeof(Evas_3D_Mesh_Eet)); - Evas_3D_Header_Eet* eet_header = malloc(sizeof(Evas_3D_Header_Eet)); + Evas_Canvas3D_Mesh_Eet* eet_mesh = malloc(sizeof(Evas_Canvas3D_Mesh_Eet)); + Evas_Canvas3D_Header_Eet* eet_header = malloc(sizeof(Evas_Canvas3D_Header_Eet)); - _evas_3d_eet_file_init(); + _evas_canvas3d_eet_file_init(); - eet_file = _evas_3d_eet_file_new(); + eet_file = _evas_canvas3d_eet_file_new(); eet_mesh->materials_count = 1; eet_header->materials_count = 1; @@ -176,7 +176,7 @@ evas_model_save_file_eet(Evas_3D_Mesh *mesh, ERR("Opening of file is failed."); free(eet_mesh); free(eet_header); - _evas_3d_eet_file_free(); + _evas_canvas3d_eet_file_free(); return; } @@ -185,11 +185,11 @@ evas_model_save_file_eet(Evas_3D_Mesh *mesh, eet_data_write(ef, _file_descriptor, - EVAS_3D_FILE_CACHE_FILE_ENTRY, + EVAS_CANVAS3D_FILE_CACHE_FILE_ENTRY, eet_file, EINA_TRUE); eet_close(ef); - _evas_3d_eet_file_free(); + _evas_canvas3d_eet_file_free(); } diff --git a/src/modules/evas/model_savers/obj/evas_model_save_obj.c b/src/modules/evas/model_savers/obj/evas_model_save_obj.c index 00f8a76cc4..0d4cd1efdf 100644 --- a/src/modules/evas/model_savers/obj/evas_model_save_obj.c +++ b/src/modules/evas/model_savers/obj/evas_model_save_obj.c @@ -20,7 +20,7 @@ for (i = 0; i < pd->vertex_count; i++) \ { \ fprintf(_obj_file, format, src[0], src[1]); \ - if (a != EVAS_3D_VERTEX_TEXCOORD) \ + if (a != EVAS_CANVAS3D_VERTEX_TEXCOORD) \ fprintf(_obj_file, " %.4f", src[2]); \ fprintf(_obj_file, "\n"); \ src += f->vertices[a].element_count; \ @@ -57,9 +57,9 @@ _write_point(FILE * obj_file, } static void -_save_mesh(Evas_3D_Mesh_Data *pd, const char *_obj_file_name, Evas_3D_Mesh_Frame *f) +_save_mesh(Evas_Canvas3D_Mesh_Data *pd, const char *_obj_file_name, Evas_Canvas3D_Mesh_Frame *f) { - Evas_3D_Vertex_Buffer *vb; + Evas_Canvas3D_Vertex_Buffer *vb; time_t current_time; char* c_time_string; int i; @@ -103,12 +103,12 @@ _save_mesh(Evas_3D_Mesh_Data *pd, const char *_obj_file_name, Evas_3D_Mesh_Frame return; } - SAVE_GEOMETRICS(EVAS_3D_VERTEX_POSITION, "v %.4f %.4f") - SAVE_GEOMETRICS(EVAS_3D_VERTEX_NORMAL, "vn %.4f %.4f") - SAVE_GEOMETRICS(EVAS_3D_VERTEX_TEXCOORD, "vt %.4f %.4f") + SAVE_GEOMETRICS(EVAS_CANVAS3D_VERTEX_POSITION, "v %.4f %.4f") + SAVE_GEOMETRICS(EVAS_CANVAS3D_VERTEX_NORMAL, "vn %.4f %.4f") + SAVE_GEOMETRICS(EVAS_CANVAS3D_VERTEX_TEXCOORD, "vt %.4f %.4f") - existence_of_normal = (f->vertices[EVAS_3D_VERTEX_NORMAL].data != NULL); - existence_of_tex_point = (f->vertices[EVAS_3D_VERTEX_TEXCOORD].data != NULL); + existence_of_normal = (f->vertices[EVAS_CANVAS3D_VERTEX_NORMAL].data != NULL); + existence_of_tex_point = (f->vertices[EVAS_CANVAS3D_VERTEX_TEXCOORD].data != NULL); fprintf(_obj_file,"usemtl Material\n s off\n"); for (i = 1; i <= pd->vertex_count; i++)//numeration of faces in .obj started from 1 @@ -123,9 +123,9 @@ _save_mesh(Evas_3D_Mesh_Data *pd, const char *_obj_file_name, Evas_3D_Mesh_Frame } static void -_save_material(Evas_3D_Mesh_Data *pd EINA_UNUSED, +_save_material(Evas_Canvas3D_Mesh_Data *pd EINA_UNUSED, const char *_mtl_file_name, - Evas_3D_Material_Data *mat) + Evas_Canvas3D_Material_Data *mat) { OPEN_FILE(mtl) if (!_mtl_file) @@ -138,17 +138,17 @@ _save_material(Evas_3D_Mesh_Data *pd EINA_UNUSED, fprintf(_mtl_file, "newmtl Material \n"); fprintf(_mtl_file, "Ns 1.000000 \n");//exp factor for specular highlight fprintf(_mtl_file, "Ka %.6f %.6f %.6f \n", - (float)mat->attribs[EVAS_3D_MATERIAL_AMBIENT].color.r, - (float)mat->attribs[EVAS_3D_MATERIAL_AMBIENT].color.g, - (float)mat->attribs[EVAS_3D_MATERIAL_AMBIENT].color.b); + (float)mat->attribs[EVAS_CANVAS3D_MATERIAL_AMBIENT].color.r, + (float)mat->attribs[EVAS_CANVAS3D_MATERIAL_AMBIENT].color.g, + (float)mat->attribs[EVAS_CANVAS3D_MATERIAL_AMBIENT].color.b); fprintf(_mtl_file, "Kd %.6f %.6f %.6f \n", - (float)mat->attribs[EVAS_3D_MATERIAL_DIFFUSE].color.r, - (float)mat->attribs[EVAS_3D_MATERIAL_DIFFUSE].color.g, - (float)mat->attribs[EVAS_3D_MATERIAL_DIFFUSE].color.b); + (float)mat->attribs[EVAS_CANVAS3D_MATERIAL_DIFFUSE].color.r, + (float)mat->attribs[EVAS_CANVAS3D_MATERIAL_DIFFUSE].color.g, + (float)mat->attribs[EVAS_CANVAS3D_MATERIAL_DIFFUSE].color.b); fprintf(_mtl_file, "Ks %.6f %.6f %.6f \n", - (float)mat->attribs[EVAS_3D_MATERIAL_SPECULAR].color.r, - (float)mat->attribs[EVAS_3D_MATERIAL_SPECULAR].color.g, - (float)mat->attribs[EVAS_3D_MATERIAL_SPECULAR].color.b); + (float)mat->attribs[EVAS_CANVAS3D_MATERIAL_SPECULAR].color.r, + (float)mat->attribs[EVAS_CANVAS3D_MATERIAL_SPECULAR].color.g, + (float)mat->attribs[EVAS_CANVAS3D_MATERIAL_SPECULAR].color.b); fprintf(_mtl_file, "Ni 1.000000 \n");//optical density fprintf(_mtl_file, "d 1.000000 \n");//a factor d of 1.0 is fully opaque material fprintf(_mtl_file, "illum 2 \n");//illumination properties @@ -157,20 +157,20 @@ _save_material(Evas_3D_Mesh_Data *pd EINA_UNUSED, } void -evas_model_save_file_obj(Evas_3D_Mesh *mesh, const char *_obj_file_name, Evas_3D_Mesh_Frame *f) +evas_model_save_file_obj(Evas_Canvas3D_Mesh *mesh, const char *_obj_file_name, Evas_Canvas3D_Mesh_Frame *f) { int len; char *_mtl_file_name, *_without_extention; - Evas_3D_Material_Data *mat; + Evas_Canvas3D_Material_Data *mat; len = strlen(_obj_file_name); _without_extention = (char *)malloc(len - 3); _mtl_file_name = (char *)malloc(len + 1); - Evas_3D_Mesh_Data *pd = eo_data_scope_get(mesh, EVAS_3D_MESH_CLASS); + Evas_Canvas3D_Mesh_Data *pd = eo_data_scope_get(mesh, EVAS_CANVAS3D_MESH_CLASS); _save_mesh(pd, _obj_file_name, f); - mat = eo_data_scope_get(f->material, EVAS_3D_MATERIAL_CLASS); + mat = eo_data_scope_get(f->material, EVAS_CANVAS3D_MATERIAL_CLASS); if (mat != NULL) { eina_strlcpy(_without_extention, _obj_file_name, len - 3); diff --git a/src/modules/evas/model_savers/ply/evas_model_save_ply.c b/src/modules/evas/model_savers/ply/evas_model_save_ply.c index b99f080eec..6ebddb046c 100644 --- a/src/modules/evas/model_savers/ply/evas_model_save_ply.c +++ b/src/modules/evas/model_savers/ply/evas_model_save_ply.c @@ -10,12 +10,12 @@ #include "evas_private.h" void -evas_model_save_file_ply(Evas_3D_Mesh *mesh, const char *file, Evas_3D_Mesh_Frame *f) +evas_model_save_file_ply(Evas_Canvas3D_Mesh *mesh, const char *file, Evas_Canvas3D_Mesh_Frame *f) { float *src_pos, *src_nor, *src_tex, *src_col; int i; - Evas_3D_Mesh_Data *pd = eo_data_scope_get(mesh, EVAS_3D_MESH_CLASS); + Evas_Canvas3D_Mesh_Data *pd = eo_data_scope_get(mesh, EVAS_CANVAS3D_MESH_CLASS); FILE *_ply_file = fopen(file, "w+"); if (!_ply_file) { @@ -23,7 +23,7 @@ evas_model_save_file_ply(Evas_3D_Mesh *mesh, const char *file, Evas_3D_Mesh_Fram return; } - fprintf(_ply_file,"ply\nformat ascii 1.0\ncomment Created by EFL evas_3d_mesh_saver_ply.c" \ + fprintf(_ply_file,"ply\nformat ascii 1.0\ncomment Created by EFL evas_canvas3d_mesh_saver_ply.c" \ "version 1 (sub 0) - www.enlightenment.org, source file: ''\n"); fprintf(_ply_file,"element vertex %d\n", pd->vertex_count); fprintf(_ply_file,"property float x\nproperty float y\nproperty float z\n" \ @@ -33,10 +33,10 @@ evas_model_save_file_ply(Evas_3D_Mesh *mesh, const char *file, Evas_3D_Mesh_Fram fprintf(_ply_file,"element face %d\nproperty list uchar uint vertex_indices\nend_header\n", pd->vertex_count / 3); - src_pos = (float*)(&f->vertices[EVAS_3D_VERTEX_POSITION])->data; - src_nor = (float*)(&f->vertices[EVAS_3D_VERTEX_NORMAL])->data; - src_tex = (float*)(&f->vertices[EVAS_3D_VERTEX_TEXCOORD])->data; - src_col = (float*)(&f->vertices[EVAS_3D_VERTEX_COLOR])->data; + src_pos = (float*)(&f->vertices[EVAS_CANVAS3D_VERTEX_POSITION])->data; + src_nor = (float*)(&f->vertices[EVAS_CANVAS3D_VERTEX_NORMAL])->data; + src_tex = (float*)(&f->vertices[EVAS_CANVAS3D_VERTEX_TEXCOORD])->data; + src_col = (float*)(&f->vertices[EVAS_CANVAS3D_VERTEX_COLOR])->data; for (i = 0; i < pd->vertex_count; i++) { |