virtual	bool	CommonSetup()
	{
		const float HalfHeight = 1.0f;
		const float Radius = 1.0f;
		const udword NbCirclePts = GetFromEditBox(60, mEditBox_CylinderTess);
		mCylinder.Generate(NbCirclePts, Radius, HalfHeight);
		RegisterRenderer(CreateConvexRenderer(mCylinder.mNbVerts, mCylinder.mVerts));

		RegisterRenderer(CreateCylinderRenderer(Radius, HalfHeight*2.0f));

		return TestBase::CommonSetup();
	}
	virtual	bool BulldozerTest::CommonSetup()
	{
		mAcceleration			= 200.0f;
		mMaxAngularVelocity		= 10.0f;
		mSteeringForce			= 10.0f*100.0f;
		mCamera.mUpOffset		= 10.0f;
		mCamera.mDistToTarget	= 10.0f;
		mClampAngularVelocity	= true;
		mControlCamera			= true;

		const float HalfHeight = 0.5f;
		const float Radius = 0.6f;
		const udword NbCirclePts = 16;
		mInsideCylinder.Generate(NbCirclePts, Radius, HalfHeight);
		RegisterRenderer(CreateConvexRenderer(mInsideCylinder.mNbVerts, mInsideCylinder.mVerts));

		const float HalfHeight2 = 0.15f;
		const float Radius2 = 1.0f;
		mOutsideCylinder.Generate(NbCirclePts, Radius2, HalfHeight2);
		RegisterRenderer(CreateConvexRenderer(mOutsideCylinder.mNbVerts, mOutsideCylinder.mVerts));

		return VehicleBase::CommonSetup();
	}
Exemple #3
0
	void LuaBinding::RegisterClasses(Nz::LuaInstance& instance)
	{
		RegisterCore(instance);
		RegisterMath(instance);
		RegisterNetwork(instance);
		RegisterSDK(instance);
		RegisterUtility(instance);

		#ifndef NDK_SERVER
		RegisterAudio(instance);
		RegisterGraphics(instance);
		RegisterRenderer(instance);
		#endif
	}
void RootWindow::TraverseWidgets(TraverseType ttype)
{
    std::stack<std::shared_ptr<Widget>> stackOfWidgets;
    auto iter = rootWidget;
    auto iterChild = iter->GetFirstChild();
    auto iterSibling = iter->GetFirstChild();
    while (iter)
    {
        // process each tree node
        switch (ttype)
        {
        case RootWindow::Drawing:
            iter->Draw();
            break;
        case RootWindow::EventProcessing:
            iter->ProcessEvent(currentEvent);
            break;
        case RootWindow::RendererRegistration:
            iter->RegisterRenderer(sdlRenderer);
            break;
        }
        iterChild = iter->GetFirstChild();
        if (iterChild)
        {
            iterSibling = iter->GetNextSibling();
            if (iterSibling) 
            {
                stackOfWidgets.push(iterSibling); // if there is a sibling we save it for later
            }
            iter = iterChild; // if there is a child we traverse down
        }
        else 
        {
            iterSibling = iter->GetNextSibling();
            if (!iterSibling) 
            {
                if (!stackOfWidgets.empty())
                {
                    iterSibling = stackOfWidgets.top(); // if we have saved nodes lets try to get them
                    stackOfWidgets.pop();
                }
            }

            iter = iterSibling; // if there is no child we either go either to the next sibling, next or become empty
        }
    }
}
Exemple #5
0
PLUGIN_INIT()
{
  RegisterRenderer("opengl", CreateRenderer, DestroyRenderer);
  return 0;
}