/*!
	Register an override and associated command
*/
MStatus initializePlugin( MObject obj )
{
	MStatus   status;
	MFnPlugin plugin( obj, PLUGIN_COMPANY, "1.0", "Any");

	// Create and register an override.
	if (!viewRenderOverrideInstance)
	{
		// my_viewRenderOverride is the unique identifier string
		// for this override
		MHWRender::MRenderer* renderer = MHWRender::MRenderer::theRenderer(false);
		if (renderer)
		{
			viewRenderOverrideInstance = new viewRenderOverride( "my_viewRenderOverride" );
			status = renderer->registerOverride(viewRenderOverrideInstance);
		}
	}

	if (!status)
	{
		status.perror("registerOverride");
	}

	return status;
}
示例#2
0
MStatus initializePlugin(MObject obj)
{
	MStatus status = MStatus::kSuccess;
	MFnPlugin plugin(obj, PLUGIN_COMPANY, "1.0", "Any");
	status = MGlobal::startErrorLogging("c:/Temp/myLog.txt");
	if (!initialised)
	{
		Core::initClassFactorySingleton(new Maya::MayaClassFactory());
		Core::startup();
		dag = new Maya::DAG();
		dag->createGraph();
		MHWRender::MRenderer* renderer = MHWRender::MRenderer::theRenderer(false);
		if (renderer)
		{
			rendererOverride = new Maya::RenderOverride();
			status = renderer->registerOverride(rendererOverride);
		}
		else
		{
			status = MStatus::kFailure;
		}
		initialised = true;
	}
	return status;
}
MStatus initializePlugin(MObject obj)
{
	MStatus status;
	MFnPlugin plugin(obj, PLUGIN_COMPANY, "1.0", "Any");

	// ************************ MAYA-25818 PART 1 of 2 *************************
	// Workaround for avoiding dirtying the scene until there's a way to
	// register overrides without causing dirty.
	bool sceneDirty = true; // assume true since that's the safest
	try
	{
		// is the scene currently dirty?
		MCommandResult sceneDirtyResult(&status);
		if (status != MStatus::kSuccess) throw std::exception();
		status = MGlobal::executeCommand("file -query -modified", sceneDirtyResult);
		if (status != MStatus::kSuccess) throw std::exception();
		int commandResult;
		status = sceneDirtyResult.getResult(commandResult);
		if (status != MStatus::kSuccess) throw std::exception();
		sceneDirty = commandResult != 0;
	}
	catch (std::exception&)
	{
		// if we got here, assume the scene is dirty
		sceneDirty = true;
	}
	// ************************ MAYA-25818 PART 1 of 2 *********************

	MHWRender::MRenderer* renderer = MHWRender::MRenderer::theRenderer();
	if (renderer)
	{
		if (!viewImageBlitOverride::RenderOverride::sViewImageBlitOverrideInstance)
		{
			viewImageBlitOverride::RenderOverride::sViewImageBlitOverrideInstance = new viewImageBlitOverride::RenderOverride("my_viewImageBlitOverride");
			renderer->registerOverride(viewImageBlitOverride::RenderOverride::sViewImageBlitOverrideInstance);
		}
	}

	// ************************ MAYA-25818 PART 2 of 2 *************************
	// If the scene was previously unmodified, return it to that state since
	// we haven't done anything that needs to be saved.
	if (sceneDirty == false)
	{
		MGlobal::executeCommand("file -modified 0");
	}
	// ************************ END MAYA-25818 PART 2 of 2 *********************

	return status;
}
MStatus initializePlugin(MObject obj)
{
	MStatus status;
	MFnPlugin plugin(obj, PLUGIN_COMPANY, "1.0", "Any");

	MHWRender::MRenderer* renderer = MHWRender::MRenderer::theRenderer();
	if (renderer)
	{
		if (!viewRenderOverrideShadowsInstance)
		{
			viewRenderOverrideShadowsInstance = new viewRenderOverrideShadows("my_viewRenderOverrideShadows");
			renderer->registerOverride(viewRenderOverrideShadowsInstance);
		}
	}

	return status;
}