From de1c64253e6b9b49d426d96c602c5902373e5259 Mon Sep 17 00:00:00 2001 From: Lynix Date: Thu, 4 Jun 2020 18:31:43 +0200 Subject: [PATCH] Fix missing files --- include/Nazara/Renderer/ShaderWriter.hpp | 1 + src/Nazara/Renderer/GlslWriter.cpp | 20 ++++++++++++++++++++ 2 files changed, 21 insertions(+) diff --git a/include/Nazara/Renderer/ShaderWriter.hpp b/include/Nazara/Renderer/ShaderWriter.hpp index 634c335ec..1058fa924 100644 --- a/include/Nazara/Renderer/ShaderWriter.hpp +++ b/include/Nazara/Renderer/ShaderWriter.hpp @@ -34,6 +34,7 @@ namespace Nz virtual void Write(const ShaderAst::AssignOp& node) = 0; virtual void Write(const ShaderAst::Branch& node) = 0; + virtual void Write(const ShaderAst::BinaryFunc& node) = 0; virtual void Write(const ShaderAst::BinaryOp& node) = 0; virtual void Write(const ShaderAst::BuiltinVariable& node) = 0; virtual void Write(const ShaderAst::Cast& node) = 0; diff --git a/src/Nazara/Renderer/GlslWriter.cpp b/src/Nazara/Renderer/GlslWriter.cpp index 73abec55f..b37b9deff 100644 --- a/src/Nazara/Renderer/GlslWriter.cpp +++ b/src/Nazara/Renderer/GlslWriter.cpp @@ -173,6 +173,26 @@ namespace Nz } } + void GlslWriter::Write(const ShaderAst::BinaryFunc& node) + { + switch (node.intrinsic) + { + case ShaderAst::BinaryIntrinsic::CrossProduct: + Append("cross"); + break; + + case ShaderAst::BinaryIntrinsic::DotProduct: + Append("dot"); + break; + } + + Append("("); + Write(node.left); + Append(", "); + Write(node.right); + Append(")"); + } + void GlslWriter::Write(const ShaderAst::BinaryOp& node) { Write(node.left);