The Persistence of Vision Raytracer (POV-Ray).

This is the legacy Bug Tracking System for the POV-Ray project. Bugs listed here are being migrated to our github issue tracker. Please refer to that for new reports or updates to existing ones on this system.


FS#91 - Slope pattern applied to object is not transformed afterhand

Attached to Project: POV-Ray
Opened by Grimbert Jérôme (Le_Forgeron) - Monday, 29 March 2010, 16:14 GMT
Last edited by William F Pokorny (wfpokorny) - Monday, 20 March 2017, 13:36 GMT
Task Type Feature Request
Category Backend → Texture/Material/Finish
Status Tracked on GitHub   Reopened
Assigned To No-one
Operating System All
Severity Low
Priority Low
Reported Version 3.70 beta 36
Due in Version Future release
Due Date Undecided
Percent Complete 0%
Votes 1
Private No


There is an big issue with the slope pattern: when the object it is applied to is instanced (again) with a transformation (in particular a rotation, as a translation would not impact.. but a shear might), the colours of the surfaces are changed.

object { p translate -5*x }
object { p rotate 220*y+20*x    translate 3*x }       

Nobody would expect the object to be different in appearance.
If slope {} is replaced with wood, all is fine. (as for others textures, i guess)

IMHO, the slope vector need to be adjusted for the later transformation(s) (so as to compensate the issue of using the Perturbed Normal vector).

This should not impact the AOI/FACING (experimental) patterns, as AOI definition is pretty clear about duplicating & transform if you think about it a bit, as well as FACING: for these two, it is expected to either use the ray(current point of view) or a fixed 3D point as reference. At the limit, discussion about moving the 3D point of FACING might also be opened to interpretation.

AOI/FACING are in task #19

This task depends upon

Comment by Grimbert Jérôme (Le_Forgeron) - Tuesday, 30 March 2010, 13:47 GMT
  • Field changed: Percent Complete (100% → 0%)

The reason for closing might then question the interest for a separate “AIM” pattern (as per #19) which would update the vector so as to keep the values for transformations applied afterhand.

Comment by Christoph Lipka (clipka) - Tuesday, 30 March 2010, 13:51 GMT
  • Field changed: Task Type (Definite Bug → Feature Request)
  • Field changed: Status (Unconfirmed → New)

Reopened the task as a low-severity feature request rather than a critical definite bug.

[For the records, the task had been closed due to the behavior not being a bug, but rather intentional.]

Comment by Christoph Lipka (clipka) - Tuesday, 30 March 2010, 14:15 GMT

An implementation of the requested feature would require pretty extensive changes, as the transformation information that would be required is not passed to the code actually evaluating the pattern. Passing the information all the way through may be a bit heavyweight. Furthermore, it would be necessary to "reverse-engineer" the transformation the object has suffered after the texture/normal/whatever has been applied, from (a) the total transformation applied to the object and (b) the total transformation applied to the texture, which is the transformations currently stored by POV-Ray.

Comment by William F Pokorny (wfpokorny) - Monday, 20 March 2017, 13:36 GMT
  • Field changed: Status (New → Tracked on GitHub)

Now tracked on github as issue #254.