POV-Ray : Newsgroups : povray.beta-test : POV-Ray v3.8.0-x.freetype.1 : Re: POV-Ray v3.8.0-x.freetype.1 Server Time
24 Apr 2024 03:04:50 EDT (-0400)
  Re: POV-Ray v3.8.0-x.freetype.1  
From: William F Pokorny
Date: 9 Feb 2019 13:41:07
Message: <5c5f1ec3$1@news.povray.org>
On 2/8/19 9:35 AM, William F Pokorny wrote:
> On 2/7/19 4:34 PM, clipka wrote:
> ...
>>
>> I'm not so sure it's a CSG thing you're seeing. By default, POV-Ray 
>> "flattens" CSG unions wherever possible, promoting all children to 
>> top-level objects - presumably this is also the case with implicit 
>> unions like the text primitive. So unless you took some measure to 
>> specifically prevent this, you're not actually testing a CSG object.
> 
> Agree. It's a theory until proven.
> 
...
> 
> Another test which could be done pretty quickly, I guess, would be to 
> hack the code to eliminate the inside test on ray initialization for 
> ttf1.pov testing as it really isn't needed in that scene. I might try 
> that later today as I'm now curious. But, I'm off to do some other stuff 
> at the moment.
> 
>

Only got to trying the above this morning and perhaps my - hypothesis - 
is wrong... If I hacked correctly there was not a difference I'd 
consider large enough not to be noise. Tried a couple other things, then 
decided why not just see whether the new freetype branch is fast enough 
for what I want to do with the hard and soft objects. Also measured 
ttf1.pov and it was a little over 3% faster with the freetype branch. 
Characters move some so exact scene to scene comparisons not all that easy.

I then merged my hard/soft_object branch into the freetype one 
(experimental/freetype at commit 30308ed). Tried the soft_object.pov 
scene part of the merged branch where each text object only one 
character up through the isosurface to the top. It's quite a lot faster 
and I'll post an image to p.b-t.b showing mostly how the characters 
shift as expected.

I then tried the version where "Water" all in one text object. 
Unfortunately this hangs immediately in a way which only the kill 
command can stop.

In other words, the single character W works below while the comment two 
character string does not.

#declare Text00 = text {
     ttf "timrom.ttf" "W" 0.05, 0.001 translate <0.02,0.02,0>
//  ttf "timrom.ttf" "Wa" 0.05, 0.001 translate <0.02,0.02,0>
}

---------------- Repeating a few previous perf tests for the branch.

soft_object.pov   p380/freetype + hard/soft object only.
----
345.96user 0.08system 5:46.50elapsed   As 'text union'
??? Immediately hangs                  freetype (???)


64.91user 0.04system 1:05.52elapsed    Individual chars at top (-81.24%)
48.33user 0.02system 0:48.91elapsed    freetype (-25.54%)


This indirectly calls into question much of my thinking. If the 
initialization of the ray is calling the inside test, why doesn't it 
hang too... I don't know what's going on.

---
To start though find attached two scene files of a form I've been using 
to test solver/inside related changes using media. The results of 
Text.pov should quite closely match Text_I.pov results if everything is OK.

They do for the freetype branch where we have just on character W. 
Results do not match when the text object string is Wa in the freetype 
branch. At master things work OK - well except for the speckling 
differences. Perhaps doesn't explain the hang, but something wrong and 
fixing that a start. Again see p.b-t.b for image results / compares. 


Bill P.


Post a reply to this message


Attachments:
Download 'text_i.pov.txt' (1 KB) Download 'text.pov.txt' (1 KB)

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.