static bool TextureInfoEquals(ModelDiffContext context, TextureInfo lhs, TextureInfo rhs) { if (!context.RequireComapre(lhs, rhs, out bool equals)) { return(equals); } if (lhs.Offset != rhs.Offset) { return(false); } if (lhs.Scaling != rhs.Scaling) { return(false); } return(TextureEquals(context.Enter("Texture"), lhs.Texture, rhs.Texture)); }
static bool TextureEquals(ModelDiffContext context, Texture lhs, Texture rhs) { if (!context.RequireComapre(lhs, rhs, out bool equals)) { if (!equals) { return(false); } return(true); } equals = true; if (!context.Enter("Name").Push(lhs.Name, rhs.Name, StringEquals)) { equals = false; } if (!context.Enter("MagFilter").Push(lhs.Sampler.MagFilter, rhs.Sampler.MagFilter)) { equals = false; } if (!context.Enter("MinFilter").Push(lhs.Sampler.MinFilter, rhs.Sampler.MinFilter)) { equals = false; } if (!context.Enter("WrapS").Push(lhs.Sampler.WrapS, rhs.Sampler.WrapS)) { equals = false; } if (!context.Enter("WrapT").Push(lhs.Sampler.WrapT, rhs.Sampler.WrapT)) { equals = false; } if (lhs is ImageTexture l && rhs is ImageTexture r) { if (!ImageBytesEquals(context, l.Image, r.Image)) { equals = false; } return(equals); }