Note: This is an archived version of the Blender Developer Wiki (archived 2024). The current developer documentation is available on developer.blender.org/docs.

User:LeonardoSegovia/GSoC 2018/Reports/Week 6

Week 6

Hi everyone! This is my report for the present week.

Objectives

We're still on Weeks 4-5:

  • Test shader functionality. If working, release test build.
  • Evaluate received feedback. Start bug fixes.

bzztploink and Lukas released the relevant builds on Monday.

I was stuck this weekend because of university constraints; however, today was the end of the Digital Image Processing course, so I should have more free time to devote to the project.

What's been done

This week, I implemented the agreed cleanup and organization changes. These were breaking changes in some instances, outlined below.

  • Removed Lukas's debug "physical" parametrization and reordered the rest (rB20ed0372, rB32ec7d77).
    • Parametrizations should now be in order of usability: Direct coloring (plug and play), Melanin concentration (for realistic results), and Absorption coefficient (if you have a paper, you can enter its values here).
    • This change means that existing .blends need to be adjusted.
  • Reordered and renamed sockets according to most useful to least (rB45abb2ee, rB06fb2a06).
  • Refactors:
    • Randomization into factor +/- the given percentage (rBc36722f9).
      • It is expected that some .blends need to be adjusted.
    • Melanin into Tungsten's quantity and redness ratio (rBf91635e6, rBb005c15f).
  • Automagically get the RNG info even if the user hasn't socketed a Hair Info -> Random node (rB23d92659).
    • After this change, the only way to disable randomization is to socket a Value node and set it to 0.5 (just setting the value will be ignored), or set Randomization to 0.
  • Remove two possible sources of NaNs I and nirved experienced during debugging (rBc59ed146).

Next up

I don't expect to spend more time on coding (except for the reason below). During the weekend and from now on, I'll begin porting the existing hair tests to the new shader. I reiterate the previous request for .blend hairstyles for this purpose -- it'll be great if you could post them to the BA thread!

Questions

In the BA thread, jemain said:

I don’t know why but in real size (40 to 100 microns) the hair is melted into a mass without details like molten resin. I have to put them at 300 micron to hope to have details.

I understand that this is a near-field shader, i.e. it should work fine at that level of resolution. I'm not well versed in the innards of Cycles, so I'd like to ask the community:

  • Firstly, how can one set the measurement units so as to achieve real-sized hair?
  • What could be possible sources of the lack of definition the poster mentioned? Could it mean a problem with the path tracer? Or is it a symptom of noise caused by our shader?