forked from blender/blender
Implement export of Shader BSDF nodes #13
@ -147,18 +147,30 @@ set(LIB
|
|||||||
if(WITH_MATERIALX)
|
if(WITH_MATERIALX)
|
||||||
list(APPEND SRC
|
list(APPEND SRC
|
||||||
materialx/material.cc
|
materialx/material.cc
|
||||||
|
materialx/nodes/add_shader.cc
|
||||||
materialx/nodes/brightness.cc
|
materialx/nodes/brightness.cc
|
||||||
|
materialx/nodes/bsdf_diffuse.cc
|
||||||
|
materialx/nodes/bsdf_glass.cc
|
||||||
|
materialx/nodes/bsdf_glossy.cc
|
||||||
materialx/nodes/bsdf_principled.cc
|
materialx/nodes/bsdf_principled.cc
|
||||||
|
materialx/nodes/bsdf_refraction.cc
|
||||||
|
materialx/nodes/bsdf_sheen.cc
|
||||||
|
materialx/nodes/bsdf_toon.cc
|
||||||
|
materialx/nodes/bsdf_translucent.cc
|
||||||
|
materialx/nodes/bsdf_transparent.cc
|
||||||
|
materialx/nodes/emission.cc
|
||||||
materialx/nodes/huesatval.cc
|
materialx/nodes/huesatval.cc
|
||||||
materialx/nodes/invert.cc
|
materialx/nodes/invert.cc
|
||||||
materialx/nodes/math.cc
|
materialx/nodes/math.cc
|
||||||
materialx/nodes/mix_rgb.cc
|
materialx/nodes/mix_rgb.cc
|
||||||
|
materialx/nodes/mix_shader.cc
|
||||||
materialx/nodes/node_item.cc
|
materialx/nodes/node_item.cc
|
||||||
materialx/nodes/node_parser.cc
|
materialx/nodes/node_parser.cc
|
||||||
materialx/nodes/normal_map.cc
|
materialx/nodes/normal_map.cc
|
||||||
materialx/nodes/output_material.cc
|
materialx/nodes/output_material.cc
|
||||||
materialx/nodes/sepcomb_color.cc
|
materialx/nodes/sepcomb_color.cc
|
||||||
materialx/nodes/sepcomb_xyz.cc
|
materialx/nodes/sepcomb_xyz.cc
|
||||||
|
materialx/nodes/subsurface_scattering.cc
|
||||||
materialx/nodes/tex_checker.cc
|
materialx/nodes/tex_checker.cc
|
||||||
materialx/nodes/tex_environment.cc
|
materialx/nodes/tex_environment.cc
|
||||||
materialx/nodes/tex_image.cc
|
materialx/nodes/tex_image.cc
|
||||||
|
27
source/blender/nodes/shader/materialx/nodes/add_shader.cc
Normal file
27
source/blender/nodes/shader/materialx/nodes/add_shader.cc
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||||
|
|
||||||
|
#include "node_parser.h"
|
||||||
|
|
||||||
|
namespace blender::nodes::materialx {
|
||||||
|
|
||||||
|
NodeItem AddShaderNodeParser::compute_bsdf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem AddShaderNodeParser::compute_edf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem AddShaderNodeParser::compute_surface()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace blender::nodes::materialx
|
27
source/blender/nodes/shader/materialx/nodes/bsdf_diffuse.cc
Normal file
27
source/blender/nodes/shader/materialx/nodes/bsdf_diffuse.cc
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||||
|
|
||||||
|
#include "node_parser.h"
|
||||||
|
|
||||||
|
namespace blender::nodes::materialx {
|
||||||
|
|
||||||
|
NodeItem BSDFDiffuseNodeParser::compute_bsdf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem BSDFDiffuseNodeParser::compute_edf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem BSDFDiffuseNodeParser::compute_surface()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace blender::nodes::materialx
|
27
source/blender/nodes/shader/materialx/nodes/bsdf_glass.cc
Normal file
27
source/blender/nodes/shader/materialx/nodes/bsdf_glass.cc
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||||
|
|
||||||
|
#include "node_parser.h"
|
||||||
|
|
||||||
|
namespace blender::nodes::materialx {
|
||||||
|
|
||||||
|
NodeItem BSDFGlassNodeParser::compute_bsdf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem BSDFGlassNodeParser::compute_edf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem BSDFGlassNodeParser::compute_surface()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace blender::nodes::materialx
|
27
source/blender/nodes/shader/materialx/nodes/bsdf_glossy.cc
Normal file
27
source/blender/nodes/shader/materialx/nodes/bsdf_glossy.cc
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||||
|
|
||||||
|
#include "node_parser.h"
|
||||||
|
|
||||||
|
namespace blender::nodes::materialx {
|
||||||
|
|
||||||
|
NodeItem BSDFGlossyNodeParser::compute_bsdf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem BSDFGlossyNodeParser::compute_edf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem BSDFGlossyNodeParser::compute_surface()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace blender::nodes::materialx
|
@ -0,0 +1,27 @@
|
|||||||
|
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||||
|
|
||||||
|
#include "node_parser.h"
|
||||||
|
|
||||||
|
namespace blender::nodes::materialx {
|
||||||
|
|
||||||
|
NodeItem BSDFRefractionNodeParser::compute_bsdf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem BSDFRefractionNodeParser::compute_edf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem BSDFRefractionNodeParser::compute_surface()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace blender::nodes::materialx
|
27
source/blender/nodes/shader/materialx/nodes/bsdf_sheen.cc
Normal file
27
source/blender/nodes/shader/materialx/nodes/bsdf_sheen.cc
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||||
|
|
||||||
|
#include "node_parser.h"
|
||||||
|
|
||||||
|
namespace blender::nodes::materialx {
|
||||||
|
|
||||||
|
NodeItem BSDFSheenNodeParser::compute_bsdf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem BSDFSheenNodeParser::compute_edf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem BSDFSheenNodeParser::compute_surface()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace blender::nodes::materialx
|
27
source/blender/nodes/shader/materialx/nodes/bsdf_toon.cc
Normal file
27
source/blender/nodes/shader/materialx/nodes/bsdf_toon.cc
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||||
|
|
||||||
|
#include "node_parser.h"
|
||||||
|
|
||||||
|
namespace blender::nodes::materialx {
|
||||||
|
|
||||||
|
NodeItem BSDFToonNodeParser::compute_bsdf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem BSDFToonNodeParser::compute_edf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem BSDFToonNodeParser::compute_surface()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace blender::nodes::materialx
|
@ -0,0 +1,27 @@
|
|||||||
|
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||||
|
|
||||||
|
#include "node_parser.h"
|
||||||
|
|
||||||
|
namespace blender::nodes::materialx {
|
||||||
|
|
||||||
|
NodeItem BSDFTranslucentNodeParser::compute_bsdf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem BSDFTranslucentNodeParser::compute_edf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem BSDFTranslucentNodeParser::compute_surface()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace blender::nodes::materialx
|
@ -0,0 +1,27 @@
|
|||||||
|
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||||
|
|
||||||
|
#include "node_parser.h"
|
||||||
|
|
||||||
|
namespace blender::nodes::materialx {
|
||||||
|
|
||||||
|
NodeItem BSDFTransparentNodeParser::compute_bsdf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem BSDFTransparentNodeParser::compute_edf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem BSDFTransparentNodeParser::compute_surface()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace blender::nodes::materialx
|
27
source/blender/nodes/shader/materialx/nodes/emission.cc
Normal file
27
source/blender/nodes/shader/materialx/nodes/emission.cc
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||||
|
|
||||||
|
#include "node_parser.h"
|
||||||
|
|
||||||
|
namespace blender::nodes::materialx {
|
||||||
|
|
||||||
|
NodeItem EmissionNodeParser::compute_bsdf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem EmissionNodeParser::compute_edf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem EmissionNodeParser::compute_surface()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace blender::nodes::materialx
|
27
source/blender/nodes/shader/materialx/nodes/mix_shader.cc
Normal file
27
source/blender/nodes/shader/materialx/nodes/mix_shader.cc
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||||
|
|
||||||
|
#include "node_parser.h"
|
||||||
|
|
||||||
|
namespace blender::nodes::materialx {
|
||||||
|
|
||||||
|
NodeItem MixShaderNodeParser::compute_bsdf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem MixShaderNodeParser::compute_edf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem MixShaderNodeParser::compute_surface()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace blender::nodes::materialx
|
@ -271,7 +271,19 @@ NodeItem ShaderNodeParser::get_input_shader(const bNodeSocket &socket, NodeItem:
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
switch (from_node->typeinfo->type) {
|
switch (from_node->typeinfo->type) {
|
||||||
|
CASE_SHADER_NODE_TYPE(SH_NODE_ADD_SHADER, AddShaderNodeParser)
|
||||||
|
CASE_SHADER_NODE_TYPE(SH_NODE_BSDF_DIFFUSE, BSDFDiffuseNodeParser)
|
||||||
|
CASE_SHADER_NODE_TYPE(SH_NODE_BSDF_GLASS, BSDFGlassNodeParser)
|
||||||
|
CASE_SHADER_NODE_TYPE(SH_NODE_BSDF_GLOSSY, BSDFGlossyNodeParser)
|
||||||
CASE_SHADER_NODE_TYPE(SH_NODE_BSDF_PRINCIPLED, BSDFPrincipledNodeParser)
|
CASE_SHADER_NODE_TYPE(SH_NODE_BSDF_PRINCIPLED, BSDFPrincipledNodeParser)
|
||||||
|
CASE_SHADER_NODE_TYPE(SH_NODE_BSDF_REFRACTION, BSDFRefractionNodeParser)
|
||||||
|
CASE_SHADER_NODE_TYPE(SH_NODE_BSDF_SHEEN, BSDFSheenNodeParser)
|
||||||
|
CASE_SHADER_NODE_TYPE(SH_NODE_BSDF_TOON, BSDFToonNodeParser)
|
||||||
|
CASE_SHADER_NODE_TYPE(SH_NODE_BSDF_TRANSLUCENT, BSDFTranslucentNodeParser)
|
||||||
|
CASE_SHADER_NODE_TYPE(SH_NODE_BSDF_TRANSPARENT, BSDFTransparentNodeParser)
|
||||||
|
CASE_SHADER_NODE_TYPE(SH_NODE_EMISSION, EmissionNodeParser)
|
||||||
|
CASE_SHADER_NODE_TYPE(SH_NODE_MIX_SHADER, MixShaderNodeParser)
|
||||||
|
CASE_SHADER_NODE_TYPE(SH_NODE_SUBSURFACE_SCATTERING, SubsurfaceScatteringNodeParser)
|
||||||
|
|
||||||
default:
|
default:
|
||||||
CLOG_WARN(LOG_MATERIALX_SHADER,
|
CLOG_WARN(LOG_MATERIALX_SHADER,
|
||||||
|
@ -113,6 +113,19 @@ DECLARE_NODE_PARSER(TexImageNodeParser)
|
|||||||
DECLARE_NODE_PARSER(TexNoiseNodeParser)
|
DECLARE_NODE_PARSER(TexNoiseNodeParser)
|
||||||
DECLARE_NODE_PARSER(VectorMathNodeParser)
|
DECLARE_NODE_PARSER(VectorMathNodeParser)
|
||||||
|
|
||||||
|
DECLARE_SHADER_NODE_PARSER(AddShaderNodeParser)
|
||||||
|
DECLARE_SHADER_NODE_PARSER(BSDFDiffuseNodeParser)
|
||||||
|
DECLARE_SHADER_NODE_PARSER(BSDFGlassNodeParser)
|
||||||
|
DECLARE_SHADER_NODE_PARSER(BSDFGlossyNodeParser)
|
||||||
DECLARE_SHADER_NODE_PARSER(BSDFPrincipledNodeParser)
|
DECLARE_SHADER_NODE_PARSER(BSDFPrincipledNodeParser)
|
||||||
|
DECLARE_SHADER_NODE_PARSER(BSDFRefractionNodeParser)
|
||||||
|
DECLARE_SHADER_NODE_PARSER(BSDFSheenNodeParser)
|
||||||
|
DECLARE_SHADER_NODE_PARSER(BSDFToonNodeParser)
|
||||||
|
DECLARE_SHADER_NODE_PARSER(BSDFTranslucentNodeParser)
|
||||||
|
DECLARE_SHADER_NODE_PARSER(BSDFTransparentNodeParser)
|
||||||
|
DECLARE_SHADER_NODE_PARSER(EmissionNodeParser)
|
||||||
|
DECLARE_SHADER_NODE_PARSER(MixShaderNodeParser)
|
||||||
|
DECLARE_SHADER_NODE_PARSER(SubsurfaceScatteringNodeParser)
|
||||||
|
|
||||||
|
|
||||||
} // namespace blender::nodes::materialx
|
} // namespace blender::nodes::materialx
|
||||||
|
@ -0,0 +1,27 @@
|
|||||||
|
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||||
|
|
||||||
|
#include "node_parser.h"
|
||||||
|
|
||||||
|
namespace blender::nodes::materialx {
|
||||||
|
|
||||||
|
NodeItem SubsurfaceScatteringNodeParser::compute_bsdf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem SubsurfaceScatteringNodeParser::compute_edf()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
NodeItem SubsurfaceScatteringNodeParser::compute_surface()
|
||||||
|
{
|
||||||
|
/* TODO: implement */
|
||||||
|
return empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace blender::nodes::materialx
|
Loading…
Reference in New Issue
Block a user