examples/unsorted/evas
Bogdan Devichev 83ba92a678 evas: Evas_3D - iport/export of Obj format can be read even if obj-file does not have normals or tex-coords.
Summary:
This commit fixed several bugs, and show what was be fixed.

Bugs:
- When designer save obj file in Blender, he/she can set flags (fig 1). Normals and UV coords flags was necessary  for obj loader. Loader crushed when they are not set as true. It fixed by this commit.
- Another loaders set default values to data which aren't in loading file, so mesh need more memory for unused data. It fixed by this commit for obj and will be fixed for another formats in future.
- Saver saved incorrect data if normals or tex_coords was not set in mesh in evas. Now it fixed.
- Saver failed if it save mesh without material. It fixed and in this case material file is not created now.
- Also fixed some leaks and undefined behavior which valgrind shows.

Example:
- Example shows cases described above. Example use files saved with different flags for it.

Resources:
- man_mesh is replaced by several smaller file, to use them for showing new features and fixes. For example, similar to that models can be added when implement work with material for obj, work with different flags for obj loader/saver etc. (big count of man_meshes is to much memory).
- texture for home is flipped, because of bug with texture in efl to see if tex_coords is incorrect.

Test:
- test should be rewritten in future, because another formats still use default values for normals and tex_coords. And test can not pass for all types of obj file because of standardization for any format in him.

Test Plan: Test suit will be rewritten after correcting of other formats (they will set NULL to file when save an empty data (like mesh without normals))

Reviewers: Hermet, raster, cedric

Reviewed By: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1957

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-11 18:31:53 +01:00
..
filters Evas doc: Add example for padding_set (filters) 2014-05-09 16:57:39 +09:00
shooter evas: make Evas 3d mesh is inherited from Efl.File (functions file_set and save) 2014-12-23 21:20:21 +01:00
Makefile.examples evas: add image orient set/get API in software backend for now. 2015-02-11 17:30:54 +01:00
aspect.edc merge: add evas tests and examples 2012-11-14 20:12:53 +00:00
evas-3d-aabb.c evas: make Evas 3d mesh is inherited from Efl.File (functions file_set and save) 2014-12-23 21:20:21 +01:00
evas-3d-blending.c examples/evas-3d-blending: Remove unused global variable. 2015-01-09 18:25:41 +01:00
evas-3d-colorpick.c evas: example for Evas_3D color pick 2015-02-11 18:05:54 +01:00
evas-3d-cube-rotate.c 3D Warnings-- 2014-10-21 08:46:23 +03:00
evas-3d-cube.c evas: let's fix all Tasn borkage. 2014-10-08 17:10:28 +02:00
evas-3d-cube2.c evas: let's fix all Tasn borkage. 2014-10-08 17:10:28 +02:00
evas-3d-eet.c evas: make Evas 3d mesh is inherited from Efl.File (functions file_set and save) 2014-12-23 21:20:21 +01:00
evas-3d-fog.c evas: let's fix all Tasn borkage. 2014-10-08 17:10:28 +02:00
evas-3d-frustum.c examples/evas-3d-frustum: Remove unused variables. 2015-01-09 18:25:41 +01:00
evas-3d-md2.c evas: make Evas 3d mesh is inherited from Efl.File (functions file_set and save) 2014-12-23 21:20:21 +01:00
evas-3d-mmap-set.c evas: better example of _mmap_set and resources for it are added. 2014-12-23 21:20:21 +01:00
evas-3d-obj.c evas: Evas_3D - iport/export of Obj format can be read even if obj-file does not have normals or tex-coords. 2015-02-11 18:31:53 +01:00
evas-3d-pick.c evas: let's fix all Tasn borkage. 2014-10-08 17:10:28 +02:00
evas-3d-ply.c evas: make Evas 3d mesh is inherited from Efl.File (functions file_set and save) 2014-12-23 21:20:21 +01:00
evas-3d-proxy.c evas: let's fix all Tasn borkage. 2014-10-08 17:10:28 +02:00
evas-3d-shadows.c evas/examples: just change file name. 2015-02-03 10:50:03 +09:00
evas-aspect-hints.c Use key instead of keyname for considering setxkbmap 2014-01-04 13:25:21 +09:00
evas-box.c examples: Removed compilation warnings. 2014-07-18 18:55:56 -03:00
evas-buffer-simple.c merge: add evas tests and examples 2012-11-14 20:12:53 +00:00
evas-events.c [example][evas] add error message, you cannot use this example without the image. 2014-10-21 02:12:25 +09:00
evas-gl.c examples: Removed compilation warnings. 2014-07-18 18:55:56 -03:00
evas-hints.c examples: do not do void* arithmetics in evas examples. 2014-01-10 16:36:12 +09:00
evas-images.c Use key instead of keyname for considering setxkbmap 2014-01-04 13:25:21 +09:00
evas-images2.c Use key instead of keyname for considering setxkbmap 2014-01-04 13:25:21 +09:00
evas-images3.c Use key instead of keyname for considering setxkbmap 2014-01-04 13:25:21 +09:00
evas-images4.c evas: add image orient set/get API in software backend for now. 2015-02-11 17:30:54 +01:00
evas-init-shutdown.c efl: add and fix some gcc lines and fix some examples. Its not possible to build from outside the directory with eina_prefix, the build still depends on PACKAGE_DATA_DIR 2013-02-08 17:35:17 +00:00
evas-map-aa.c Evas examples: Fix comment also in evas-map-aa.c 2015-01-07 17:56:40 +09:00
evas-map-utils.c efl: remove some warnings. 2014-05-24 02:27:15 +02:00
evas-multi-touch.c Expose device (e.g. pen) axis information to applications 2014-11-25 12:43:15 +09:00
evas-object-manipulation-eo.c evas/examples: fix build break 2014-12-04 19:44:00 +09:00
evas-object-manipulation.c Use key instead of keyname for considering setxkbmap 2014-01-04 13:25:21 +09:00
evas-smart-interface.c 3D Warnings-- 2014-10-21 08:46:23 +03:00
evas-smart-object.c 3D Warnings-- 2014-10-21 08:46:23 +03:00
evas-stacking.c Use key instead of keyname for considering setxkbmap 2014-01-04 13:25:21 +09:00
evas-table.c efl: add and fix some gcc lines and fix some examples. Its not possible to build from outside the directory with eina_prefix, the build still depends on PACKAGE_DATA_DIR 2013-02-08 17:35:17 +00:00
evas-text.c examples: do not do void* arithmetics in evas examples. 2014-01-10 16:36:12 +09:00
evas-transparent.c evas: add example to test transparent background 2014-08-21 12:04:53 +02:00
evas_cxx_rectangle.cc eolian-cxx: Make proper handling of namespaces. 2014-07-01 10:55:45 +01:00