Raytracing Module/ro

Atelierul de Randare este folosit pentru a genera imagini fotorealiste ale modelelor dvs., făcându-le o randare exterioară. Atelierul de Randare funcționează împreună cu modulul templates, permițându-vă să creați un proiect Raytracing în care adăugați vederi ale obiectelor. Proiectul poate fi apoi exportat într-un fișier gata de redare sau poate fi redat direct. Raytracing este o variantă particulară a tehnicii de randare.



În mod obișnuit, sunt susținute două tipuri de randare: povray și luxrender. Pentru a putea reda direct din FreeCAD, cel puțin unul dintre acestea randări trebuie instalat pe sistemul dvs., iar calea trebuie să fie configurată în preferințele FreeCAD Raytracing. Fără instalarea oricăror elemente de randare, totuși, puteți să exportați un fișier scenă care poate fi folosit ulterior în oricare dintre aceste tipuri de randare sau pe altă mașină.

Atelierul de Randare funcționează împreună cu modulele templates, care reprezintă fișiere de scenă complete pentru randarea exteriorului dat, inclusiv luminile și eventual geometria suplimentară, cum ar fi planurile de la sol. Aceste fișiere de scenă conțin locașuri, în care FreeCAD va introduce poziția camerei, precum și informații despre geometrie și materiale ale fiecăruia dintre obiectele inserate în proiect. Acest fișier scena modificat este ceea ce este apoi exportat la randarele externe.

Project tools
These are the main tools for exporting your 3D work to external renderers.
 * [[Image:Raytracing_New.png|32px]] New PovRay project: Insert new PovRay project in the document
 * [[Image:Raytracing_Lux.png|32px]] New LuxRender project: Insert new LuxRender project in the document
 * [[Image:Raytracing_InsertPart.png|32px]] Insert part: Insert a view of a Part in a raytracing project
 * [[Image:Raytracing_ResetCamera.png|32px]] Reset camera: Matches the camera position of a raytracing project to the current view
 * [[Image:Raytracing_ExportProject.png|32px]] Export project: Exports a raytracing project to a scene file for rendering in an external renderer
 * [[Image:Raytracing_Render.png|32px]] Render: Renders a raytracing project with an external renderer

Utilities
These are helper tools to perform specific tasks manually.
 * [[Image:Raytracing_Export.png|32px]] Export view to povray: Write the active 3D view with camera and all its content to a povray file
 * [[Image:Raytracing_Camera.png|32px]] Export camera to povray: Export the camera position of the active 3D view in POV-Ray format to a file
 * [[Image:Raytracing_Part.png|32px]] Export part to povray: Write the selected Part (object) as a povray file

Flux de lucru tipic

 * 1) Creați sau deschideți un proiect FreeCAD, adăugați unele obiecte  Part-based (mesh-urile nu sunt acceptate în prezent)
 * 2) Creați un proiect Raytracing (cu luxrender sau povray)
 * 3) Selectați obiectele pe care doriți să le adăugați la proiectul raytracing și adăugați-le la proiect cu instrumentul "Inserați o piesă"
 * 4) Exportați sau afișați direct

Crearea manuală a unui fișier povray
Instrumentele utilitare descrise mai sus vă permit să exportați vizualizarea 3D curentă și întregul conținut al acestuia într-un fișier Povray. În primul rând, trebuie să încărcați sau să creați datele CAD și să poziționați orientarea 3D în orientarea dorită. Apoi alegeți "Utilities-> Export View ..." din meniul raytracing.



Vi se va solicita o locație pentru salvarea fișierului * .pov rezultat. După asta, poți să o deschizi Povray and render:



Ca de obicei, prin randare poți face poze mari și frumoase:



Ieșirea fișierelor de randare
Modulele Raytracing și RaytracingGui oferă mai multe metode pentru a scrie conținutul scenelor ca date povray sau luxrender. Cele mai utile sunt Raytracing.getPartAsPovray și Raytracing.getPartAsLux  pentru a reanda un obiect FreeCAD Part într-o definiție povray sau luxrender și RaytracingGui.povViewCamera  și RaytracinGui.luxViewCamera  pentru a obține punctul de vedere curent al FreeCAD în Fereastră 3D în format povray sau luxrender.

Iată cum se poate scrie un fișier povray din Python, presupunând că documentul conține un obiect "Box":

La fel și pentru luxrender:

Crearea unui obiect particularizat de randare
În afară de obiectele standard povray și luxrender care oferă o vizualizare a unui obiect Piesă existent și care pot fi inserate în proiecte povray și luxrender, există un al treilea obiect numit RaySegment, care poate fi inserat fie în proiecte povray, fie în proiecte luxrender. Acest obiect RaySegment nu este conectat la niciunul dintre obiectele FreeCAD și poate conține coduri personalizate sau coduri luxrender, pe care ați putea dori să le inserați în proiectul dvs. de raytracing. De asemenea, îl puteți utiliza, de exemplu, pentru a vă da obiectele FreeCAD într-un anumit mod, dacă nu sunteți mulțumit de modul standard. Puteți să o creați și să o utilizați astfel de pe consola python:

POVRay

 * http://www.spiritone.com/~english/cyclopedia/
 * http://www.povray.org/
 * http://en.wikipedia.org/wiki/POV-Ray

Luxrender

 * http://www.luxrender.net/

viitoare posiblile randări de implementat

 * http://www.yafaray.org/
 * http://www.mitsuba-renderer.org/
 * http://www.kerkythea.net/
 * http://www.artofillusion.org/

În prezent, există un nou Atelier Renderer în dezvoltare pentru a sprijini multiple back-end-uri precum Lux Renderer și Yafaray. Informațiile pentru utilizarea versiunii în dezvoltare pot fi vizualizate laRender_project

Pentru a afla stadiul de dezvoltare al Render Module căutați aici Raytracing_project

Templates
FreeCAD vine cu câteva șabloane implicite pentru povray și luxrender, dar puteți a vi le crea cu ușurință propriile dvs. șabloane. Tot ce trebuie să faceți este să creați un fișier de scenă pentru randarea dată, apoi să îl editați manual cu un editor de text pentru a insera tag-uri speciale pe care FreeCAD le va recunoaște și unde va introduce conținutul lor (date despre camere și obiecte)

Povray
Fișierele de scenă povray (cu extensia .pov) pot fi create manual cu un editor de text (povray este făcut în principal pentru a fi folosit ca limbaj de scripting), dar și cu o gamă largă de aplicații 3D, cum ar fi [http: // www. blender.org blender]. Pe site-ul povray puteți găsi informații suplimentare și o listă de aplicații capabile să producă fișiere .pov.

Când aveți un fișier .pov gata, trebuie să îl deschideți cu un editor de text și să efectuați două operații:
 * 1) Scoateți informațiile despre cameră, deoarece FreeCAD va plasa propriile date despre cameră. Pentru a face acest lucru, localizați un bloc de text ca acesta: camera{...}, care descrie parametrii camerei și șterge (sau pune "//" în fața fiecărei linii pentru a le comenta ).
 * 2) Introduceți următoarea linie undeva: //RaytracingContent. Aici FreeCAD va introduce conținutul său (date despre camere și obiecte). Puteți, de exemplu, să puneți această linie la sfârșitul fișierului.

Rețineți că FreeCAD va adăuga și unele declarații pe care le puteți utiliza în șablon după eticheta //RaytracingContent. Acestea sunt:
 * cam_location: locația camerei
 * cam_look_at: locația punctului țintă al camerei
 * cam_sky: vectorul sus al camerei.
 * cam_angle: unghiul camerei

Dacă doriți, de exemplu, să plasați o lampă deasupra camerei, puteți utiliza aceasta:

Luxrender
Fișierele de scenă Luxrender (cu extensia .lxs) pot fi fie fișiere unice, fie un fișier .lxs master care include fișiere definition (.lxw), definiție de material (.lxm) și definiție de geometrie (.lxo). Puteți lucra cu ambele stiluri, dar este, de asemenea, ușor să transformați un grup de 4 fișiere într-un singur fișier .lxs, copiind conținutul fiecărui fișier .lxw, .lxm și .lxo și inserându-l în punctul în care acel fișier este inserat în fișierul master .lxs.

Fișierele scenei Luxrender sunt greu de realizat manual, dar sunt ușor de realizat cu multe aplicații 3D, cum ar fi blender. Pe site-ul http://www.luxrender.net luxrender, veți găsi mai multe informații și plugin-uri pentru principalele aplicații 3D de acolo.

Dacă veți lucra cu fișiere separate .lxw, .lxm și .lxo, aveți grijă ca fișierele .lx finale exportate de FreeCAD să se afle într-o locație diferită de fișierul șablon și, prin urmare, aceste fișiere nu pot fi găsite de Luxrender la momentul randării. În acest caz, trebuie fie să copiați aceste fișiere în locația fișierului final, fie să le modificați în fișierul .lxs exportat.

Dacă exportați un fișier scenă din Blender și doriți să îmbinați totul într-un singur fișier, va trebui să efectuați un pas înainte de a exporta: În mod implicit, exportatorul luxrender în blender exporta geometria ochiurilor plaselor ca fișiere separate .ply, în loc de plasarea geometriei plaselor în interiorul fișierului .lxo. Pentru a schimba acest comportament, trebuie să selectați fiecare ochi de plasă în blender, să accesați fila "mesh" și să setați opțiunea "export as" în "luxrender mesh" pentru fiecare dintre ele.

După ce ați pregătit fișierul pentru scenă, pentru a-l transforma într-un șablon FreeCAD, trebuie să efectuați următorii pași:
 * 1) Localizați poziția camerei, o singură linie care începe cu LookAt și ștergeți-o (sau plasați un "#" la începutul liniei pentru a comenta aceasta)
 * 2) În locul respectiv, introduceți următoarea linie:  #RaytracingCamera 
 * 3) Într-un punct dorit, de exemplu, imediat după terminarea definiției materialelor, înainte de informațiile despre geometrie sau chiar la sfârșit, chiar înainte de linia finală WorldEnd, introduceți următoarea linie: #RaytracingContent. Acesta este locul în care FreeCAD își va introduce propriile obiecte.

Rețineți că în luxrender, obiectele stocate într-un fișier scenă pot defini matricea de transformare care efectuează operații de locație, rotire sau scalare. Aceste matrici pot stivui și afecta tot ceea ce vine după ele, așadar, plasându-vă eticheta  la sfârșitul fișierului, este posibil să vedeți obiectele FreeCAD afectate de o matrice de transformare plasată mai devreme în șablon. Pentru a vă asigura că acest lucru nu se întâmplă, plasați eticheta #RaytracingContent</tt> înainte de orice alt obiect de geometrie prezent în șablon. FreeCAD în sine nu va defini nici una dintre aceste matrice de transformare.

Export către Kerkythea
Deși exportul direct către fișierul Kerkythea XML-File-Format nu este încă acceptat, puteți să exportați Obiectele ca Fișiere Mesh (.obj) și apoi să le importați în Kerkythea.
 * dacă folosiți Kerkythea pentru Linux, nu uitați să instalați pachetul WINE (necesar pentru Kerkythea pentru Linux)
 * puteți să vă transformați modelele cu ajutorul Atelierul Plase în plase și apoi să le exportați ca fișiere .obj
 * Dacă plasa dvs. la exportare a dus la erori (modificări de normale, găuri ...), vă puteți încerca norocul cu studio netfabb studio
 * Gratuit pentru uz personal, disponibil pentru Windows, Linux și Mac OSX.
 * Dispune de instrumente de reparații standard care vă vor repara modelul în majoritatea cazurilor.


 * un alt program bun pentru analiza / repararea ochiului este Meshlab
 * Open Source, disponibil pentru Windows, Linux și Mac OSX.
 * Dispune de instrumente de reparații standard care vă vor repara modelul în majoritatea cazurilor (găuri de umplere, re-orientare de normale etc.)


 * puteți utiliza "make compound" și apoi "face o singură copie" sau puteți fuziona solide pentru a le grupa înainte de a converti în plase cu ochiuri
 * nu uitați să setați în Kerkythea un factor de import de 0.001 pentru obj-modeler, deoarece Kerkythea se așteaptă ca fișierul obj să fie în m (dar unitățile standard-scheme în FreeCAD sunt mm)
 * În cadrul ferestrelor Windows 7 Kerkythea pe 64 de biți nu pare să poată salva aceste setări.
 * Așa că nu uitați să faceți acest lucru de fiecare dată când porniți Kerkythea


 * dacă importați mai multe obiecte în Kerkythea, puteți folosi comanda "File>Merge" în Kerkythea

Sugestii de legături

 * Render project
 * Raytracing tutorial