Skip to content

Commit

Permalink
Merge pull request #956 from odil24/for_blender_4.2_wheels
Browse files Browse the repository at this point in the history
Fixed several nodes issues
  • Loading branch information
howetuft authored Jan 8, 2025
2 parents 186e86b + 908a6b1 commit 6d74b8e
Show file tree
Hide file tree
Showing 5 changed files with 42 additions and 37 deletions.
56 changes: 29 additions & 27 deletions nodes/materials/carpaint.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,16 +29,13 @@ class LuxCoreNodeMatCarpaint(LuxCoreNodeMaterial, bpy.types.Node):
def update_preset(self, context):
enabled = self.preset == "manual"

self.inputs['Diffuse Color'].enabled = enabled
self.inputs['Specular Color 1'].enabled = enabled
self.inputs['Specular Color 2'].enabled = enabled
self.inputs['Specular Color 3'].enabled = enabled
self.inputs['M1'].enabled = enabled
self.inputs['M2'].enabled = enabled
self.inputs['M3'].enabled = enabled
self.inputs['R1'].enabled = enabled
self.inputs['R2'].enabled = enabled
self.inputs['R3'].enabled = enabled
sockets = ["Diffuse Color", "Specular Color 1", "Specular Color 2", "Specular Color 3",
"M1", "M2", "M3", "R1", "R2", "R3"]

for socket in sockets:
id = self.inputs.find(socket)
self.inputs[id].enabled = enabled

utils_node.force_viewport_update(self, context)

preset_items = [
Expand Down Expand Up @@ -77,24 +74,29 @@ def draw_buttons(self, context, layout):
layout.prop(self, "preset")

def sub_export(self, exporter, depsgraph, props, luxcore_name=None, output_socket=None):
definitions = {
"type": "carpaint",
"kd": self.inputs["Diffuse Color"].export(exporter, depsgraph, props),
"ka": self.inputs["Absorption Color"].export(exporter, depsgraph, props),
"ks1": self.inputs["Specular Color 1"].export(exporter, depsgraph, props),
"ks2": self.inputs["Specular Color 2"].export(exporter, depsgraph, props),
"ks3": self.inputs["Specular Color 3"].export(exporter, depsgraph, props),
"d": self.inputs["Absorption Depth (nm)"].export(exporter, depsgraph, props),
"m1": self.inputs["M1"].export(exporter, depsgraph, props),
"m2": self.inputs["M2"].export(exporter, depsgraph, props),
"m3": self.inputs["M3"].export(exporter, depsgraph, props),
"r1": self.inputs["R1"].export(exporter, depsgraph, props),
"r2": self.inputs["R2"].export(exporter, depsgraph, props),
"r3": self.inputs["R3"].export(exporter, depsgraph, props),
}

if self.preset != "manual":
definitions["preset"] = self.preset.replace("_", " ")
definitions = {
"type": "carpaint",
"preset": self.preset.replace("_", " "),
"ka": self.inputs["Absorption Color"].export(exporter, depsgraph, props),
"d": self.inputs["Absorption Depth (nm)"].export(exporter, depsgraph, props)
}
else:
definitions = {
"type": "carpaint",
"kd": self.inputs["Diffuse Color"].export(exporter, depsgraph, props),
"ka": self.inputs["Absorption Color"].export(exporter, depsgraph, props),
"ks1": self.inputs["Specular Color 1"].export(exporter, depsgraph, props),
"ks2": self.inputs["Specular Color 2"].export(exporter, depsgraph, props),
"ks3": self.inputs["Specular Color 3"].export(exporter, depsgraph, props),
"d": self.inputs["Absorption Depth (nm)"].export(exporter, depsgraph, props),
"m1": self.inputs["M1"].export(exporter, depsgraph, props),
"m2": self.inputs["M2"].export(exporter, depsgraph, props),
"m3": self.inputs["M3"].export(exporter, depsgraph, props),
"r1": self.inputs["R1"].export(exporter, depsgraph, props),
"r2": self.inputs["R2"].export(exporter, depsgraph, props),
"r3": self.inputs["R3"].export(exporter, depsgraph, props),
}

self.export_common_inputs(exporter, depsgraph, props, definitions)
return self.create_props(props, definitions, luxcore_name)
6 changes: 4 additions & 2 deletions nodes/materials/metal.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,10 @@ def change_input_type(self, context):
is_fresnel = self.input_type == "fresnel"
is_color = self.input_type == "color"

self.inputs["Fresnel"].enabled = is_fresnel
self.inputs["Color"].enabled = is_color
id = self.inputs.find("Fresnel")
self.inputs[id].enabled = is_fresnel
id = self.inputs.find("Color")
self.inputs[id].enabled = is_color

# The first time the user switches to "fresnel" mode,
# add a fresnel texture automatically
Expand Down
9 changes: 6 additions & 3 deletions nodes/materials/velvet.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,12 @@ class LuxCoreNodeMatVelvet(LuxCoreNodeMaterial, bpy.types.Node):
bl_width_default = 160

def update_advanced(self, context):
self.inputs["p1"].enabled = self.advanced
self.inputs["p2"].enabled = self.advanced
self.inputs["p3"].enabled = self.advanced
sockets = ["p1", "p2", "p3"]

for socket in sockets:
id = self.inputs.find(socket)
self.inputs[id].enabled = self.advanced

utils_node.force_viewport_update(self, context)

advanced: BoolProperty(name="Advanced Options", description="Advanced Velvet Parameters", default=False, update=update_advanced)
Expand Down
3 changes: 2 additions & 1 deletion nodes/textures/fresnel.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@ class LuxCoreNodeTexFresnel(LuxCoreNodeTexture, bpy.types.Node):
bl_width_default = 180

def change_input_type(self, context):
self.inputs["Reflection Color"].enabled = self.input_type == "color"
id = self.inputs.find("Reflection Color")
self.inputs[id].enabled = self.input_type == "color"
utils_node.force_viewport_update(self, context)

input_type_items = [
Expand Down
5 changes: 1 addition & 4 deletions readme.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
![Watermark](https://github.com/LuxCoreRender/BlendLuxCore/blob/master/luxcorerender-logo_orange_grey-shiny.png)

![Example](https://github.com/LuxCoreRender/BlendLuxCore/blob/master/luxcorerender_caustics_scene.jpg)
![Example Render](https://luxcorerender.org/wp-content/uploads/2019/10/dark_mode.jpg)

<sup> [LuxCoreRender.org](https://luxcorerender.org/) | [Forums](https://forums.luxcorerender.org/) | [Wiki](http://wiki.luxcorerender.org/LuxCoreRender_Wiki) </sup>

Expand Down Expand Up @@ -42,4 +40,3 @@ Beforehand, you may want to uninstall previous version of BlendLuxCore: see in "
### [Gallery](https://luxcorerender.org/gallery/)

### [Download example test scenes](https://luxcorerender.org/example-scenes/)

0 comments on commit 6d74b8e

Please sign in to comment.