Add to the V3d_Viewer default rendering params.
Initialize rendering params of new V3d_View by default rendering params.
Graphic3d_CView::myRenderingParams is handle now.
Add to the AIS_InteractiveContext methods DefaultRenderingParams() and SetDefaultResolution().
theView->FitAll (aBndSelected, theMargin, theToUpdate);
}
+
+//=======================================================================
+//function : SetResolution
+//purpose :
+//=======================================================================
+void AIS_InteractiveContext::SetDefaultResolution (const unsigned int theResolution)
+{
+ for (myMainVwr->InitDefinedViews(); myMainVwr->MoreDefinedViews(); myMainVwr->NextDefinedViews())
+ {
+ myMainVwr->DefinedView()->Redraw();
+ }
+
+ myMainVwr->DefaultRenderingParams()->Resolution = theResolution;
+}
+
+//=======================================================================
+//function : SetDefaultRenderingParams
+//purpose :
+//=======================================================================
+const Handle(Graphic3d_RenderingParams)& AIS_InteractiveContext::DefaultRenderingParams() const
+{
+ return myMainVwr->DefaultRenderingParams();
+}
//! Redraws immediate structures in all views of the viewer given taking into account its visibility.
Standard_EXPORT void RedrawImmediate (const Handle(V3d_Viewer)& theViewer);
+ //! Sets a new resolution for default rendering params.
+ Standard_EXPORT void SetDefaultResolution (const unsigned int theResolution);
+
+ //! Returns default rendering params.
+ Standard_EXPORT const Handle(Graphic3d_RenderingParams)& DefaultRenderingParams() const;
friend class AIS_LocalContext;
myVisualization (Graphic3d_TOV_WIREFRAME)
{
myId = myStructureManager->Identification (this);
+ myRenderParams = new Graphic3d_RenderingParams();
}
//=======================================================================
Standard_EXPORT virtual void CopySettings (const Handle(Graphic3d_CView)& theOther);
//! Returns current rendering parameters and effect settings.
- const Graphic3d_RenderingParams& RenderingParams() const { return myRenderParams; }
+ const Handle(Graphic3d_RenderingParams)& RenderingParams() const { return myRenderParams; }
//! Returns reference to current rendering parameters and effect settings.
- Graphic3d_RenderingParams& ChangeRenderingParams() { return myRenderParams; }
+ Handle(Graphic3d_RenderingParams)& ChangeRenderingParams() { return myRenderParams; }
//! Returns true if anti-aliasing is enabled for the view.
virtual Standard_Boolean IsAntialiasingEnabled() const = 0;
protected:
Standard_Integer myId;
- Graphic3d_RenderingParams myRenderParams;
+ Handle(Graphic3d_RenderingParams) myRenderParams;
Handle(Graphic3d_StructureManager) myStructureManager;
Graphic3d_SequenceOfStructure myStructsToCompute;
Graphic3d_SequenceOfStructure myStructsComputed;
#include <Graphic3d_Vec4.hxx>
//! Helper class to store rendering parameters.
-class Graphic3d_RenderingParams
+class Graphic3d_RenderingParams : public Standard_Transient
{
public:
//! Default pixels density.
//!< Note that using difference resolution in different Views in same Viewer
//!< will lead to performance regression (for example, text will be recreated every time).
+public:
+ DEFINE_STANDARD_RTTI(Graphic3d_RenderingParams, Standard_Transient)
};
+DEFINE_STANDARD_HANDLE(Graphic3d_RenderingParams, Standard_Transient)
+
#endif // _Graphic3d_RenderingParams_HeaderFile
aTextAspect.SetAspect(aDefaultContextText);
TCollection_ExtendedString anExtText = theText;
NCollection_String aText = (Standard_Utf16Char* )anExtText.ToExtString();
- OpenGl_Text::StringSize(aCtx, aText, aTextAspect, aTextParam, theView->RenderingParams().Resolution, theWidth, theAscent, theDescent);
+ OpenGl_Text::StringSize(aCtx, aText, aTextAspect, aTextParam, theView->RenderingParams()->Resolution, theWidth, theAscent, theDescent);
}
//=======================================================================
*aTextAspect,
*theWorkspace->HighlightColor,
*theWorkspace->HighlightColor,
- theWorkspace->View()->RenderingParams().Resolution);
+ theWorkspace->View()->RenderingParams()->Resolution);
}
else
{
*aTextAspect,
aTextAspect->Color(),
aTextAspect->SubtitleColor(),
- theWorkspace->View()->RenderingParams().Resolution);
+ theWorkspace->View()->RenderingParams()->Resolution);
}
aCtx->BindProgram (NULL);
}
}
- if (myRenderParams.RaytracingDepth != myRaytraceParameters.NbBounces)
+ if (myRenderParams->RaytracingDepth != myRaytraceParameters.NbBounces)
{
- myRaytraceParameters.NbBounces = myRenderParams.RaytracingDepth;
+ myRaytraceParameters.NbBounces = myRenderParams->RaytracingDepth;
aToRebuildShaders = Standard_True;
}
aToRebuildShaders = Standard_True;
}
- if (myRenderParams.IsTransparentShadowEnabled != myRaytraceParameters.TransparentShadows)
+ if (myRenderParams->IsTransparentShadowEnabled != myRaytraceParameters.TransparentShadows)
{
- myRaytraceParameters.TransparentShadows = myRenderParams.IsTransparentShadowEnabled;
+ myRaytraceParameters.TransparentShadows = myRenderParams->IsTransparentShadowEnabled;
aToRebuildShaders = Standard_True;
}
- if (myRenderParams.IsGlobalIlluminationEnabled != myRaytraceParameters.GlobalIllumination)
+ if (myRenderParams->IsGlobalIlluminationEnabled != myRaytraceParameters.GlobalIllumination)
{
- myRaytraceParameters.GlobalIllumination = myRenderParams.IsGlobalIlluminationEnabled;
+ myRaytraceParameters.GlobalIllumination = myRenderParams->IsGlobalIlluminationEnabled;
aToRebuildShaders = Standard_True;
}
return safeFailBack ("Ray-tracing requires EXT_framebuffer_blit extension", theGlContext);
}
- myRaytraceParameters.NbBounces = myRenderParams.RaytracingDepth;
+ myRaytraceParameters.NbBounces = myRenderParams->RaytracingDepth;
TCollection_AsciiString aFolder = Graphic3d_ShaderProgram::ShadersFolder();
// Set run-time rendering options
theProgram->SetUniform (theGlContext,
- myUniformLocations[theProgramId][OpenGl_RT_uShadowsEnabled], myRenderParams.IsShadowEnabled ? 1 : 0);
+ myUniformLocations[theProgramId][OpenGl_RT_uShadowsEnabled], myRenderParams->IsShadowEnabled ? 1 : 0);
theProgram->SetUniform (theGlContext,
- myUniformLocations[theProgramId][OpenGl_RT_uReflectEnabled], myRenderParams.IsReflectionEnabled ? 1 : 0);
+ myUniformLocations[theProgramId][OpenGl_RT_uReflectEnabled], myRenderParams->IsReflectionEnabled ? 1 : 0);
- if (myRenderParams.IsGlobalIlluminationEnabled)
+ if (myRenderParams->IsGlobalIlluminationEnabled)
{
theProgram->SetUniform (theGlContext,
- myUniformLocations[theProgramId][OpenGl_RT_uBlockedRngEnabled], myRenderParams.CoherentPathTracingMode ? 1 : 0);
+ myUniformLocations[theProgramId][OpenGl_RT_uBlockedRngEnabled], myRenderParams->CoherentPathTracingMode ? 1 : 0);
}
// Set array of 64-bit texture handles
}
theProgram->SetUniform (theGlContext,
- myUniformLocations[theProgramId][OpenGl_RT_uSphereMapForBack], myRenderParams.UseEnvironmentMapBackground ? 1 : 0);
+ myUniformLocations[theProgramId][OpenGl_RT_uSphereMapForBack], myRenderParams->UseEnvironmentMapBackground ? 1 : 0);
return Standard_True;
}
aRenderFramebuffer->BindBuffer (theGlContext);
}
- else if (myRenderParams.IsAntialiasingEnabled) // if 2-pass ray-tracing is used
+ else if (myRenderParams->IsAntialiasingEnabled) // if 2-pass ray-tracing is used
{
myRaytraceFBO1->BindBuffer (theGlContext);
++myAccumFrames;
}
- else if (myRenderParams.IsAntialiasingEnabled)
+ else if (myRenderParams->IsAntialiasingEnabled)
{
myRaytraceFBO1->ColorTexture()->Bind (theGlContext, GL_TEXTURE0 + OpenGl_RT_FsaaInputTexture);
//=======================================================================
void OpenGl_View::Redraw()
{
- if (myRenderParams.Method == Graphic3d_RM_RAYTRACING
+ if (myRenderParams->Method == Graphic3d_RM_RAYTRACING
&& !myCaps->vboDisable
&& !myCaps->keepArrayData)
{
myWindow->SetSwapInterval();
++myFrameCounter;
- const Graphic3d_StereoMode aStereoMode = myRenderParams.StereoMode;
+ const Graphic3d_StereoMode aStereoMode = myRenderParams->StereoMode;
Graphic3d_Camera::Projection aProjectType = myCamera->ProjectionType();
Handle(OpenGl_Context) aCtx = myWorkspace->GetGlContext();
return;
}
- const Graphic3d_StereoMode aStereoMode = myRenderParams.StereoMode;
+ const Graphic3d_StereoMode aStereoMode = myRenderParams->StereoMode;
Graphic3d_Camera::Projection aProjectType = myCamera->ProjectionType();
OpenGl_FrameBuffer* aFrameBuffer = (OpenGl_FrameBuffer* )myFBO;
}
Standard_Boolean toRenderGL = theToDrawImmediate ||
- myRenderParams.Method != Graphic3d_RM_RAYTRACING ||
+ myRenderParams->Method != Graphic3d_RM_RAYTRACING ||
myRaytraceInitStatus == OpenGl_RT_FAIL ||
aCtx->IsFeedback();
case Graphic3d_TOD_ENVIRONMENT:
myWorkspace->NamedStatus |= OPENGL_NS_FORBIDSETTEX;
- if (myRenderParams.Method != Graphic3d_RM_RAYTRACING)
+ if (myRenderParams->Method != Graphic3d_RM_RAYTRACING)
{
myWorkspace->EnableTexture (myTextureEnv);
}
if (myWorkspace->NamedStatus & OPENGL_NS_2NDPASSNEED)
{
myWorkspace->NamedStatus |= OPENGL_NS_2NDPASSDO;
- if (myRenderParams.Method != Graphic3d_RM_RAYTRACING)
+ if (myRenderParams->Method != Graphic3d_RM_RAYTRACING)
{
myWorkspace->EnableTexture (myTextureEnv);
}
myWindow->PlatformWindow()->Position (aGeom.left, aGeom.top, aGeom.right, aGeom.bottom);
- Standard_Boolean toReverse = myRenderParams.ToReverseStereo;
+ Standard_Boolean toReverse = myRenderParams->ToReverseStereo;
const Standard_Boolean isOddY = (aGeom.top + aGeom.dy()) % 2 == 1;
const Standard_Boolean isOddX = aGeom.left % 2 == 1;
if (isOddY
- && (myRenderParams.StereoMode == Graphic3d_StereoMode_RowInterlaced
- || myRenderParams.StereoMode == Graphic3d_StereoMode_ChessBoard))
+ && (myRenderParams->StereoMode == Graphic3d_StereoMode_RowInterlaced
+ || myRenderParams->StereoMode == Graphic3d_StereoMode_ChessBoard))
{
toReverse = !toReverse;
}
if (isOddX
- && (myRenderParams.StereoMode == Graphic3d_StereoMode_ColumnInterlaced
- || myRenderParams.StereoMode == Graphic3d_StereoMode_ChessBoard))
+ && (myRenderParams->StereoMode == Graphic3d_StereoMode_ColumnInterlaced
+ || myRenderParams->StereoMode == Graphic3d_StereoMode_ChessBoard))
{
toReverse = !toReverse;
}
const Handle(OpenGl_ShaderManager)& aManager = aCtx->ShaderManager();
if (aVerts->IsValid()
- && aManager->BindStereoProgram (myRenderParams.StereoMode))
+ && aManager->BindStereoProgram (myRenderParams->StereoMode))
{
- if (myRenderParams.StereoMode == Graphic3d_StereoMode_Anaglyph)
+ if (myRenderParams->StereoMode == Graphic3d_StereoMode_Anaglyph)
{
OpenGl_Mat4 aFilterL, aFilterR;
aFilterL.SetDiagonal (Graphic3d_Vec4 (0.0f, 0.0f, 0.0f, 0.0f));
aFilterR.SetDiagonal (Graphic3d_Vec4 (0.0f, 0.0f, 0.0f, 0.0f));
- switch (myRenderParams.AnaglyphFilter)
+ switch (myRenderParams->AnaglyphFilter)
{
case Graphic3d_RenderingParams::Anaglyph_RedCyan_Simple:
{
}
case Graphic3d_RenderingParams::Anaglyph_UserDefined:
{
- aFilterL = myRenderParams.AnaglyphLeft;
- aFilterR = myRenderParams.AnaglyphRight;
+ aFilterL = myRenderParams->AnaglyphLeft;
+ aFilterR = myRenderParams->AnaglyphRight;
break;
}
}
Standard_EXPORT const Handle(Graphic3d_Camera)& Camera() const;
//! Returns current rendering parameters and effect settings.
- Standard_EXPORT const Graphic3d_RenderingParams& RenderingParams() const;
+ Standard_EXPORT const Handle(Graphic3d_RenderingParams)& RenderingParams() const;
//! Returns reference to current rendering parameters and effect settings.
- Standard_EXPORT Graphic3d_RenderingParams& ChangeRenderingParams();
+ Standard_EXPORT Handle(Graphic3d_RenderingParams)& ChangeRenderingParams();
//! @return flag value of objects culling mechanism
Standard_EXPORT Standard_Boolean IsCullingEnabled() const;
//function : RenderingParams
//purpose :
//=============================================================================
-const Graphic3d_RenderingParams& V3d_View::RenderingParams() const
+const Handle(Graphic3d_RenderingParams)& V3d_View::RenderingParams() const
{
return myView->RenderingParams();
}
//function : ChangeRenderingParams
//purpose :
//=============================================================================
-Graphic3d_RenderingParams& V3d_View::ChangeRenderingParams()
+Handle(Graphic3d_RenderingParams)& V3d_View::ChangeRenderingParams()
{
return myView->ChangeRenderingParams();
}
myRGrid = new V3d_RectangularGrid (this, Color1, Color2);
myCGrid = new V3d_CircularGrid (this, Color1, Color2);
myGridType = Aspect_GT_Rectangular;
+
+ // Create the default rendering params.
+ myDefaultRenderingParams = new Graphic3d_RenderingParams();
}
// ========================================================================
// ========================================================================
Handle(V3d_View) V3d_Viewer::CreateView ()
{
- return new V3d_View(this, MyDefaultTypeOfView);
+ Handle(V3d_View) aNewView = new V3d_View(this, MyDefaultTypeOfView);
+ aNewView->ChangeRenderingParams() = myDefaultRenderingParams;
+
+ return aNewView;
}
// ========================================================================
{
myNextCount++;
}
+
+//=======================================================================
+//function : DefaultRenderingParams
+//purpose :
+//=======================================================================
+Handle(Graphic3d_RenderingParams)& V3d_Viewer::DefaultRenderingParams()
+{
+ return myDefaultRenderingParams;
+}
Standard_EXPORT Standard_CString Domain() const;
+ Standard_EXPORT Handle(Graphic3d_RenderingParams)& DefaultRenderingParams();
+
friend class V3d_View;
friend class V3d_Light;
Graphic3d_Vertex myGridEchoLastVert;
TColStd_MapOfInteger myLayerIds;
Aspect_GenId myZLayerGenId;
+
+ Handle(Graphic3d_RenderingParams) myDefaultRenderingParams;
};
#endif // _V3d_Viewer_HeaderFile
case WM_MOVE:
case WM_MOVING:
case WM_SIZING:
- switch (aView->RenderingParams().StereoMode)
+ switch (aView->RenderingParams()->StereoMode)
{
case Graphic3d_StereoMode_RowInterlaced:
case Graphic3d_StereoMode_ColumnInterlaced:
<< "CPU: " << (1000.0 * aCpuAver) << " msec\n";
// compute additional statistics in ray-tracing mode
- Graphic3d_RenderingParams& aParams = aView->ChangeRenderingParams();
+ Handle(Graphic3d_RenderingParams) aParams = aView->ChangeRenderingParams();
- if (aParams.Method == Graphic3d_RM_RAYTRACING)
+ if (aParams->Method == Graphic3d_RM_RAYTRACING)
{
Standard_Integer aSizeX;
Standard_Integer aSizeY;
aView->Window()->Size (aSizeX, aSizeY);
// 1 shadow ray and 1 secondary ray pew each bounce
- const Standard_Real aMRays = aSizeX * aSizeY * aFpsAver * aParams.RaytracingDepth * 2 / 1.0e6f;
+ const Standard_Real aMRays = aSizeX * aSizeY * aFpsAver * aParams->RaytracingDepth * 2 / 1.0e6f;
theDI << "MRays/sec (upper bound): " << aMRays << "\n";
}
return 0;
}
- Handle(Graphic3d_Camera) aCamera;
- Graphic3d_RenderingParams* aParams = NULL;
- Graphic3d_StereoMode aMode = Graphic3d_StereoMode_QuadBuffer;
+ Handle(Graphic3d_Camera) aCamera;
+ Handle(Graphic3d_RenderingParams) aParams = NULL;
+ Graphic3d_StereoMode aMode = Graphic3d_StereoMode_QuadBuffer;
if (!aView.IsNull())
{
- aParams = &aView->ChangeRenderingParams();
+ aParams = aView->ChangeRenderingParams();
aMode = aParams->StereoMode;
aCamera = aView->Camera();
}
return 1;
}
- Graphic3d_RenderingParams& aParams = aView->ChangeRenderingParams();
+ Handle(Graphic3d_RenderingParams) aParams = aView->ChangeRenderingParams();
TCollection_AsciiString aCmdName (theArgVec[0]);
aCmdName.LowerCase();
if (aCmdName == "vraytrace")
{
if (theArgNb == 1)
{
- theDI << (aParams.Method == Graphic3d_RM_RAYTRACING ? "on" : "off") << " ";
+ theDI << (aParams->Method == Graphic3d_RM_RAYTRACING ? "on" : "off") << " ";
return 0;
}
else if (theArgNb == 2)
if (aValue == "on"
|| aValue == "1")
{
- aParams.Method = Graphic3d_RM_RAYTRACING;
+ aParams->Method = Graphic3d_RM_RAYTRACING;
aView->Redraw();
return 0;
}
else if (aValue == "off"
|| aValue == "0")
{
- aParams.Method = Graphic3d_RM_RASTERIZATION;
+ aParams->Method = Graphic3d_RM_RASTERIZATION;
aView->Redraw();
return 0;
}
if (theArgNb < 2)
{
theDI << "renderMode: ";
- switch (aParams.Method)
+ switch (aParams->Method)
{
case Graphic3d_RM_RASTERIZATION: theDI << "rasterization "; break;
case Graphic3d_RM_RAYTRACING: theDI << "raytrace "; break;
}
theDI << "\n";
- theDI << "fsaa: " << (aParams.IsAntialiasingEnabled ? "on" : "off") << "\n";
- theDI << "shadows: " << (aParams.IsShadowEnabled ? "on" : "off") << "\n";
- theDI << "reflections: " << (aParams.IsReflectionEnabled ? "on" : "off") << "\n";
- theDI << "rayDepth: " << aParams.RaytracingDepth << "\n";
- theDI << "gleam: " << (aParams.IsTransparentShadowEnabled ? "on" : "off") << "\n";
- theDI << "GI: " << (aParams.IsGlobalIlluminationEnabled ? "on" : "off") << "\n";
- theDI << "blocked RNG: " << (aParams.CoherentPathTracingMode ? "on" : "off") << "\n";
+ theDI << "fsaa: " << (aParams->IsAntialiasingEnabled ? "on" : "off") << "\n";
+ theDI << "shadows: " << (aParams->IsShadowEnabled ? "on" : "off") << "\n";
+ theDI << "reflections: " << (aParams->IsReflectionEnabled ? "on" : "off") << "\n";
+ theDI << "rayDepth: " << aParams->RaytracingDepth << "\n";
+ theDI << "gleam: " << (aParams->IsTransparentShadowEnabled ? "on" : "off") << "\n";
+ theDI << "GI: " << (aParams->IsGlobalIlluminationEnabled ? "on" : "off") << "\n";
+ theDI << "blocked RNG: " << (aParams->CoherentPathTracingMode ? "on" : "off") << "\n";
theDI << "shadingModel: ";
switch (aView->ShadingModel())
{
{
if (toPrint)
{
- switch (aParams.Method)
+ switch (aParams->Method)
{
case Graphic3d_RM_RASTERIZATION: theDI << "rasterization "; break;
case Graphic3d_RM_RAYTRACING: theDI << "ray-tracing "; break;
{
if (toPrint)
{
- theDI << (aParams.Method == Graphic3d_RM_RAYTRACING ? "true" : "false") << " ";
+ theDI << (aParams->Method == Graphic3d_RM_RAYTRACING ? "true" : "false") << " ";
continue;
}
- aParams.Method = Graphic3d_RM_RAYTRACING;
+ aParams->Method = Graphic3d_RM_RAYTRACING;
}
else if (aFlag == "-rast"
|| aFlag == "-raster"
{
if (toPrint)
{
- theDI << (aParams.Method == Graphic3d_RM_RASTERIZATION ? "true" : "false") << " ";
+ theDI << (aParams->Method == Graphic3d_RM_RASTERIZATION ? "true" : "false") << " ";
continue;
}
- aParams.Method = Graphic3d_RM_RASTERIZATION;
+ aParams->Method = Graphic3d_RM_RASTERIZATION;
}
else if (aFlag == "-raydepth"
|| aFlag == "-ray_depth")
{
if (toPrint)
{
- theDI << aParams.RaytracingDepth << " ";
+ theDI << aParams->RaytracingDepth << " ";
continue;
}
else if (++anArgIter >= theArgNb)
const Standard_Integer aDepth = Draw::Atoi (theArgVec[anArgIter]);
// We allow RaytracingDepth be more than 10 in case of GI enabled
- if (aDepth < 1 || (aDepth > 10 && !aParams.IsGlobalIlluminationEnabled))
+ if (aDepth < 1 || (aDepth > 10 && !aParams->IsGlobalIlluminationEnabled))
{
std::cerr << "Error: invalid ray-tracing depth " << aDepth << ". Should be within range [1; 10]\n";
return 1;
}
else
{
- aParams.RaytracingDepth = aDepth;
+ aParams->RaytracingDepth = aDepth;
}
}
else if (aFlag == "-shad"
{
if (toPrint)
{
- theDI << (aParams.IsShadowEnabled ? "on" : "off") << " ";
+ theDI << (aParams->IsShadowEnabled ? "on" : "off") << " ";
continue;
}
{
--anArgIter;
}
- aParams.IsShadowEnabled = toEnable;
+ aParams->IsShadowEnabled = toEnable;
}
else if (aFlag == "-refl"
|| aFlag == "-reflections")
{
if (toPrint)
{
- theDI << (aParams.IsReflectionEnabled ? "on" : "off") << " ";
+ theDI << (aParams->IsReflectionEnabled ? "on" : "off") << " ";
continue;
}
{
--anArgIter;
}
- aParams.IsReflectionEnabled = toEnable;
+ aParams->IsReflectionEnabled = toEnable;
}
else if (aFlag == "-fsaa")
{
if (toPrint)
{
- theDI << (aParams.IsAntialiasingEnabled ? "on" : "off") << " ";
+ theDI << (aParams->IsAntialiasingEnabled ? "on" : "off") << " ";
continue;
}
{
--anArgIter;
}
- aParams.IsAntialiasingEnabled = toEnable;
+ aParams->IsAntialiasingEnabled = toEnable;
}
else if (aFlag == "-gleam")
{
if (toPrint)
{
- theDI << (aParams.IsTransparentShadowEnabled ? "on" : "off") << " ";
+ theDI << (aParams->IsTransparentShadowEnabled ? "on" : "off") << " ";
continue;
}
{
--anArgIter;
}
- aParams.IsTransparentShadowEnabled = toEnable;
+ aParams->IsTransparentShadowEnabled = toEnable;
}
else if (aFlag == "-gi")
{
if (toPrint)
{
- theDI << (aParams.IsGlobalIlluminationEnabled ? "on" : "off") << " ";
+ theDI << (aParams->IsGlobalIlluminationEnabled ? "on" : "off") << " ";
continue;
}
{
--anArgIter;
}
- aParams.IsGlobalIlluminationEnabled = toEnable;
+ aParams->IsGlobalIlluminationEnabled = toEnable;
if (!toEnable)
{
- aParams.RaytracingDepth = Min (aParams.RaytracingDepth, 10);
+ aParams->RaytracingDepth = Min (aParams->RaytracingDepth, 10);
}
}
else if (aFlag == "-blockedrng"
{
if (toPrint)
{
- theDI << (aParams.CoherentPathTracingMode ? "on" : "off") << " ";
+ theDI << (aParams->CoherentPathTracingMode ? "on" : "off") << " ";
continue;
}
{
--anArgIter;
}
- aParams.CoherentPathTracingMode = toEnable;
+ aParams->CoherentPathTracingMode = toEnable;
}
else if (aFlag == "-env")
{
if (toPrint)
{
- theDI << (aParams.UseEnvironmentMapBackground ? "on" : "off") << " ";
+ theDI << (aParams->UseEnvironmentMapBackground ? "on" : "off") << " ";
continue;
}
{
--anArgIter;
}
- aParams.UseEnvironmentMapBackground = toEnable;
+ aParams->UseEnvironmentMapBackground = toEnable;
}
else if (aFlag == "-shademodel"
|| aFlag == "-shadingmodel"
TCollection_AsciiString aResolution (theArgVec[anArgIter]);
if (aResolution.IsIntegerValue())
{
- aView->ChangeRenderingParams().Resolution = static_cast<unsigned int> (Draw::Atoi (aResolution.ToCString()));
+ aView->ChangeRenderingParams()->Resolution = static_cast<unsigned int> (Draw::Atoi (aResolution.ToCString()));
}
else
{