Módulo Raytracing

From FreeCAD Documentation
Revision as of 11:37, 5 November 2021 by FuzzyBot (talk | contribs) (Updating to match new version of source page)
Jump to navigation Jump to search
Other languages:
Bahasa Indonesia • ‎Deutsch • ‎English • ‎Türkçe • ‎español • ‎français • ‎hrvatski • ‎italiano • ‎polski • ‎português • ‎português do Brasil • ‎română • ‎svenska • ‎čeština • ‎русский • ‎українська • ‎中文 • ‎中文(中国大陆)‎ • ‎中文(台灣)‎ • ‎日本語 • ‎한국어
The Raytracing workbench is essentially obsolete. New development is happening in the Render Workbench, which is intended as its replacement. This workbench is fully programmed in Python so it is much easier to extend.

Nevertheless, the information in this page is generally useful for the new workbench, as both modules work basically in the same way.

Raytracing workbench icon


A Bancada Raytracing é utilizada para gerar imagens fotorrealísticas de modelos ao processá-las com um renderizador externo.

The Workbench Raytracing.svg Raytracing Workbench is used to generate photorealistic images of your models by processing them with an external renderer.

A bancada Raytracing trabalha com works with templates, os quais são arquivos de projetos que definem uma cena para o seu modelo 3D. Você pode colocar luzes e geometrias, como planos de base, e também contém espaços reservados para a posição da câmera e para as informações do material dos objetos na cena. O projeto pode ser exportado para um arquivo pronto para renderização ou renderizado diretamente no FreeCAD.

Atualmente, dois renderizadores são suportados: povray e luxrender. Para poder renderizar a partir do FreeCAD, pelo menos um desses programas deve ser instalado e configurado em seu sistema. No entanto, se nenhum renderizador estiver instalado, você ainda poderá exportar um arquivo de projeto para ser renderizado em outro momento.

Um novo Render Workbench está em desenvolvimento para suportar múltiplos back-ends como o Lux Renderer e o Yafaray. Informações para usar a versão de desenvolvimento podem ser visualizadas em Render project. Para o status de desenvolvimento do Módulo Render, procure no projeto Raytracing project.

Raytracing example.jpg

Fluxo de trabalho típico

  1. Crie ou abra um projeto do FreeCAD, adicione alguns objetos sólidos ( Part-based ou PartDesign-based); malhas atualmente não são suportadas.
  2. Crie um projeto de Raytracing (povray ou luxrender).
  3. Selecione os objetos que você deseja adicionar ao projeto Raytracing e adicione-os.
  4. Exportar o arquivo do projeto ou renderizá-lo diretamente.

Raytracing Workbench workflow.svg

Workflow of the Raytracing Workbench; the workbench prepares a project file from a given template, and then calls an external program to produce the actual rendering of the scene. The external renderer can be used independently of FreeCAD.


Project tools

These are the main tools for exporting your 3D work to external renderers.

  • Raytracing New.svg New PovRay project: Insert new PovRay project in the document
  • Raytracing Lux.svg New LuxRender project: Insert new LuxRender project in the document
  • Raytracing InsertPart.svg Insert part: Insert a view of a Part in a raytracing project
  • Raytracing ResetCamera.svg Reset camera: Matches the camera position of a raytracing project to the current view
  • Raytracing ExportProject.svg Export project: Exports a raytracing project to a scene file for rendering in an external renderer
  • Raytracing Render.svg Render: Renders a raytracing project with an external renderer


These are helper tools to perform specific tasks manually.


  • Preferences-raytracing.svg Preferences: Preferences available in for the Raytracing tools.


Creating a povray file manually

The utility tools described above allow you to export the current 3D view and all of its content to a Povray file. First, you must load or create your CAD data and position the 3D View orientation as you wish. Then choose "Utilities → Export View..." from the raytracing menu.

FreeCAD Raytracing.jpg

You will be asked for a location to save the resulting *.pov file. After that you can open it in Povray and render:


As usual in a renderer you can make big and nice pictures:

Scharniergreifer render.jpg


See the Raytracing API example for information on writing scenes programmatically.




Future possible renderers to implement

Exporting to Kerkythea

Although direct export to the Kerkythea XML-File-Format is not supported yet, you can export your Objects as Mesh-Files (.obj) and then import them in Kerkythea.

  • if using Kerkythea for Linux, remember to install the WINE-Package (needed by Kerkythea for Linux to run)
  • you can convert your models with the help of the mesh workbench to meshes and then export these meshes as .obj-files
  • If your mesh-export resulted in errors (flip of normals, holes ...) you may try your luck with netfabb studio basic
Free for personal use, available for Windows, Linux and Mac OSX.
It has standard repair tools which will repair you model in most cases.
  • another good program for mesh analysing/repairing is Meshlab
Open Source, available for Windows, Linux and Mac OSX.
It has standard repair tools which will repair you model in most cases (fill holes, re-orient normals, etc.)
  • you can use "make compound" and then "make single copy" or you can fuse solids to group them before converting to meshes
  • remember to set in Kerkythea an import-factor of 0.001 for obj-modeler, since Kerkythea expects the obj-file to be in m (but standard units-scheme in FreeCAD is mm)
Within WIndows 7 64-bit Kerkythea does not seem to be able to save these settings.
So remember to do that each time you start Kerkythea
  • if importing multiple objects in Kerkythea you can use the "File → Merge" command in Kerkythea


These pages refer to the new workbench, programmed in Python, meant to replace the current Raytracing Workbench.


These pages refer to a replacement workbench, programmed in C++, proposed around 2012, which was never completed.