POV-Ray : Newsgroups : povray.binaries.images : Upgrading POV-Ray's include files - a few remarks Server Time
4 May 2024 04:54:24 EDT (-0400)
  Upgrading POV-Ray's include files - a few remarks (Message 18 to 27 of 37)  
<<< Previous 10 Messages Goto Latest 10 Messages Next 10 Messages >>>
From: Bald Eagle
Subject: Re: Upgrading POV-Ray's include files - a few remarks
Date: 3 Mar 2021 07:15:00
Message: <web.603f7d8d6dc18ced1f9dae300@news.povray.org>
"Mr" <nomail@nomail> wrote:

> Very true that more explicit names are required.

Explicit yes, as well as memorable and quick and easy to type, if possible.
The underscores make me cringe a bit.

> And +1 vote for a proof of concept macro set, so pragmatic use will better
> reorient reflection.

I _STILL_ look at descriptions of functions and macros and say to myself, "Oh,
no.... HOW do I actually USE that?  What do I DO with it?   Where in the code
does it GO?  Is it a standalone line?  Is it transformation on my object?  Is it
a value that use to do something else...?
And that can waste 10 minutes until I wrap my head around the underlying theory
of operation.

> ... having to go to through some
> "download>unzip>skim-through-newsgroups-for-doc" procedures for CR's macro makes
> one (probably mistakingly) believe that this macro has been judged sub-standard
> by the main team, so using it seems more risky /costly / not worthy /whatever...
>
> All this makes it appear like POV is somewhat limited to phong spheres would you
> choose to get more "seriously" into it.

Right - the standard distribution files may not have been touched in the last 20
years.

We could certainly use some of the nicer macro packages integrated more tightly
with "the system".   I'd say that things don't get used, due to a number of
things.   Time, knowledge or memory that they exist, the learning curve to
implement them, the energy and daring to spend the time and effort trying new
things....   Inertia....

> Of course I do not pretend to speak for macro authors, but as a user, so one
> could argue that these authors might not want their macros included ?

.... then don't write them and post them on the internet?
I mean, I understand the philosophical and practical theory of patents and IP,
but IMO, I think that there's a ridiculous level of "we can't use that without a
signed contract from the author" (who may be long gone or, sadly passed from
this mortal coil).   If it got posted, we use it.  Especially if it's just for
something like an include file or an insert menu snippet.   If they complain, we
can delete it.  It's not like it's critical source code.

> Am I missing something or does this naive opinion actually make sense?

Nope.  Not missing anything.   There are a lot of opinions that make perfect
sense, but which people have been conditioned to somehow find "offensive".
Ain't got time for that nonsense.


Post a reply to this message

From: Kenneth
Subject: Re: Upgrading POV-Ray's include files - a few remarks
Date: 3 Mar 2021 10:35:01
Message: <web.603fab146dc18cedd98418910@news.povray.org>
"Bald Eagle" <cre### [at] netscapenet> wrote:
>
> I _STILL_ look at descriptions of functions and macros and say to myself, "Oh,
> no.... HOW do I actually USE that?  What do I DO with it?   Where in the code
> does it GO?  Is it a standalone line?  Is it transformation on my object?
> Is it a value that use to do something else...?
> And that can waste 10 minutes until I wrap my head around the underlying
> theory of operation.
>

That's EXACTLY my problem as well. Except that I usually cannot figure out what
a particular feature means, and simpy move on in frustration-- never making an
attempt to use it, and not learning anything.

There are indeed many features that could be MUCH-better explained, with more
'humanly-readable' descriptions. I like *clarity*. If I had my way, something
like the Point_At_Trans macro would instead be

#macro This_Points_Your_Vector_Direction_In_Another_Direction_But_Watch_Out_For
Problems_So_Add_The_Bald_Eagle_Solution(...)"

:-P


I think the present state of POV-ray-- the difficulty of understanding how to
use certain features-- is partly a result of years /decades of a certain 'elite
attitude' among some users, and a few developers as well (Clipka being the major
exception IMO), that the program is meant for a particular intellectually
superior audience-- and that those of us who aspire to learn it should not be
'spoon fed' with helpful comments if we are perceived to be below a certain
level of ability. It went something like this: "Why don't you understand what
you're asking? Read the f**king manual. If you don't understand it, you don't
belong here, so get out." I exaggerate, but only a little. I think we have all
seen this kind of response-- an attitude that has certainly not helped to expand
POV-ray's user base! Personally, I've had to develop a thick skin over the
years, to put up with that kind of unhelpful garbage; luckily, I persevered. But
I amagine that others have simply given up and moved elsewhere. Of course, we
would not be using the program at all if we didn't have a desire to learn
programming in some way, and to 'build things from the ground up'; so it does
take *some* level of knowledge and interest to grasp the essentials.  But the
unhelpful attitudes have made it much harder than it should have been. And IMO,
there are many parts of the documentation that reflect this unnecessary
'anti-spoon-feeding' attitude. Perhaps POV-ray *was* initially developed only
for astute computer programmers, all those years ago; but those times have
changed. Now even kids are learning to program!

POV-ray is such a great platform for creating almost anything visual. With some
improvements to the documentation, and better example scenes, it would probably
pick up many more users going forward.


Post a reply to this message

From: Bald Eagle
Subject: Re: Upgrading POV-Ray's include files - a few remarks
Date: 3 Mar 2021 14:00:01
Message: <web.603fdc546dc18ced1f9dae300@news.povray.org>
"Kenneth" <kdw### [at] gmailcom> wrote:

> That's EXACTLY my problem as well. Except that I usually cannot figure out what
> a particular feature means, and simpy move on in frustration-- never making an
> attempt to use it, and not learning anything.

Well, thankfully we have the interwebs, and a lot of other graphics platforms
that go about things in slightly different ways, which can help provide a few
more approaches to compare, and there are literally whole courses and textbooks
to be had just for the searching...

> There are indeed many features that could be MUCH-better explained, with more
> 'humanly-readable' descriptions. I like *clarity*. If I had my way, something
> like the Point_At_Trans macro would instead be
>
> #macro This_Points_Your_Vector_Direction_In_Another_Direction_But_Watch_Out_For
> Problems_So_Add_The_Bald_Eagle_Solution(...)"
>
> :-P

So, with regard to that, I was thinking that maybe a neat idea would be to go
through ALL of the keywords and major macros and functions and make a single
giant file with nothing but illustrative code examples.

I made an in-depth stab at tackling the Bezier splines and patches - but that
ate up what - a month or two? (I learned a lot though).


> I think the present state of POV-ray-- the difficulty of understanding how to
> use certain features-- is partly a result of years /decades of a certain 'elite
> attitude' among some users, and a few developers as well (Clipka being the major
> exception IMO), that the program is meant for a particular intellectually
> superior audience-- and that those of us who aspire to learn it should not be
> 'spoon fed' with helpful comments if we are perceived to be below a certain
> level of ability. It went something like this: "Why don't you understand what
> you're asking? Read the f**king manual. If you don't understand it, you don't
> belong here, so get out." I exaggerate, but only a little. I think we have all
> seen this kind of response-- an attitude that has certainly not helped to expand
> POV-ray's user base! Personally, I've had to develop a thick skin over the
> years, to put up with that kind of unhelpful garbage; luckily, I persevered. But
> I amagine that others have simply given up and moved elsewhere. Of course, we
> would not be using the program at all if we didn't have a desire to learn
> programming in some way, and to 'build things from the ground up'; so it does
> take *some* level of knowledge and interest to grasp the essentials.  But the
> unhelpful attitudes have made it much harder than it should have been. And IMO,
> there are many parts of the documentation that reflect this unnecessary
> 'anti-spoon-feeding' attitude. Perhaps POV-ray *was* initially developed only
> for astute computer programmers, all those years ago; but those times have
> changed. Now even kids are learning to program!

Yeah - there are those elitist types everywhere.   "This is for me, but not for
thee."  And they hate me, because I have a very "F U, I won't do what you tell
me" attitude, and learn how to do everything that they can, and then some.  And
find out all of the ways that they are wrong, and discover ways to do it better
than they ever could.

I get a very distinct sense of what you're talking about over on
StackExchange/StackOverflow, where people are unnecessarily condescending, and
you can't even post questions or replies unless you have a certain reputation...
Linux seems to have a bit of that as well.   "Well, you're using linux, so you
should ALREADY know how to...."  Yeah, lemme just pull that regular expression
out of my nether region and plug it into awk, pipe it through grep, and then....

POV-Ray is nice, because it has a lot of "pre-packaged" things that help you get
up and running quickly even though there is still a big learning curve if you
want to start doing anything reasonably advanced.
ShaderToy is helpful for me because it strips away the entire safety net, and
requires me to understand what something like a camera is in code and math ...
there is no camera {} statement.  There is no pigment {granite}.  If you want
granite you have to code the damned thing from scratch.

Which I could never do a few years ago, but TOK, Bill P., and other people have
shown me what is possible, and given me a few nudges here and there to help me
on my way.  Perusing POV-Ray's source code was pretty eye opening too.  Because
those pigment patterns weren't magic black-boxes anymore, they were really,
ultra simple one-line equations that (in hindsight) made perfect sense.  So then
once I saw how it was done, I could replicate the simple examples, and start to
play with new functions, daisy-chaining equations, and basically getting into
the deep end of the pool   ;)

For a new-user, ignorance and some naive notions are to be expected.  It's super
easy to help out with a few lines of code, or just plopping a whole ready-made
scene on them to show them how it's done.

On the flip side, there are people who never want to do anything themselves and
only take. But generally this is a politics-free forum.  ;)

As long as people are willing to TRY, that's fine with me.   And probably more
often than not, I've learned more and answered some of my own questions in the
process of trying to answer a question or prove to someone that "it can't be
done!" just isn't true.   There's a way.  It may take me 3 years to find it.
But by golly, I'll resort to the most heinous and hacktastic coding practices to
prove that "IT CAN BE DONE!!!"


Post a reply to this message

From: Mr
Subject: Re: Upgrading POV-Ray's include files - a few remarks
Date: 3 Mar 2021 17:35:01
Message: <web.60400e146dc18ced6adeaecb0@news.povray.org>
Things are actually moving in the right direction. I wouldn't feel that bitter.
Most people around here are humanist, altruist and generous. I tend to keep
asking stuff in the "new user"  section -and I never regret to post there
anytime I feel my question may be too basic. Doing so, I only received awesome
great answers since I came here.

Also about the documentation :

Though it is one of the best I know, I do agree that examples for everything is
a Great Idea , and a simple one like so many great ideas ! I'll try to take part
in that effort on the wiki.


Post a reply to this message

From: Thomas de Groot
Subject: Re: Upgrading POV-Ray's include files - a few remarks
Date: 4 Mar 2021 02:32:36
Message: <60408d14$1@news.povray.org>
Op 03/03/2021 om 23:30 schreef Mr:
> Things are actually moving in the right direction. I wouldn't feel that bitter.
> Most people around here are humanist, altruist and generous. I tend to keep
> asking stuff in the "new user"  section -and I never regret to post there
> anytime I feel my question may be too basic. Doing so, I only received awesome
> great answers since I came here.
> 
> Also about the documentation :
> 
> Though it is one of the best I know, I do agree that examples for everything is
> a Great Idea , and a simple one like so many great ideas ! I'll try to take part
> in that effort on the wiki.
> 
> 
> 
I am a bit overwhelmed by the number of comments and I need to digest 
all that. My time seems always too limited to grasp even the essentials. :-/

Nonetheless, I fully agree with all the speakers! Be back later.

-- 
Thomas


Post a reply to this message

From: Robert McGregor
Subject: Re: Upgrading POV-Ray's include files - a few remarks
Date: 6 Mar 2021 18:35:00
Message: <web.6044106f6dc18ced87570eab0@news.povray.org>
"Bald Eagle" <cre### [at] netscapenet> wrote:
> So, with regard to that, I was thinking that maybe a neat idea would be to go
> through ALL of the keywords and major macros and functions and make a single
> giant file with nothing but illustrative code examples.

That is a GREAT idea! I'd be interested in helping with that initiative.

> Yeah - there are those elitist types everywhere.   "This is for me, but not for
> thee."  And they hate me, because I have a very "F U, I won't do what you tell
> me" attitude, and learn how to do everything that they can, and then some.  And
> find out all of the ways that they are wrong, and discover ways to do it better
> than they ever could.

Rage on brother (i.e., Against the Machine), and amen, I feel exactly where
you're coming from.

> I get a very distinct sense of what you're talking about over on
> StackExchange/StackOverflow, where people are unnecessarily condescending, and
> you can't even post questions or replies unless you have a certain reputation...
> Linux seems to have a bit of that as well.   "Well, you're using linux, so you
> should ALREADY know how to...."  Yeah, lemme just pull that regular expression
> out of my nether region and plug it into awk, pipe it through grep, and then....

Now you're just killing me with your snarky regex, awk and grep - I literally
laughed out loud! Because it's all so true...


Post a reply to this message

From: Bald Eagle
Subject: Re: Upgrading POV-Ray's include files - a few remarks
Date: 6 Mar 2021 20:25:01
Message: <web.60442b016dc18ced1f9dae300@news.povray.org>
"Robert McGregor" <rob### [at] mcgregorfineartcom> wrote:

> That is a GREAT idea! I'd be interested in helping with that initiative.

I guess something where we make a list (pref in a starter .pov file) and then we
can use that as a framework for group editing.

Maybe come up with a standard camera/resolution for anything that needs
rendering.
And #error directive for things that don't.
Make it one big #switch #case #break #end block.

Possibly alphabetize everything so it's easy to skim through.

And then it's just a basic functioning few lines of code for everything, and
then that can act as a basis for anyone who wants to follow up with
improvements.

(might need a companion .inc file for textures, useful macros, various other
odds and ends)

Which reminds me
In addition to my include file edits, and random number additions, I have a file
that I'm writing Graphics Gems methods in SDL, and I have my own include files
for things like matrix and array macros/formulas, and some commonly used
algorithms like sorting, etc.


> Rage on brother (i.e., Against the Machine), and amen, I feel exactly where
> you're coming from.


I do/have done construction, electrical, gas, HVAC, painting, grow food, store
food, cook, grind my own meat grain and spices, auto engine repair, small engine
repair, computer and printer repair, electronics, photography (B&W), arduino/cpp
coding, POV-Ray, archery, was an FFL, firearms instructor, I drive carts, pallet
jacks, forklifts, do organic chemistry, ....  getting into CB and ham, other
skillz...

"What do you do at work?"  Lift heavy stuff, clean, mop....
"What do you do at home?"  Derive the mixed partial second derivatives of
Bernstein polynomials..."


Does anyone hire me for any of that stuff? ...  no.  :|



Some is due to interest alone, most due to poverty/necessity.
It's TIRING, but I plan on outliving the snowflakes whose delicate constitution
can only tolerate organic soy milk.


hog, conn a ship, design a building, write a sonnet, balance accounts, build a
wall, set a bone, comfort the dying, take orders, give orders, cooperate, act
alone, solve equations, analyze a new problem, pitch manure, program a computer,
cook a tasty meal, fight efficiently, die gallantly. Specialization is for


― Robert A. Heinlein


> Now you're just killing me with your snarky regex, awk and grep - I literally
> laughed out loud! Because it's all so true...


I mean I've done all of that - most of it 20 years ago ...  but I'm a fan of
clear, concise, complete, and robust instructions.
It's easy to forget that SHT, and sometimes I write code on Monday and have no
idea how what I wrote works on Wednesday...
Not to mention the few times I only found a single example of code I wanted to
use, and am in the middle of saying to myself, "Yes! This is great...."    and
then I realize, "Oh.  Wow.  This is MY code..."   <eyeroll> because clearly the
coffee was working its magic when I wrote it, and then wasn't, when I forgot
that I had already wrote it and then searched for it....   :D


Post a reply to this message

From: Bald Eagle
Subject: Re: Upgrading POV-Ray's include files - a few remarks
Date: 6 Mar 2021 22:45:01
Message: <web.60444b176dc18ced1f9dae300@news.povray.org>
So, I just copied the keyword list from the wiki, added the boilerplate code,
and did the acos entry just to suggest a starting point and format.

I'm thinking I should have used strcomp...  :/


Post a reply to this message


Attachments:
Download 'keywordexamples.pov.txt' (70 KB)

From: Thomas de Groot
Subject: Re: Upgrading POV-Ray's include files - a few remarks
Date: 7 Mar 2021 02:41:50
Message: <604483be$1@news.povray.org>
Op 07/03/2021 om 02:23 schreef Bald Eagle:
> "Robert McGregor" <rob### [at] mcgregorfineartcom> wrote:
> 
>> That is a GREAT idea! I'd be interested in helping with that initiative.
> 
> I guess something where we make a list (pref in a starter .pov file) and then we
> can use that as a framework for group editing.
> 
> Maybe come up with a standard camera/resolution for anything that needs
> rendering.
> And #error directive for things that don't.
> Make it one big #switch #case #break #end block.
> 
> Possibly alphabetize everything so it's easy to skim through.
> 
> And then it's just a basic functioning few lines of code for everything, and
> then that can act as a basis for anyone who wants to follow up with
> improvements.
> 
> (might need a companion .inc file for textures, useful macros, various other
> odds and ends)
> 
> Which reminds me
> In addition to my include file edits, and random number additions, I have a file
> that I'm writing Graphics Gems methods in SDL, and I have my own include files
> for things like matrix and array macros/formulas, and some commonly used
> algorithms like sorting, etc.
> 
> 
>> Rage on brother (i.e., Against the Machine), and amen, I feel exactly where
>> you're coming from.
> 
> 
> I do/have done construction, electrical, gas, HVAC, painting, grow food, store
> food, cook, grind my own meat grain and spices, auto engine repair, small engine
> repair, computer and printer repair, electronics, photography (B&W), arduino/cpp
> coding, POV-Ray, archery, was an FFL, firearms instructor, I drive carts, pallet
> jacks, forklifts, do organic chemistry, ....  getting into CB and ham, other
> skillz...
> 
> "What do you do at work?"  Lift heavy stuff, clean, mop....
> "What do you do at home?"  Derive the mixed partial second derivatives of
> Bernstein polynomials..."
> 
> 
> Does anyone hire me for any of that stuff? ...  no.  :|
> 
> 
> 
> Some is due to interest alone, most due to poverty/necessity.
> It's TIRING, but I plan on outliving the snowflakes whose delicate constitution
> can only tolerate organic soy milk.
> 

> hog, conn a ship, design a building, write a sonnet, balance accounts, build a
> wall, set a bone, comfort the dying, take orders, give orders, cooperate, act
> alone, solve equations, analyze a new problem, pitch manure, program a computer,
> cook a tasty meal, fight efficiently, die gallantly. Specialization is for

> 
> ― Robert A. Heinlein
> 
> 
>> Now you're just killing me with your snarky regex, awk and grep - I literally
>> laughed out loud! Because it's all so true...
> 
> 
> I mean I've done all of that - most of it 20 years ago ...  but I'm a fan of
> clear, concise, complete, and robust instructions.
> It's easy to forget that SHT, and sometimes I write code on Monday and have no
> idea how what I wrote works on Wednesday...
> Not to mention the few times I only found a single example of code I wanted to
> use, and am in the middle of saying to myself, "Yes! This is great...."    and
> then I realize, "Oh.  Wow.  This is MY code..."   <eyeroll> because clearly the
> coffee was working its magic when I wrote it, and then wasn't, when I forgot
> that I had already wrote it and then searched for it....   :D
> 

I have learned by experience that writing instructions for everybody's 
use (or for a dedicated group like in a working environment) is one of 
the most challenging things to do, especially if you intend them to be 
'clear', 'consistent', 'comprehensible'. It is a humbling experience 
too, about your own limitations. More often than not I got people coming 
to me telling me that my instructions 'didn't work', 'crashed the 
system', 'were Russian to them', etc... I learned to integrate those 
reactions into comprehensive updates. :-)

Btw, I am still 'digesting' but I'll come back to the topic.

-- 
Thomas


Post a reply to this message

From: Thomas de Groot
Subject: Re: Upgrading POV-Ray's include files - a few remarks
Date: 7 Mar 2021 09:36:05
Message: <6044e4d5@news.povray.org>
I am slowly working towards an understanding about what needs to be 
done. The skies.inc was primary exploration for me; I have now examined 
more closely some texture issues.

I selected the American Granites suite which Daniel Mecklenburg Jr wrote 
for version 2.2. I corrected some inconsistencies and then built a 
#switch system (for now only the first textures: MohoganyPol and 
MohoganyFro) to allow for different renders according to the user's whim.

I think that this suite of granite textures should be included into the 
POV-Ray package by the way. I guess it was dropped or lost.

The image below shows two sets of renders: The top two rows correspond 
to the MohoganyFro set; the two bottom rows to the MohoganyPol set. The 
difference between the row couples is only that in the second one a 
layered texture is used for some extra veins in the granite.

The first column shows the granite in its basic, linear colour space, 
form as written by the author.

The second column uses a simple rewrite of rgb --> srgb, assuming that 
the original code was written for an assumed_gamma 2.2 environment.

The third column uses the transformation function by Ive from scRGB to 
sRGB. I kept this column as reference, but I would argue for the 
following column as to be definitive.

The fourth column additionally uses the colour saturation/brightness 
variation code by Clipka.

It is a bit of work, but I think that this would be an acceptable to 
update the textures available in the Include directory.


-- 
Thomas


Post a reply to this message


Attachments:
Download 'conversions.jpg' (778 KB)

Preview of image 'conversions.jpg'
conversions.jpg


 

<<< Previous 10 Messages Goto Latest 10 Messages Next 10 Messages >>>

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