82QSSGRenderContextInterface::QSSGRenderContextInterface(std::unique_ptr<QSSGBufferManager> bufferManager,
83 std::unique_ptr<QSSGRenderer> renderer,
84 std::shared_ptr<QSSGShaderLibraryManager> shaderLibraryManager,
85 std::unique_ptr<QSSGShaderCache> shaderCache,
86 std::unique_ptr<QSSGCustomMaterialSystem> customMaterialSystem,
87 std::unique_ptr<QSSGProgramGenerator> shaderProgramGenerator,
88 std::unique_ptr<QSSGRhiContext> ctx)
89 : QSSGRenderContextInterface {
90 std::move(bufferManager),
92 std::move(shaderLibraryManager),
93 std::move(shaderCache),
94 std::move(customMaterialSystem),
95 std::move(shaderProgramGenerator),
105QSSGRenderContextInterface::QSSGRenderContextInterface(std::unique_ptr<QSSGBufferManager> bufferManager,
106 std::unique_ptr<QSSGRenderer> renderer,
107 std::shared_ptr<QSSGShaderLibraryManager> shaderLibraryManager,
108 std::unique_ptr<QSSGShaderCache> shaderCache,
109 std::unique_ptr<QSSGCustomMaterialSystem> customMaterialSystem,
110 std::unique_ptr<QSSGProgramGenerator> shaderProgramGenerator,
111 std::unique_ptr<QSSGRhiContext> ctx,
112 std::unique_ptr<QSSGDebugDrawSystem> debugDrawSystem)
113 : m_rhiContext(std::move(ctx))
114 , m_shaderCache(std::move(shaderCache))
115 , m_bufferManager(std::move(bufferManager))
116 , m_renderer(std::move(renderer))
117 , m_shaderLibraryManager(std::move(shaderLibraryManager))
118 , m_customMaterialSystem(std::move(customMaterialSystem))
119 , m_shaderProgramGenerator(std::move(shaderProgramGenerator))
120 , m_debugDrawSystem(std::move(debugDrawSystem))
121 , m_perFrameAllocator(
new QSSGPerFrameAllocator)
137QSSGRenderContextInterface::QSSGRenderContextInterface(QRhi *rhi)
138 : m_rhiContext(
new QSSGRhiContext(rhi))
139 , m_shaderCache(
new QSSGShaderCache(*m_rhiContext))
140 , m_bufferManager(
new QSSGBufferManager())
141 , m_renderer(
new QSSGRenderer())
142 , m_shaderLibraryManager(q3ds_shaderLibraryManager())
143 , m_customMaterialSystem(
new QSSGCustomMaterialSystem())
144 , m_shaderProgramGenerator(
new QSSGProgramGenerator())
145 , m_debugDrawSystem(
new QSSGDebugDrawSystem())
146 , m_perFrameAllocator(
new QSSGPerFrameAllocator)
static const std::shared_ptr< QSSGShaderLibraryManager > & q3ds_shaderLibraryManager()
static bool loadPregenratedShaders()