Wings 3D Development Forum
YafaRay Plug-in - reviewing for Yafaray 3.0 - Printable Version

+- Wings 3D Development Forum (https://www.wings3d.com/forum)
+-- Forum: Wings 3D (https://www.wings3d.com/forum/forumdisplay.php?fid=1)
+--- Forum: Design & Development (https://www.wings3d.com/forum/forumdisplay.php?fid=6)
+--- Thread: YafaRay Plug-in - reviewing for Yafaray 3.0 (/showthread.php?tid=2053)

Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17


RE: YafaRay Plug-in - reviewing for Yafaray 3.0 - micheus - 08-01-2016

(08-01-2016, 08:45 AM)david.bluecame Wrote: About the Unicode characters in the Parameters Badge, I found I can fix it with this change:
https://github.com/DavidBluecame/wings/commit/ea303575008a914b7fd53603704df593b408e675
If it's working..., OK. But, it doesn't seems to fit in that Erlang's documentation - item 3.11 Undecided:
Quote:Recommendations:
  • Use the file module for files opened for bytewise access ({encoding,latin1}).
  • Use the io module when accessing files with any other encoding (for example {encoding,uf8}).


About the new options for AA...
Does any of these marked controls are used to ignore the other parameters? I mean, if one specific option is selected some input value must be disabled.


A tip about the layout. When adding "spaces" between controls like checkbox/labels/listbox please use the 'panel' control. I know, the name isn't the appropriated (maybe 'spacer' would say more), but it's the best way to do that.
Blank spaces in the strings can be removed by translators. If a blank space is a better option than 'panel' then I recommend to use it concatenated to the string to be translated. Something like this: ?__(1, "Ray count" ++" ")


RE: YafaRay Plug-in - reviewing for Yafaray 3.0 - david.bluecame - 08-01-2016

Hello,

I'm slowly progressing in setting hooks and keys to disable/hide unused fields depending on the values of other fields. Before this plugin is "published" I intend to (try to) get the fields dynamically showing/hiding correctly to avoid confusing the users.

Erlang is quite a challenge for me... Maybe it's just me and the fact that I'm not used to it, but I find it quite convoluted...


RE: YafaRay Plug-in - reviewing for Yafaray 3.0 - micheus - 08-01-2016

(08-01-2016, 08:49 PM)david.bluecame Wrote: I'm slowly progressing in setting hooks and keys to disable/hide unused fields depending on the values of other fields.
You are going very well.

Quote:Erlang is quite a challenge for me... Maybe it's just me and the fact that I'm not used to it, but I find it quite convoluted...
That is why I've been around these changes. To help if I can. Smile

The Yafaray plugin is a "model to be followed" by other plugins. It uses everything we have available in the wings_dialog module.


RE: YafaRay Plug-in - reviewing for Yafaray 3.0 - micheus - 08-02-2016

(08-01-2016, 08:49 PM)david.bluecame Wrote: I'm slowly progressing in setting hooks and keys to disable/hide unused fields depending on the values of other fields.
The hook (callback) is fired everytime the field it was assigned is changed.
To enable/disable or show/hide a control we are going to use its ID (key property). To apply that to a group of controls we must to have them into a vframe/hframe with an ID. These controls don't need to have a ID except for this application.

The show/hide action requires the parent group control to be updated, so you will need to define an ID for it too.

For situations where the number of control in a dialog is high (if compared to the visible ones depending on a selection) we must ensure only the group of controls for the "worst" situation (more control visible at once) will be visible at the dialog startup.
We do that by defining the the show property of the group as false. You will find that in the Texture tab for the material. (shaders frame).

You will find an Enable_Hook and a Show_Hook in the Yafaray source code, but they would be only one hook function. It was used that way to make easy to understand the code.


Just by checking the material dialogs and comparing them with the old ones I noticed they have changed a lot. Is that correct or was it a side effect of removing the SSS material?
See the Shiny Diffuse for example:

All the old dialogs can be found in this link. Look for files named 04-Yafaray-2a.jpg ... 04-Yafaray-2h.jpg


RE: YafaRay Plug-in - reviewing for Yafaray 3.0 - david.bluecame - 08-02-2016

Hello, Micheus.

Thank you for the explanation! :-)

About the Shiny Diffuse material, not sure why that's different. In any case I still have pending to work on the material and texture dialogs so I'm not too worried (yet)

By the way, I have added more changes and I've compiled a new .beam file matching the commits up to this: https://github.com/DavidBluecame/wings/commit/5e0f82dc673ee37ee0aeea5c2b38c87967f14754

The beam file can be downloaded from: https://github.com/DavidBluecame/YafaRay---unofficial-Builds/blob/8d3b0f7a241e7fd256f0c75c42868b45897eedd7/wpc_yafaray%20beam%20plugin%20-%20wings%20yafaray_v3.0.3%20-%20v2.0.5-27-g5e0f82d%202016-08-02.zip?raw=true

Main changes since the previous .beam file:
* Improvements in the UI from Micheus. Among other improvements, he added a Render Passes setting in YafaRay plugins to reduce clutter in the Render Passes tab.
* Changed some default values as the default output file type and default resolution (was really too small!), default ray depth from 12 to 4 (I don't think the default 12 was really needed in most cases and would slow down renders). We can discuss whether the new defaults make more or less sense than the originals.
* Removed plugin path from Preferences (no longer necessary in YafaRay v3)
* Allows UTF8 characters in the Params Badge (very experimental, please test in several OS and situations to ensure no new issues happen now!)
* Bias control: due to inherent precision issues when calculating with 32bit floats, sometimes we need to avoid self-shadow issues using a bias. The original bias parameter in the YafaRay plugin didn't do anything at all (as far as I know). I've updated it and added the current Bias parameters correctly in a new "Advanced" tab in the Render settings. By default the Bias is set automatically but it can be manually changed for both Shadow Bias and Ray Min Distance. This is only for experts and/or "desperate" cases.
* Added Image Output AutoSave control parameters.
* Added Tile Size and Tile Order parameters, to establish how big the tiles are and in what order to be rendered. Sometimes tile sizes can affect a bit the render speed, so now you can set bigger values to try to reduce render times if needed. The tile order was not necessary until now because YafaRay only generated the image at the end. However, now with the AutoSave features, YafaRay will generate partially rendered images as of the set intervals, so the order becomes relevant now in that case.
* Added Image Output De-Noise control parameters. Note: the DeNoise will only work in the upcoming YafaRay v3.0.3-beta or higher, they will do nothing in the current YafaRay v3.0.2-beta.
* Added internal Film Processing: save and load-save, for example, to be able to save the internal rendering film to be able to interrupt the render and afterwards re-load the film and add more samples to it. There is also a set of "autosave" parameters for the film.
* Added Computer Node parameter in the YafaRay preferences. This can be a number between 0 and 1000 and can be used for an "offline" multicomputer rendering. Each computer can be assigned a different node number and then render the same scene and save the film of each computer. The film name will have a different "node number" in each computer (depending on the value set in Preferences) and if you copy all those film files to one of the computers and render with the film in "Load-Save", it will load all the film files, combine all their samples and generate an image with all samples combined, allowing further noise reduction.

I hope you find it interesting! :-)


RE: YafaRay Plug-in - reviewing for Yafaray 3.0 - micheus - 08-02-2016

(08-02-2016, 04:11 PM)david.bluecame Wrote: About the Shiny Diffuse material, not sure why that's different.
Maybe because of the show/hide logic that was included to process the SSS option removed. If you could confirm those old material fields are the valid one I can fix that before you start to play with this dialog, because it can become a headache. I had spent some time finding the way to organizing the controls groups in order to make them be shown properly. I do prefer make you save time to work in the Yafaray. Smile


RE: YafaRay Plug-in - reviewing for Yafaray 3.0 - david.bluecame - 08-02-2016

Hello,

I'm not sure about the Shiny Diffuse material panel. I think the new panel makes more sense, as there are aspects as Transparency, etc, that are indeed part of the Shiny Diffuse properties. I have to investigate more why the difference.

I have another question for you, Micheus.
I'm using Fedora 24 64bits and I'm doing all my tests in it, with Wings3D, etc.
However, it's very unconfortable to test because it has a lot of refresh issues. I have to start wings maybe 4,5 or even 6-7 times until I get it working. I mean for every change/test.
I suspect maybe recent upstream changes in Gtk could have triggered it, but I'm not sure if this is an Erlang, Erlang-wx or Wings3D problem.

Would it be possible for you to build Wings in Fedora 24 64bit and take a look at these issues?

Thanks!


RE: YafaRay Plug-in - reviewing for Yafaray 3.0 - oort - 08-02-2016

Micheus,
The image you show as the "Old Version" must be an image before you fixed something because the "Old Version" is missing items.

Comparing the "New Version" to what I see in Wings 2.0.3, I noticed that in Shiny Diffuse, the "New Version" is missing "Emit Light", "Oren-Nayer" and "Fresnel Effect".

Maybe these are no longer available???

Thanks,
oort


RE: YafaRay Plug-in - reviewing for Yafaray 3.0 - tkbd - 08-02-2016

Thanks for support UTF-8 file encoding.
Encoding of the file (UTFCool no problem in my environment too(MacOSX 10.11.6).

The Characters that has a diacritical mark was able to be displayed on the badge.
But it did not display the non-Latin characters for UTF-8.Sad
One of the benefits of using the UTF-8 encoding,It can dealing with multiple languages.

For test sample
Quote:ABC_abc_àßõäçöü_あいうえお_春夏秋冬_로마자목록_拉丁字母_देवनागर

If these characters can be displayed in the badge's comments and titles.
It is very helpful for users of non-alphabet-language.
So I think that it is need that corresponds to ~ts.

And...in currently,Wings's Yafaray plug-ins can't write out these strings.
So,as an test, I added manualy a following data to badge tags of XML file prepared for Yafaray.
Code:
<logging_badge name="logging_badge">
    <logging_saveLog bval="false"/>
    <logging_saveHTML bval="false"/>
    <logging_paramsBadgePosition sval="bottom"/>
    <logging_title sval="Title"/>
    <logging_author sval="Author"/>
    <logging_contact sval="contact@address"/>
    <logging_comments sval="ABC_abc_àßõäçöü_あいうえお_春夏秋冬_로마자목록_拉丁字母_देवनागर"/>
    <logging_customIcon sval=""/>
    <logging_drawRenderSettings bval="true"/>
    <logging_drawAANoiseSettings bval="true"/>
</logging_badge>

Yafaray hadn't occuer particularly an error in the XML file rendering.
And In badge display,of cause an characters that don't exist in a font becomes "Tofu".
Tofu : Slang for the empty boxes shown in place of undisplayable code points in computer character encoding, a form of mojibake
(https://en.wikipedia.org/wiki/Tofu_(disambiguation))


But This test shows a possibility of multi-language display at Yafaray.
So I think that it's meaningful which corresponds to ~ts for Yafaray plug-in, again.
(The test tried on MacOSX 10.11.6)


By the way, I tried another test that customIcon path for Yafaray side.
For example
Quote: <logging_customIcon sval="/Users/machdd/Desktop/画像/ねこ.png"/>
Even if containing japanese charactors in the file path or filename,the custom icon image was displayed well.
I suprised for the result. Biggrin
(Note: Current Wings's Yafaray plug-ins can't write out these strings.)
(The test tried on MacOSX 10.11.6)

Cheers!


RE: YafaRay Plug-in - reviewing for Yafaray 3.0 - oort - 08-02-2016

I just noticed that Dispersion Samples is missing from Glass and Rough Glass.

Thanks,
oort