home
products
contribute
download
documentation
forum
Home
Forums
New posts
Search forums
What's new
New posts
All posts
Latest activity
Members
Registered members
Current visitors
Donate
Log in
Register
What's new
Search
Search
Search titles only
By:
New posts
Search forums
Search titles only
By:
Menu
Log in
Register
Navigation
Install the app
Install
More options
Contact us
Close Menu
Forums
MediaPortal 2
Feature Requests
Adding support for Right-to-left languages (Hebrew, Arabic...)
Contact us
RSS
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Reply to thread
Message
<blockquote data-quote="morpheus_xx" data-source="post: 1105796" data-attributes="member: 48495"><p>Yesterday I've read a lot more about the text handling. I did wonder why we have to deal with different orders at all inside MP2 rendering. </p><p></p><p>The answer is, that the rext rendering engine is based on FreeType to get the glyphs (single character) from a given font. That glyph is then added to a texture. When a text is going to be rendered, all contained glyphs will be added to the texture when they are needed.</p><p>The actual rendering then in principle renders every character separately using texture coordinates of the glyph and the "big character map" texture.</p><p></p><p>This is the cause why read order is not yet considered correctly and the partial string reversal could be a temporary workaround. </p><p></p><p>The workaround wouldn't work for Arabic, because there letters are different if they are combined differently. This means "A B" looks different then "AB" or the 'a' inside "ab" might look different to the 'a' inside "ac". (Correct me if I'm wrong).</p><p></p><p>Now what should we do now?</p><p></p><p>One possible solution would be DirectWrite (available through SharpDX), which allows drawing any text correctly, LTR, RTL and mixed cases are fine. We could replace the current implementation of FontAssetCore by a DirectWrite text renderer, which then either renders directly to render target, or we need to take the way over a Texture that then will be rendered into scene.</p><p></p><p>[USER=140174]@Stéphane Lenclud[/USER] , you wrote in another thread that you have experience with graphic coding, what do you think how we should handle text rendering in future inside MP2? Could the explained rendering of characters be a cause for a performance bottleneck? Would be my proposal a bottleneck?</p><p></p><p>Finally this means a big rework of one central part of rendering engine that requires much work for developing, testing, and fixing. But I think we would benefit of this step.</p></blockquote><p></p>
[QUOTE="morpheus_xx, post: 1105796, member: 48495"] Yesterday I've read a lot more about the text handling. I did wonder why we have to deal with different orders at all inside MP2 rendering. The answer is, that the rext rendering engine is based on FreeType to get the glyphs (single character) from a given font. That glyph is then added to a texture. When a text is going to be rendered, all contained glyphs will be added to the texture when they are needed. The actual rendering then in principle renders every character separately using texture coordinates of the glyph and the "big character map" texture. This is the cause why read order is not yet considered correctly and the partial string reversal could be a temporary workaround. The workaround wouldn't work for Arabic, because there letters are different if they are combined differently. This means "A B" looks different then "AB" or the 'a' inside "ab" might look different to the 'a' inside "ac". (Correct me if I'm wrong). Now what should we do now? One possible solution would be DirectWrite (available through SharpDX), which allows drawing any text correctly, LTR, RTL and mixed cases are fine. We could replace the current implementation of FontAssetCore by a DirectWrite text renderer, which then either renders directly to render target, or we need to take the way over a Texture that then will be rendered into scene. [USER=140174]@Stéphane Lenclud[/USER] , you wrote in another thread that you have experience with graphic coding, what do you think how we should handle text rendering in future inside MP2? Could the explained rendering of characters be a cause for a performance bottleneck? Would be my proposal a bottleneck? Finally this means a big rework of one central part of rendering engine that requires much work for developing, testing, and fixing. But I think we would benefit of this step. [/QUOTE]
Insert quotes…
Verification
Post reply
Forums
MediaPortal 2
Feature Requests
Adding support for Right-to-left languages (Hebrew, Arabic...)
Contact us
RSS
Top
Bottom