Commit Graph

4015 Commits

Author SHA1 Message Date
Jiyoun Park 56111d2b69 From: Jiyoun Park <jy0703.park@samsung.com>
Subject: [E-devel] [Patch] Evas gl shader use binary shader

I make patch related with evas gl binary shader.
 
The concept of binary shader is  compile shader only once.
 
Some people want to use binary shader because of performance issue.
 
In current evas gl engine, every application have to compile shader each
time. 

But I modify code , so only first running application need compile shader.

Other application use already compiled shader(binary shader)

 
The binary shader is made under HOME/.evas/gl_common_shaders directory. 

Binary shader is created according to GL vendor,GL renderer, GL version and
Module_arch.

The basic flow is
 
1.     First running application which use gl engine check binary shader
directory, but it can't find binary shader. 
2.     After compiling shader, It saves compiled shaders..
3.     Other application checks shader directory, it can use binary
shaders.
 
In mobile target, using binary shader, I can save 150ms. (that time, there
is 11 shaders).

If there is more shaders and more applications, this flow maybe save more
total time. 

(the above is now in, changelog coming, with change to using ~/.cache,
some formatting fixes, make ity do the desktop gl one right with the
retrievable hint parameter ont he program etc. - doesn't break desktop
gl at least. yay. a,so fixes to mke it compile at all).



SVN revision: 59167
2011-05-04 06:15:00 +00:00
Carsten Haitzler cc9bc35e59 chlog++
SVN revision: 59158
2011-05-04 02:28:23 +00:00
Carsten Haitzler 1a9054b5f4 improve table layout for homogneous mode so it rounds correctly if
table not a multiple of rows and/or cols in size



SVN revision: 59157
2011-05-04 02:27:00 +00:00
Tom Hacohen 3f0411265a Evas font-engine: Fix size activation of fi in content_create.
SVN revision: 59153
2011-05-03 16:18:17 +00:00
Tom Hacohen 2e71b5ab90 Evas font-engine: Fix glyphs not being drawn.
Thanks to Brian Wang for the report.

This happened because we were querying for the index of the wrong fi,
this became especially visible after we started caching fi.

SVN revision: 59152
2011-05-03 14:36:47 +00:00
Carsten Haitzler eb5208f2f0 aaaaah fix my fix for preloading multi-target entry stuff to call per
preload target again (fix shortcut)



SVN revision: 59143
2011-05-03 09:10:10 +00:00
Carsten Haitzler 3610be8437 also conflict with gl2.h (gles2 headers)
SVN revision: 59142
2011-05-03 05:53:20 +00:00
Carsten Haitzler c31c015c68 formatting fix.
SVN revision: 59141
2011-05-03 03:24:36 +00:00
Carsten Haitzler 57e07025d4 if you preload the same image more than once.. it may/will cause
problems as target is inserter in cache image target list multiple
times. fix by only alloding preload request to go in once.



SVN revision: 59140
2011-05-03 03:20:02 +00:00
Carsten Haitzler 569ca2b315 wrn--
SVN revision: 59139
2011-05-03 03:11:08 +00:00
Tom Hacohen e93f10b8aa Evas font-engine: Remove passing of strings to font_draw.
This is not needed anymore because we have working string objects.

SVN revision: 59133
2011-05-02 15:33:46 +00:00
Tom Hacohen dad49dd1f2 Evas font-draw: Fix word-cache to not need text.
SVN revision: 59132
2011-05-02 15:33:38 +00:00
Tom Hacohen 61e340ec6c Evas textblock: Now that we cache fi, we don't need shaped_text anymore.
SVN revision: 59131
2011-05-02 15:33:35 +00:00
Tom Hacohen 4fafc63d0f Evas textblock: Remove obsolete comment.
SVN revision: 59130
2011-05-02 15:33:31 +00:00
Tom Hacohen 0bf964a221 Evas textblock: We finally cache fi - remove related hacks.
SVN revision: 59129
2011-05-02 15:33:27 +00:00
Tom Hacohen 2e0bb38935 Evas bidi: Made fribidichar<->eina_unicode conversion a compile time test.
SVN revision: 59122
2011-05-02 13:24:26 +00:00
Cedric BAIL 902350711d evas: don't use EINA_LOCK_INITIALIZER and improve eina_threads call.
Only call eina_threads_shutdown when thread are dead and not before.

Release and destroy thread lock before calling evas_async_events_process
as you should never have a lock taken in the main loop when calling it.


SVN revision: 59119
2011-05-02 11:28:47 +00:00
Tom Hacohen 9d23367627 Evas font-engine: Cache fi for all cases (even without harfbuzz).
This is now possible, because we have a script querying function.

SVN revision: 59109
2011-05-02 09:28:00 +00:00
Tom Hacohen af53b3d4a9 Evas language: Split to script even if there's no Harfbuzz.
SVN revision: 59108
2011-05-02 09:27:56 +00:00
Tom Hacohen 5793e609a0 Evas font-engine: Made *_unicode_funcs_get internal to font_ot.c
SVN revision: 59107
2011-05-02 09:27:49 +00:00
Carsten Haitzler a05d575f0a warning-- for eina locks
SVN revision: 59102
2011-05-02 08:24:27 +00:00
Tom Hacohen afac2fdd18 Evas language: Added a character script querying function.
This is added until there will be a library that does it; From my
understanding, there are already people working on such library.

SVN revision: 59100
2011-05-02 07:28:07 +00:00
Tom Hacohen 9389fed0a0 Evas language: Updated scripts according to Unicode 6.0
SVN revision: 59099
2011-05-02 07:28:02 +00:00
Tom Hacohen fb511c9dfe Evas language: Fix typos.
SVN revision: 59098
2011-05-02 07:27:59 +00:00
Tom Hacohen 1ce96a62e0 Evas textblock: Unified the wmax calculation into one place.
SVN revision: 59097
2011-05-02 07:27:48 +00:00
Carsten Haitzler 56363c3d73 more docs.
SVN revision: 59094
2011-05-02 03:06:34 +00:00
Carsten Haitzler 0dd92d46c8 improve evas_gl docs a bit.
SVN revision: 59093
2011-05-02 02:43:10 +00:00
Sung W. Park bc8af94bfa From: "Sung W. Park" <sungwoo@gmail.com>
Subject: evas_gl_api_get patch.

Here's a patch that simply overrides the GL functions for Evas_GL
except for two functions that I provide on my own.  It may have some symbol
resolving warnings but that'll all go away eventually when we do everything
via dlsym or getProcAddress.
 
You can apply the patch to the latest revision of evas.  (I've just
updated them) I'm also attaching a sample GLES program that uses
evas_gl_api_get. You don't need to link it to -lGL.



SVN revision: 59092
2011-05-02 02:14:00 +00:00
Carsten Haitzler a9c70e1a28 add LKDBUG. sorry - was trying to ekep other changes out of svn for
nowand didnt commit this bit.



SVN revision: 59090
2011-05-02 00:45:16 +00:00
Carsten Haitzler e3a69d7c4a and fix up lock goop to work right with improved eina lock goop. i
hope i nixed this bug.



SVN revision: 59086
2011-05-01 13:25:23 +00:00
Carsten Haitzler 3aa2f7bb4a revert some changces to try fix lock issues - they create other
nastier ones.



SVN revision: 59073
2011-05-01 07:26:42 +00:00
Carsten Haitzler d5b8646544 try and remove lock deadlocks...
SVN revision: 59070
2011-05-01 06:58:36 +00:00
Brett Nash 94275377e5 Evas: Filter: Brightness: Fix clamp ranges, and don't double negate
Basically it's a clamp function...

SVN revision: 59068
2011-05-01 06:39:26 +00:00
Brett Nash 370f868003 evas: filter: brightness: software brightness filter.
SVN revision: 59067
2011-05-01 06:39:24 +00:00
Brett Nash feeb11f555 evas: filter: Use the correct fields in filter_set
Strangely, not everything is a blur.

SVN revision: 59066
2011-05-01 06:39:22 +00:00
Brett Nash 2ad85405df Use ARGB_JOIN everywhere in evas_filter.
Now to re-apply brightness.

SVN revision: 59065
2011-05-01 06:39:19 +00:00
Carsten Haitzler 3d4b3d40a9 and try and reduce possible cache deadlocks/issues.
SVN revision: 59064
2011-05-01 06:26:41 +00:00
Carsten Haitzler f2e2d8963a could have a cache deadlock here as _sci_find is called from with
already locked caches.



SVN revision: 59063
2011-05-01 06:24:02 +00:00
Vincent Torri c7b9d3d14e whitespaces--
SVN revision: 59062
2011-05-01 06:06:56 +00:00
Carsten Haitzler a41176be3d remove unneded lock+unlock
SVN revision: 59060
2011-05-01 04:44:56 +00:00
Tom Hacohen 961e0c794a Evas text: Move the shadow calculations out of the loop.
SVN revision: 59047
2011-04-29 19:26:56 +00:00
Tom Hacohen 5570891eb3 Evas font-engine: Fixed rendering of empty text.
SVN revision: 59006
2011-04-28 15:02:11 +00:00
Tom Hacohen 7280b0d852 Evas font-engine: Document and cleanup the comments in font-query.
SVN revision: 59002
2011-04-28 12:57:35 +00:00
Tom Hacohen 8991e90293 Evas textblock: Fixed a bug with drawing formats when clipped.
SVN revision: 59001
2011-04-28 12:12:57 +00:00
Tom Hacohen ff0bcef2db Evas textblock: Added "password" tag - toggle password mode.
This lets you toggle the password mode inside the text. Especially
useful for implementing "show last char" in password entries.

Patch by Shilpaonkar Singh

SVN revision: 59000
2011-04-28 11:08:20 +00:00
Tom Hacohen 368a77aea0 Evas textblock: Fixed *_format_remove_pair to invalidate the text nodes.
SVN revision: 58991
2011-04-28 08:18:44 +00:00
Carsten Haitzler f7b637ca03 fix formatting.
SVN revision: 58988
2011-04-28 06:59:11 +00:00
Tom Hacohen 3e5cb0ac98 Evas textblock: Use strncmp instead of strncpy and strcmp.
SVN revision: 58963
2011-04-27 14:59:22 +00:00
Tom Hacohen 2ca672d8b4 Evas font-engine: Remove dependency or harfbuzz being built with glib.
Harfbuzz needs unicode querying functions in order to work properly,
until there'll be a nice lib that does that (should be under dev) we have
to depend on an outside source. This commit uses new Harfbuzz API that
lets us not care about the unicode function provider and just let harfbuzz
to manage it on it's own.

SVN revision: 58961
2011-04-27 14:00:00 +00:00
Tom Hacohen 722707547a Evas textblock: Implement format invalidation points support.
This lets us only relayout what's needed also when inserting formats.
This means inserting <b> </> for example is now as fast as inserting any
other char and doesn't cause a complete relayout.

SVN revision: 58958
2011-04-27 12:41:26 +00:00