POV-Ray : Newsgroups : povray.binaries.images : Patterns / functions. Obscure details. Noise etc. : Re: Patterns / functions. Obscure details. Noise etc. Server Time
2 May 2024 04:25:11 EDT (-0400)
  Re: Patterns / functions. Obscure details. Noise etc.  
From: William F Pokorny
Date: 15 Apr 2020 07:14:16
Message: <5e96ec88$1@news.povray.org>
On 4/14/20 3:19 PM, Bald Eagle wrote:
> William F Pokorny <ano### [at] anonymousorg> wrote:
> 
...
> 
>> The v.zyx syntax has a name - like twizzling or something - and it's
>> offered in some C++ vector template classes at significant complexity to
>> those
> 
> Swizzling - yes that rang a bell, and a search confirmed.
> 
> Given the above .gray / .grey capability, I must admit it's a bit surprising
> that .yzx would be more complex than either of those or .hf.
> 
> 

Suppose up front I'll admit I'm in large part repeating what I've heard 
other say or what I've read as to the impacts - I've not played a lot 
myself with really complex vector template libraries. But, I believe the 
impact statements probably true to a large degree.

Aside: There was a cppcon presentation by some effects guru in the last 
few years where he was describing his company's code and C++ experience. 
As an aside he mentions/complains at one point the C++ vector template 
class they use requires a 64GB machine for their compiles(1).

In isolation, v.yzx is not complicated. It, however, adds to the 
combinatorial complexity of any vector template class which support 
arbitrary floating point types and on those many methods such as 
v.yzx.length(), v.yzx.normalize(), v.zyx * v2.yxz, etc. The behavior of 
all the methods and overloads you want to generically work have to be 
enumerated by the template class in some way such that it turns into 
compilable code.

Bill P.

(1) - And people make fun of M4... ;-) Want to side track yourself some 
day, look into all the C++ template assist/creation tools...


Post a reply to this message

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