Skip to content

Commit

Permalink
MergeMeshes : Added proxy implementation to allow testing
Browse files Browse the repository at this point in the history
  • Loading branch information
danieldresser-ie committed Aug 7, 2024
1 parent 869a8a4 commit 2a60b22
Show file tree
Hide file tree
Showing 10 changed files with 1,211 additions and 0 deletions.
65 changes: 65 additions & 0 deletions include/GafferScene/MergeMeshes.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
//////////////////////////////////////////////////////////////////////////
//
// Copyright (c) 2024, Image Engine Design Inc. All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above
// copyright notice, this list of conditions and the following
// disclaimer.
//
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following
// disclaimer in the documentation and/or other materials provided with
// the distribution.
//
// * Neither the name of John Haddon nor the names of
// any other contributors to this software may be used to endorse or
// promote products derived from this software without specific prior
// written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
// IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
// THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
// LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
//////////////////////////////////////////////////////////////////////////

#pragma once

#include "GafferScene/MergeObjects.h"

namespace GafferScene
{

class GAFFERSCENE_API MergeMeshes : public MergeObjects
{

public :
GAFFER_NODE_DECLARE_TYPE( GafferScene::MergeMeshes, MergeMeshesTypeId, MergeObjects );

explicit MergeMeshes( const std::string &name=defaultName<MergeMeshes>() );
~MergeMeshes() override;

protected :

IECore::ConstObjectPtr mergeObjects( const std::vector< std::pair< IECore::ConstObjectPtr, Imath::M44f > > &sources, const Gaffer::Context *context ) const override;

private :

static size_t g_firstPlugIndex;

};

IE_CORE_DECLAREPTR( MergeObjects )

} // namespace GafferScene
1 change: 1 addition & 0 deletions include/GafferScene/TypeIds.h
Original file line number Diff line number Diff line change
Expand Up @@ -184,6 +184,7 @@ enum TypeId
RenderPassShaderTypeId = 110640,
ShaderTweakProxyTypeId = 110641,
MergeObjectsTypeId = 110642,
MergeMeshesTypeId = 110643,

PreviewPlaceholderTypeId = 110647,
PreviewGeometryTypeId = 110648,
Expand Down
Loading

0 comments on commit 2a60b22

Please sign in to comment.