Building LuxCoreRender: Difference between revisions

From LuxCoreRender Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 5: Line 5:
LuxCoreRender contains multiple targets:
LuxCoreRender contains multiple targets:


{{#mermaid: flowchart LR;
{{#mermaid:
%%{
  init: {
    "theme": "forest",
    "fontFamily": "monospace",
    "logLevel": "info",
    "flowchart": {
      "htmlLabels": true,
      "curve": "linear"
    }
  }
}%%


classDef REPO fill:#0f0f0f0f,stroke:#333,stroke-width:4px,stroke-dasharray: 5 5,font-weight:bold,font-size:1.2rem;
erDiagram;
 
classDef REPO fill:#0f0f0f0f,stroke:#333,stroke-width:4px,stroke-dasharray: 5 5,font-weight:bold,font-size:1.2rem,margin-block:2000px 100px;


subgraph sb_deps["LuxCoreRender/LuxCore"]
subgraph sb_deps["LuxCoreRender/LuxCore"]
Line 68: Line 81:
wheels-. runtime .->pyluxothers
wheels-. runtime .->pyluxothers


|
%% Mermaid version: 8.14.0
config.theme = base
%% https://github.com/mermaid-js/mermaid/blob/8.14.0/src/defaultConfig.js
 
 
   
   
}}
}}

Revision as of 08:45, 19 April 2025

This page is under construction

Build targets

LuxCoreRender contains multiple targets:

Dependencies

Libraries:

  • luxcore
  • pyluxcore

LuxCore Python Wheels

Samples

  • luxcoreui
  • luxcoreconsole

Plugins - BlendLuxCore - <app plugins>

Pyluxcoretools

Building LuxCore Dependencies

Principles

LuxCore dependencies are built by LuxCoreDeps.

The process is:

  • LuxCoreDeps populates a Conan cache by building each of the required dependencies from its sources.
  • This cache is published in LuxCoreDeps releases.
  • On LuxCore side, during the build, the cache is retrieved from the release and made available (restored) for LuxCore build.


Central build

LuxCoreDeps is intended to be run by Github CI/CD pipeline.

You will find all workflows in repository actions.:

  • LuxCore Dependency Builder: build dependencies, triggered on-demand
  • LuxCore Dependency Checker: test dependency build, triggered by push (call Builder)
  • LuxCore Dependency Releaser: publish release of dependencies

In a typical workflow: Testing: Releasing

Local build

Local build is