Podstawy POV-Ray a. Diana Domańska. Uniwersytet Śląski

Podobne dokumenty
Zajęcia z grafiki komputerowej Pov Ray część 2

Graficzne modelowanie scen 3D. Wykład. Pov-Ray

Podstawy POV-Ray a. Diana Domańska. Uniwersytet Śląski

Podstawy POV-Ray a. Diana Domańska. Uniwersytet Śląski

rgbf<składowa_r,składowa_g,składowa_b,filter>. Dla parametru filter przyjmij kolejno wartości: 0.60, 0.70, 0.80, 0.90, 1.00, np.:

Techniki wizualizacji. Ćwiczenie 9. System POV-ray - wprowadzenie

Podstawy POV-Ray'a. Diana Doma«ska. Uniwersytet l ski. Diana Doma«ska (U ) Podstawy POV-Ray'a 1 / 13

Sphere tracing: integracja z klasycznymi metodami symulacji i renderingu

Graficzne modelowanie scen 3D. POV-Ray. Wykład 2

Grafika Komputerowa Wykład 5. Potok Renderowania Oświetlenie. mgr inż. Michał Chwesiuk 1/38

Przykład 1: Funkcja jest obiektem, przypisanie funkcji o nazwie function() do zmiennej o nazwie funkcja1

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

Ćwiczenie nr 2 - Modelowanie bryłowe

Pytania do spr / Własności figur (płaskich i przestrzennych) (waga: 0,5 lub 0,3)

PLANIMETRIA CZYLI GEOMETRIA PŁASZCZYZNY CZ. 3

Grafika trójwymiarowa. Grafika trójwymiarowa. Pojęcie kamery. Źródła światła - przykłady. Rzutowanie trójwymiarowych obiektów. Grafika trójwymiarowa

Parametryczne modele 3D w komputerowo wspomaganym projektowaniu i wytwarzaniu

Treści zadań Obozu Naukowego OMG

Animowana grafika 3D. Opracowanie: J. Kęsik.

Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 8. Karol Tarnowski A-1 p.

Wstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy. Wykład 8. Karol Tarnowski A-1 p.

Podstawy Programowania Obiektowego

Podstawy 3D Studio MAX

Podstawy programowania. Wykład PASCAL. Zmienne wskaźnikowe i dynamiczne. dr Artur Bartoszewski - Podstawy prograowania, sem.

Synteza i obróbka obrazu. Modelowanie obiektów 3D

Język programowania. Andrzej Bobyk

Mini tablice matematyczne. Figury geometryczne

GEOMETRIA ELEMENTARNA

Wykład 5: Klasy cz. 3

Blender. zarządzanie sceną i rozmieszczanie obiektów

Ćwiczenie nr 17 - Modelowanie bryłowe

PLANIMETRIA CZYLI GEOMETRIA PŁASZCZYZNY CZ. 1

Następnie zdefiniujemy utworzony szkic jako blok, wybieramy zatem jak poniżej

Algorytm SAT. Marek Zając Zabrania się rozpowszechniania całości lub fragmentów niniejszego tekstu bez podania nazwiska jego autora.

Wskaźniki i dynamiczna alokacja pamięci. Spotkanie 4. Wskaźniki. Dynamiczna alokacja pamięci. Przykłady

Programowanie strukturalne i obiektowe. Funkcje

Tablice. Jones Stygar na tropie zmiennych

PROE wykład 2 operacje na wskaźnikach. dr inż. Jacek Naruniec

Programowanie obiektowe, wykład nr 6. Klasy i obiekty

Interfejsy i klasy wewnętrzne

Grafika Komputerowa Materiały Laboratoryjne

1. Które składowe klasa posiada zawsze, niezależnie od tego czy je zdefiniujemy, czy nie?

Funkcje i instrukcje języka JavaScript

STEREOMETRIA CZYLI GEOMETRIA W 3 WYMIARACH

Modelowanie i wstęp do druku 3D Wykład 1. Robert Banasiak

Metoda elementu skończonego budowa modeli

1 Tworzenie brył obrotowych

Informatyka I. Dziedziczenie. Nadpisanie metod. Klasy abstrakcyjne. Wskaźnik this. Metody i pola statyczne. dr inż. Andrzej Czerepicki

FIGURY I PRZEKSZTAŁCENIA GEOMETRYCZNE

GRK 4. dr Wojciech Palubicki

PHP 5 język obiektowy

Projekt Innowacyjny program nauczania matematyki dla liceów ogólnokształcących

Grafika 3D. Opracowanie: J. Kęsik.

Jedności. Tysiące. Miliony

Wykład 9: Polimorfizm i klasy wirtualne

Kurs programowania. Wstęp - wykład 0. Wojciech Macyna. 22 lutego 2016

Lab 9 Podstawy Programowania

Autodesk 3D Studio MAX Teksturowanie modeli 3D

Programowanie obiektowe

Podział czworokątów wynika z wymagań jakie im stawiamy. Jeśli nie mamy żadnych wymagań to nasz czworokąt może wyglądać dowolnie, np.

Wykład 8: klasy cz. 4

Cel projektu: Wymogi dotyczące sprawozdania:

Zaawansowana Grafika Komputerowa

Komentarz do arkusza maturalnego z matematyki, poziom podstawowy maj 2014r.

WIELOKĄTY FOREMNE I ICH PRZEKĄTNE

1. Prymitywy graficzne

Metoda objętości zadania

Temat: Wielokąty foremne- pola i obwody wielokątów foremnych.

Matematyczne słowa Autorki innowacji: Jolanta Wójcik Magda Kusyk

1.1. Rachunek zdań: alternatywa, koniunkcja, implikacja i równoważność zdań oraz ich zaprzeczenia.

Języki i techniki programowania Ćwiczenia 4 Wzorce

Ćwiczenie nr 8 - Modyfikacje części, tworzenie brył złożonych

Contacts - obiekty stworzone przez Box2D do zarządzania kolizjami (zderzeniami) między dwoma fiksturami(różne fragmenty jednego ciała).

Zasoby. Musimy zaimportować zasoby dla gry z Asset Store

Grafika 3D program POV-Ray

Krzysztof Kadowski. PL-E3579, PL-EA0312,

Grafika komputerowa i wizualizacja. dr Wojciech Pałubicki

Przestrzenne bazy danych. Funkcje relacji przestrzennych

Grafika komputerowa Wykład 6 Krzywe, powierzchnie, bryły

Marcin Luckner Politechnika Warszawska Wydział Matematyki i Nauk Informacyjnych

Zaawansowane programowanie w języku C++ Klasy w C++

Podstawy programowania. Wykład: 12. Struktury, unie, pola bitowe. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

TECHNOLOGIE INTERNETOWE WYKŁAD 6. JavaScript Funkcje i obiekty

Zamawiający odpowiada:

BRYŁY PODSTAWOWE I OBIEKTY ELEMENTARNE

LI Olimpiada Matematyczna Rozwiązania zadań konkursowych zawodów stopnia trzeciego 3 kwietnia 2000 r. (pierwszy dzień zawodów)

2. Przeskalowujemy wstawiony sześcian wzdłuż osi X i Z o współczynnik 30 i przesuwamy wzdłuż osi Y o wartość 0,5.

Dziedziczenie jednobazowe, poliformizm, tablice wskaźników na obiekty

1. ODPOWIEDZI DO ZADAŃ TESTOWYCH

Programowanie współbieżne Wykład 8 Podstawy programowania obiektowego. Iwona Kochaoska

2 Figury geometryczne

GEOMETRIA PRZESTRZENNA (STEREOMETRIA)

Wojewódzki Konkurs Matematyczny dla uczniów gimnazjów. rok szkolny 2016/2017. Etap III etap wojewódzki- klucz odpowiedzi

Ćwiczenie nr 3 Edycja modeli bryłowych

Co to jest wektor? Jest to obiekt posiadający: moduł (długość), kierunek wraz ze zwrotem.

Czym jest wykrywanie kolizji. Elementarne metody detekcji kolizji. Trochę praktyki: Jak przygotować Visual Studio 2010 do pracy z XNA pod Windows

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

Poniżej przedstawiono przykład ich zastosowania dla najprostszego obiektu 3D kostki.

Unity. Platforma do tworzenia gier dla różnych systemów docelowych, m.in.: Windows, macos, ios, Android, Powstała w 2005 r., obecnie wersja 5.3.

Transkrypt:

Podstawy POV-Ray a Diana Domańska Uniwersytet Śląski

CSG (Constructive Solid Geometry) Większość kształtów takich jak sfera, prostopadłościan itp. dzielą świat na dwa regiony: region leżący wewnątrz i region leżący na zewnątrz obiektu.

CSG (Constructive Solid Geometry) Większość kształtów takich jak sfera, prostopadłościan itp. dzielą świat na dwa regiony: region leżący wewnątrz i region leżący na zewnątrz obiektu. Kształty takie jak trójkąt, wielokąt nie posiadają regionu wewnętrznego i zewnętrznego. W przypadku powierzchni wektor normalny wskazuje region zewnętrzny.

CSG (Constructive Solid Geometry) Większość kształtów takich jak sfera, prostopadłościan itp. dzielą świat na dwa regiony: region leżący wewnątrz i region leżący na zewnątrz obiektu. Kształty takie jak trójkąt, wielokąt nie posiadają regionu wewnętrznego i zewnętrznego. W przypadku powierzchni wektor normalny wskazuje region zewnętrzny. Dla danego obiektu możemy odwrócić znaczenie wnętrze/zewnętrze poprzez dodanie w jego definicji słowa kluczowego inverse.

CSG (Constructive Solid Geometry) Większość kształtów takich jak sfera, prostopadłościan itp. dzielą świat na dwa regiony: region leżący wewnątrz i region leżący na zewnątrz obiektu. Kształty takie jak trójkąt, wielokąt nie posiadają regionu wewnętrznego i zewnętrznego. W przypadku powierzchni wektor normalny wskazuje region zewnętrzny. Dla danego obiektu możemy odwrócić znaczenie wnętrze/zewnętrze poprzez dodanie w jego definicji słowa kluczowego inverse. W technice CSG można korzystać jedynie z obiektów, które posiadają region wewnętrzny i zewnętrzny.

Suma 1 union { 2 obiekty 3 [(opt.)] 4 } Obiekty są łączone, a powierzchnie wewnątrz nie są usuwane.

Suma 1 union { 2 obiekty 3 [(opt.)] 4 } Obiekty są łączone, a powierzchnie wewnątrz nie są usuwane. Scalanie 1 merge { 2 obiekty 3 [(opt.)] 4 } Działa tak samo jak union z tą różnicą, że powierzchnie wewnątrz są usuwane. Przydatne przy obiektach przeźroczystych. Działa wolniej od union.

Przecięcie 1 intersection { 2 obiekty 3 [(opt.)] 4 }

Przecięcie 1 intersection { 2 obiekty 3 [(opt.)] 4 } Różnica 1 difference { 2 obiekty 3 [(opt.)] 4 }

1 union { 2 box { 3 <-1.5, -1, -1>, 4 <0.5, 1, 1> 5 pigment{color <1, 0, 0>} 6 translate <1, 0, 0> 7 } 8 9 cylinder { 10 <0.5, 0, -0.5>, 11 <0.5, 0, 0.5>, 12 1.3 13 pigment{color <106/255, 250/255, 65/255>} 14 translate <-1, 0, 0> 15 } 16 }

1 intersection { 2 box { 3 <-1.5, -1, -1>, 4 <0.5, 1, 1> 5 pigment{color <1, 0, 0>} 6 translate <1, 0, 0> 7 } 8 9 cylinder { 10 <0.5, 0, -0.5>, 11 <0.5, 0, 0.5>, 12 1.3 13 pigment{color <106/255, 250/255, 65/255>} 14 translate <-1, 0, 0> 15 } 16 }

1 difference { 2 box { 3 <-1.5, -1, -1>, 4 <0.5, 1, 1> 5 pigment{color <1, 0, 0>} 6 translate <1, 0, 0> 7 } 8 9 cylinder { 10 <0.5, 0, -0.5>, 11 <0.5, 0, 0.5>, 12 1.3 13 pigment{color <106/255, 250/255, 65/255>} 14 translate <-1, 0, 0> 15 } 16 }

1 difference { 2 cylinder { 3 <0.5, 0, -0.5>, 4 <0.5, 0, 0.5>, 5 1.3 6 pigment{color <106/255, 250/255, 65/255>} 7 translate <-1, 0, 0> 8 } 9 10 box { 11 <-1.5, -1, -1>, 12 <0.5, 1, 1> 13 pigment{color <1, 0, 0>} 14 translate <1, 0, 0> 15 } 16 }

Własne obiekty Deklarowanie własnego obiektu: 1 #declare nazwa = definicja_obiektu; nazwa jest to nazwa do jakiej będziemy się odwoływać w dalszej części naszego skryptu, definicja_obiektu jest to właściwa definicja obiektu składająca się np. z prymitywów, obiektów powstałych przez zastosowanie CSG. Przykład: 1 #declare bryla = union { 2 box {<-1.5, -1, -1>, <0.5, 1, 1>} 3 cylinder {<0.5, 0, -1>, <0.5, 0, 1>, 1} 4 };

Po zadeklarowaniu własnego obiektu możemy z niego skorzystać w swoim skrypcie wielokrotnie. Aby skorzystać z własnego obiektu: 1 object {nazwa}

Po zadeklarowaniu własnego obiektu możemy z niego skorzystać w swoim skrypcie wielokrotnie. Aby skorzystać z własnego obiektu: 1 object {nazwa} Własne obiekty możemy również poddawać podstawowym przekształceniom czy też używać jako obiekty do CSG (o ile posiadają wnętrze/zewnętrze). Przykład: 1 object {bryla translate <-0.5, 0, 0>}

Projekt z pierwszych zajęć proszę urozmaicić o techniki CSG oraz stworzyć przynajmniej jeden własny obiekt.