Acest proiect implementează un raytracer simplu utilizând Emscripten pentru a transpune codul C++ în WebAssembly, permițând astfel rularea sa în browser. Raytracer-ul generează imagini realistice prin simularea traiectoriei razelor de lumină și calcularea interacțiunilor acestora cu obiectele din scenă. Utilizarea Emscripten facilitează accesul la performanța nativă în contextul web, permițând o experiență vizuală fluidă și detaliată direct în browser. Acest readme oferă instrucțiuni pentru configurare, compilare și rulare.
- Interoperabilitate intre codul C++ si JavaScript
- Abilitatea de a modifica conținutul scenei în timpul execuției
- Multithreading
- Redarea in mediul web cu Nginx si Docker
-
Descarcă Docker Desktop pentru Windows:
- Accesează pagina oficială de descărcare Docker și descarcă Docker Desktop pentru Windows.
-
Instalează Docker Desktop:
- Rulează instalatorul descărcat și urmează instrucțiunile de pe ecran.
- După instalare, asigură-te că
Docker Desktopeste pornit.
-
Configurare Docker:
- Deschide Docker Desktop și verifică dacă Docker Engine este activ.
-
Verifică instalarea:
- Deschide Command Prompt și rulează următoarea comandă:
docker --version
- Deschide Command Prompt și rulează următoarea comandă:
- In cazul in care versiunea python folosita este mai mica decat versiuna 3.14, pip va trebui instalat manual. Acest lucru poate fi facut cu urmatorele comenzi bash.
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python get-pip.py
- Clonați repository-ul proiectului raytracer:
git clone https://github.com/Cameliuu/WebRays
- Asigurați-vă că sunteți în folder-ul
WebRays.
cd WebRays- Rulați script-ul pentru instalarea dependințelor.
python dependencies.sh- Clonați repository-ul oficial Emscripten:
git clone https://github.com/emscripten-core/emsdk.git
- Navigați în directorul
emsdk:cd emsdk - Actualizați repository-ul:
git pull
- Instalați Emscripten și instrumentele necesare:
./emsdk install latest
- Activați Emscripten în sesiunea curentă:
./emsdk activate latest source ./emsdk_env.sh
- Activați
emsdkin directorulWebRays
emsdk activate latest- Compilați proiectul folosind comanda:
./compile.sh {NUME}Unde {NUME} este numele fisierului HTML ce va avea sa fie produs in urma compilarii.
http://localhost:8080/{NUME}.html