Print at Mar 29, 2020, 7:12:01 AM

Posted by enkonyito at Jan 1, 2020, 8:51:21 PM
Re: YafaRay rendering plug-in
Some suggestions for the next version (1.0 Beta 4):
- use a YafarayRenderer.properties file to modify rendering parameters such as for SunflowRender.properties
- include an example xml scene using arealights or visible spherelights because their implementation is problematic
- make tile borders visible to see the number of rendering threads

Enko

Feedback on the light panels.

* When I choose,
params.put("type", "arealight");
// Uses the YafaRay coordinate system (X-right, Y-back, Z-up)
// vertex0 = (0% lightWidth, 0% lightDepth, 0% lightHeight)
// vertex1 = (100% lightWidth, 0% lightDepth, 0% lightHeight)
// vertex2 = (100% lightWidth, 0% lightDepth, 100% lightHeight)
// vertex3 = (0% lightWidth, 0% lightDepth, 100% lightHeight)
Point3f vertex0Location = new Point3f(0.0f - 0.5f, 0.0f - 0.5f, 0.5f - 0.0f);
Point3f vertex1Location = new Point3f(1.0f - 0.5f, 0.0f - 0.5f, 0.5f - 0.0f);
Point3f vertex3Location = new Point3f(0.0f - 0.5f, 0.0f - 0.5f, 0.5f - 1.0f);
lightTransform.transform(vertex0Location);
lightTransform.transform(vertex1Location);
lightTransform.transform(vertex3Location);
Point3f corner = new Point3f(vertex0Location.getX(), -vertex0Location.getZ(), vertex0Location.getY());
Point3f point1 = new Point3f(vertex1Location.getX(), -vertex1Location.getZ(), vertex1Location.getY());
Point3f point2 = new Point3f(vertex3Location.getX(), -vertex3Location.getZ(), vertex3Location.getY());
params.put("corner", corner);
params.put("point1", point1);
params.put("point2", point2);
params.put("color", new float [] {
((lightColor >> 16) & 0xFF) * ((this.homeLightColor >> 16) & 0xFF),
((lightColor >> 8) & 0xFF) * ((this.homeLightColor >> 8) & 0xFF),
(lightColor & 0xFF) * (this.homeLightColor & 0xFF), 1});
params.put("power", power * 100);
params.put("samples", 4);
createLight(UUID.randomUUID().toString(), params);
no light is emitted.

* When I choose,
params.put("type", "meshlight");
params.put("double_sided", false);
params.put("light_enabled", true);
params.put("color", new float [] {
((lightColor >> 16) & 0xFF) * ((this.homeLightColor >> 16) & 0xFF),
((lightColor >> 8) & 0xFF) * ((this.homeLightColor >> 8) & 0xFF),
(lightColor & 0xFF) * (this.homeLightColor & 0xFF), 1});
params.put("power", power * 100);
params.put("samples", 4);
createLight(UUID.randomUUID().toString(), params);
Sweet Home 3D automatically closes every time without an error message in Eclipse.