Triki najlepszych programistów gier 3D. Vademecum profesjonalisty

Wielkość: px
Rozpocząć pokaz od strony:

Download "Triki najlepszych programistów gier 3D. Vademecum profesjonalisty"

Transkrypt

1 PRZYK ADOWY ROZDZIA Wydawnictwo Helion ul. Chopina Gliwice tel. (32) IDZ DO KATALOG KSI EK ZAMÓW DRUKOWANY KATALOG TWÓJ KOSZYK CENNIK I INFORMACJE ZAMÓW INFORMACJE O NOWO CIACH ZAMÓW CENNIK CZYTELNIA SPIS TRE CI KATALOG ONLINE DODAJ DO KOSZYKA FRAGMENTY KSI EK ONLINE Triki najlepszych programistów gier 3D. Vademecum profesjonalisty Autor: Andre LaMothe T³umaczenie: Adam Bochenek (wstêp, rozdz. 1 3), Jaros³aw Dobrzañski (rozdz. 6 9), S³awomir Dzieniszewski (rozdz , dod. A F) ISBN: X Tytu³ orygina³u: Tricks of the 3D Game Programming Gurus Format: B5, stron: 1312 Swoje triki zdradz¹ Ci prawdziwi guru ze wiata twórców gier Tworzenie gier 3D wymaga opanowania nie tylko jêzyka programowania, ale tak e wielu innych dziedzin wiedzy -- analizy matematycznej, rachunku macierzowego i wektorowego oraz geometrii. Oczywi cie ka da z tych nauk zosta³a ju opisana w dziesi¹tkach tomów. Ksi¹ ka, któr¹ trzymasz w rêce, zawiera wszystkie informacje niezbêdne do stworzenia gry 3D dzia³aj¹cej w rodowisku Windows, zebrane w jednym tomie. Korzystaj¹c z niej, nie bêdziesz ju musia³ przerzucaæ tysiêcy stron w poszukiwaniu potrzebnego Ci wzoru. Autor ksi¹ ki, wykorzystuj¹c ponad dwudziestopiêcioletnie do wiadczenie w programowaniu, przedstawi Ci: algorytmy matematyczne wykorzystywane w grafice 3D, zasady programowania w Windows i DirectX, algorytmy wy wietlania grafiki 2D i 3D, techniki animacji i renderingu 3D, mapowanie tekstur, techniki symulacji o wietlenia i wiele innych informacji. Korzystaj¹c z tej ksi¹ ki, opracujesz doskona³y, oparty wy³¹cznie na warstwie oprogramowania silnik 3D dla gry, wykorzystasz w swoich grach modele i postaci stworzone w programach 3D, stworzysz realistyczn¹ sceneriê gry 3D i zoptymalizujesz kod ród³owy programu pod k¹tem szybko ci jego wykonywania. O autorze: Andre LaMothe to autor uznanych przez rynek ksi¹ ek o programowaniu gier i grafiki trójwymiarowej. Ci¹g jego sukcesów wydawniczych zapocz¹tkowa³o pierwsze wydanie tej ksi¹ ki (ustanowi³o ono swego czasu standardy programowania gier dla systemu DOS). Andre LaMothe programuje od ponad 25 lat i oprócz niew¹tpliwej praktyki posiada stosowne wykszta³cenie z zakresu matematyki, informatyki i elektrotechniki. Znany jest równie jako za³o yciel firm Xtreme Games LCC, Nurve Networks i XGDC.

2 Wprowadzenie...n...n...27 Elementy gier 2D/3D...n...n Ogólne wskazówki dotyczące programowania gier...n...33 Narzędzia...n...n...36 Edytor poziomów 3D...n...n.39 Przygotowanie kompilatora...n...40 Przykładowa gra 3D: Raiders 3D...n...43 Pętla obsługi zdarzeń...n...n.62 Logika gry 3D...n...n Rzutowanie 3D...n...n...64 Gwiezdne tło...n...n Działo laserowe i wykrywanie kolizji...n...66 Eksplozja...n...n Zasady gry...n...n Podsumowanie...n...n...67 Model programowania Win32...n...69 Programowanie w Windows absolutne minimum...n...70 Wszystko zaczyna się od WinMain()...n...70 Wzorcowa aplikacja Windows...n...75 Klasa okna...n...n Rejestracja klasy okna...n...80 Tworzenie okna...n...n...80 Obsługa zdarzeń...n...n...82 Pętla obsługi komunikatów...n...87 Pętla obsługi komunikatów pracująca w czasie rzeczywistym...90 DirectX i COM w pigułce...n...n91 HEL i HAL...n...n Komponenty DirectX...n...n94 Wprowadzenie do COM...n...n..95 Co to jest obiekt COM?...n...96 Tworzenie i używanie interfejsów COM biblioteki DirectX...98 Dostęp do interfejsów...n...n98 Podsumowanie...n...n

3 6 Triki najlepszych programistów gier 3D. Vademecum profesjonalisty Założenia interfejsu abstrakcyjnego komputera...n Budujemy abstrakcyjny komputer...n System video, bufor ramki...n Praca z kolorami...n...n Kopiowanie bufora...n...n..108 Kompletny system graficzny abstrakcyjnego komputera Dźwięk, muzyka, urządzenia wejścia...n Konsola do gier T3DLIB...n Podstawowa konsola do gier...n Biblioteka T3DLIB...n...n Architektura modułu graficznego...n Podstawowe definicje...n Makra...n...n Typy danych, struktury...n Funkcje...n...n Globalna dominacja...n...n.125 Interfejs DirectDraw...n...n126 Funkcje operujące na figurach 2D...n Funkcje matematyczne i obsługa błędów...n Mapy bitowe...n...n Obsługa palety w trybie 8-bitowym...n Funkcje pomocnicze...n...n145 Obiekty BOB...n...n T3DLIB2 moduł obsługi urządzeń wejścia...n T3DLIB3 biblioteka obsługi dźwięku i muzyki...n Definicje...n...n Typy...n...n Zmienne globalne...n...n DirectSound API...n...n DirectMusic API...n...n Ostateczna postać konsoli T3D...n Przypisanie funkcji graficznych abstrakcyjnemu modelowi Konsola T3DLIB...n...n Przykładowe aplikacje...n...n Aplikacje okienkowe...n Aplikacje pełnoekranowe...n Dźwięk i muzyka...n...n Klawiatura, myszka, joystick...n Podsumowanie...n...n Notacje matematyczne...n...n Dwuwymiarowe układy współrzędnych...n Dwuwymiarowy układ współrzędnych kartezjańskich Dwuwymiarowy układ współrzędnych biegunowych...n190 Trójwymiarowe układy współrzędnych...n Trójwymiarowe współrzędne kartezjańskie...n Trójwymiarowe współrzędne cylindryczne...n Konwersja trójwymiarowych współrzędnych kartezjańskich do współrzędnych cylindrycznych...n...196

4 Spis treści 7 Trójwymiarowe współrzędne sferyczne...n Podstawy trygonometrii...n...n.19 8 Trójkąt prostokątny...n...n..199 Odwrotne funkcje trygonometryczne...n Zależności trygonometryczne...n Wektory...n...n Długość wektora...n...n Normalizacja...n...n Mnożenie wektora przez wartości skalarne...n Dodawanie wektorów...n Odejmowanie wektorów...n Iloczyn skalarny wektorów...n Iloczyn wektorowy...n...n..209 Wektor zerowy...n...n Wektory położenia i wektory przemieszczenia...n Wektory jako kombinacje liniowe składowych...n Macierze i algebra liniowa...n Macierz jednostkowa...n Dodawanie macierzy...n Transpozycja macierzy...n Mnożenie macierzy...n...n..215 Reguły mnożenia macierzy...n Wyznaczanie macierzy odwrotnej i rozwiązywanie układów równań Reguła Cramera...n...n Przekształcenia geometryczne z wykorzystaniem macierzy Współrzędne jednorodne...n Przekształcenia macierzowe...n Podstawowe obiekty geometryczne...n Punkty...n...n Proste...n...n Proste w przestrzeni trójwymiarowej...n Płaszczyzny...n...n Równania parametryczne...n Proste parametryczne na płaszczyźnie i w przestrzeni trójwymiarowej Parametryczne definicje odcinków, wykorzystujące zwykły wektor kierunkowy v Parametryczne definicje odcinków, wykorzystujące jednostkowy wektor kierunkowy v = Parametryczne proste w przestrzeni trójwymiarowej...n.241 Kwaterniony wprowadzenie...n Teoria liczb zespolonych...n Rozszerzenie liczb zespolonych...n Zastosowania kwaternionów...n Wstęp do analizy matematycznej...n Pojęcie nieskończoności...n Granice...n...n Sumy i szeregi liczbowe skończone...n Szeregi liczbowe nieskończone...n Pochodne...n...n Całki...n...n Podsumowanie...n...n Moduł matematyczny przegląd...n Struktura plików modułu matematycznego...n Konwencja nazewnicza...n...282

5 8 Triki najlepszych programistów gier 3D. Vademecum profesjonalisty Obsługa błędów...n...n Słowo na temat języka C++...n Struktury i typy danych...n...n Wektory i punkty...n...n Równania parametryczne prostych...n Płaszczyzny w przestrzeni trójwymiarowej...n Macierze...n...n Kwaterniony...n...n Obsługa współrzędnych niekartezjańskich...n Dwuwymiarowy układ współrzędnych biegunowych...n292 Trójwymiarowy układ współrzędnych cylindrycznych Trójwymiarowy układ współrzędnych sferycznych...n Liczby stałoprzecinkowe...n Stałe matematyczne...n...n Makrodefinicje i funkcje rozwijane w miejscu wywołania Funkcje użytkowe i funkcje konwersji...n Funkcje manipulujące punktami i wektorami...n Macierze...n...n Kwaterniony...n...n Obliczenia stałoprzecinkowe...n Prototypy...n...n Zmienne globalne...n...n Interfejs programowy modułu matematycznego...n Funkcje trygonometryczne...n Funkcje obsługi różnych układów współrzędnych...n Funkcje obsługi wektorów...n Funkcje operujące na macierzach...n Funkcje operujące parametryczną reprezentacją prostych na płaszczyźnie i w przestrzeni trójwymiarowej...n Funkcje obsługi płaszczyzn trójwymiarowych...n Funkcje obsługi kwaternionów...n Funkcje obliczeń stałoprzecinkowych...n Funkcje rozwiązujące równania macierzowe...n Elementarz arytmetyki zmiennoprzecinkowej z wykorzystaniem koprocesora Architektura jednostki zmiennoprzecinkowej...n Stos jednostki zmiennoprzecinkowej...n Zestaw instrukcji jednostki FPU...n Klasyczny tryb adresowania operandów...n Tryb adresowania operandów z odwołaniem do pamięci Tryb adresowania operandów z odwołaniem do rejestru Adresowanie operandów ze zdjęciem operandu ze stosu Przykłady zastosowania instrukcji jednostki FPU...n Instrukcje FLD...n...n Instrukcje FST...n...n Instrukcje FADD...n...n Instrukcje FSUB...n...n Instrukcje FMUL...n...n Instrukcje FDIV...n...n Stosowanie modułu matematycznego uwagi...n Nowy szablon aplikacji...n Słowo o optymalizacji modułu...n Podsumowanie...n...n

6 Spis treści 9 Filozofia silnika 3D...n...n Struktura silnika gry 3D...n...n. 378 Silnik 3D...n...n Silnik gry...n...n System sterowania grą i gry sieciowej...n System animacji...n...n Wykrywanie kolizji i system nawigacji...n Moduł fizyki...n...n System sztucznej inteligencji...n Baza modeli 3D i grafiki...n Układy współrzędnych trójwymiarowych...n Współrzędne modelu (lokalne)...n Współrzędne świata gry...n Współrzędne kamery...n Ostateczna reprezentacja świata 3D za pomocą współrzędnych kamery Usuwanie ukrytych obiektów (powierzchni) i przycinanie Współrzędne perspektywy...n Zakończenie potoku współrzędne ekranowe...n Podstawowe struktury danych 3D...n Reprezentacje danych opisujących wielokąty w grafice 3D Definiowanie wielokątów...n Definiowanie obiektów...n Reprezentowanie światów...n Narzędzia 3D...n...n Animacja i dane o ruchu...n Ładowanie danych ze źródeł zewnętrznych...n Pliki PLG...n...n Pliki NFF...n...n Pliki 3D Studio...n...n Pliki COB firmy Caligari...n Pliki.X Microsoft DirectX...n Formaty plików 3D podsumowanie...n Proste przekształcenia i animacja...n Przesunięcie w przestrzeni...n Obrót w przestrzeni...n...n.463 Zmiana kształtu...n...n Podsumowanie potoku 3D...n Typy silników 3D...n...n Silniki przestrzeni kosmicznej...n Silniki terenu...n...n Silniki pomieszczeń zamkniętych...n Ray casting i silniki wokselowe...n Silniki hybrydowe...n...n Integracja całości w ostateczną postać silnika...n Podsumowanie...n...n Ogólna architektura silnika szkieletowego...n Struktury danych i potok 3D...n Główna lista wielokątów...n Nowe moduły programowe...n Piszemy program ładujący pliki 3D...n Program ładujący pliki PLG (PLX)...n...485

7 10 Triki najlepszych programistów gier 3D. Vademecum profesjonalisty Budowanie potoku 3D...n...n Ogólne funkcje przekształcające...n Przekształcenie współrzędnych lokalnych na współrzędne świata 3D Eulerowski model kamery...n Model kamery UVN...n...n503 Przekształcenie współrzędnych świata na współrzędne kamery Usuwanie obiektów...n...n.519 Usuwanie ścian zwróconych tyłem...n Przekształcenie współrzędnych kamery na współrzędne perspektywy Przekształcenie współrzędnych perspektywy na współrzędne ekranowe Połączone przekształcenie do współrzędnych perspektywy i współrzędnych ekranowych...n Renderowanie świata 3D...n Rzut oka na potok 3D...n Programy demonstracyjne 3D...n Pojedynczy trójkąt 3D DEMOII7_1.CPP EXE...n Szkielet sześcianu 3D DEMOII7_2.CPP EXE...n Szkielet sześcianu 3D z usuwaniem ścian zwróconych tyłem DEMOII7_3.CPP EXE...n Czołg 3D DEMOII7_4.CPP EXE...n Czołgi 3D i latająca kamera DEMOII7_5.CPP EXE Wycieczka po świecie gry à la Battle Zone DEMOII7_6.CPP EXE Podsumowanie...n...n Proste modele oświetlenia w grafice komputerowej...n Modele kolorów i materiały...n Typy świateł...n...n Oświetlanie i rasteryzacja trójkątów...n Przygotowania do implementacji oświetlenia...n Definiowanie materiałów...n Definiowanie świateł...n Cieniowanie w praktyce...n...n.59 6 Cieniowanie w trybie 16-bitowym...n Cieniowanie w trybie 8-bitowym...n Sprawny model RGB w trybach 8-bitowych...n Model z uproszczonym natężeniem dla trybów 8-bitowych Cieniowanie jednorodne...n Cieniowanie płaskie...n...n.607 Cieniowanie płaskie w trybie 8-bitowym...n Wstęp do cieniowania Gourauda...n Wstęp do cieniowania Phonga...n Sortowanie względem głębokości i algorytm malarza...n Praca z nowymi formatami plików...n Klasa parsera...n...n Interpretacja funkcji pomocniczych...n Format ASCII programu 3D Studio Max (.ASC)...n Format ASCII programu truespace (.COB)...n Przegląd formatu binarnego.md2 z gry Quake II...n Przegląd narzędzi do modelowania 3D...n Podsumowanie...n...n

8 Spis treści 11 Nowe funkcje silnika T3D...n Ulepszanie struktur danych i budowy silnika T3D...n Nowe definicje...n...n Nowe struktury matematyczne...n Makra pomocnicze...n...n..661 Dodatkowe elementy umożliwiające reprezentację danych siatki 3D Aktualizacja struktur obiektów i listy renderowania...n..668 Przegląd funkcji i prototypów...n Nowe wersje procedur ładujących obiekty...n Aktualizacja starego dobrego czytnika.plg (.PLX)...n.680 Aktualizacja czytnika formatu.asc z 3D Studio Max Aktualizacja czytnika.cob firmy Caligari...n Powtórka z rasteryzacji wielokątów...n Rasteryzacja trójkąta...n...n697 Konwencja wypełniania...n Przycinanie...n...n Nowe funkcje kreślące trójkąty...n Zabiegi optymalizacyjne...n Implementacja cieniowania Gourauda...n Cieniowanie Gourauda bez oświetlenia...n Uzupełnianie procedury cieniowania Gourauda o oświetlanie wierzchołków Podstawy teorii próbkowania...n Próbkowanie w jednym wymiarze...n Interpolacja dwuliniowa...n Interpolacja u i v...n...n Implementacja afinicznego mapowania tekstur...n Uwzględnienie tekstur w module oświetlenia i rasteryzacji Dodawanie oświetlenia do funkcji renderującej tekstury w trybie 16-bitowym Podsumowanie strategii optymalizacyjnych dla trybów 8- i 16-bitowych Tabele wyszukiwania...n Spójność wierzchołków siatki...n Buforowanie...n...n Instrukcje SIMD...n...n Programy demonstracyjne...n Raiders 3D II...n...n Podsumowanie...n...n Przycinanie scen 3D wprowadzenie...n Przycinanie w przestrzeni obiektu...n Przycinanie w obszarze obrazu sceny...n Omówienie algorytmów przycinania...n Przycinanie podstawy...n Algorytm Cohena-Sutherlanda...n Algorytm Cyrusa-Becka (Lianga-Barskiego)...n Algorytm Weilera-Athertona...n Przycinanie dodatkowe źródła informacji...n Przycinanie do ostrosłupa widzenia przykład implementacji Potok przekształceń geometrycznych i nowe struktury danych Dodawanie przycinania do silnika graficznego...n Zabawa w terenie...n...n Funkcja generowania terenu...n Generowanie mapy wysokości...n Rajd łazikiem terenowym...n Podsumowanie...n...n

9 12 Triki najlepszych programistów gier 3D. Vademecum profesjonalisty Bufory odległości i identyfikowanie widocznych powierzchni wprowadzenie Bufor Z...n...n Trudności implementacji bufora Z...n Przykład buforowania odległości...n Obliczanie wartości Z piksela z równania płaszczyzny Interpolacja współrzędnej Z...n Problemy buforowania Z i buforowanie odwrotności Z Przykładowa interpolacja Z i odwrotności Z...n Tworzenie systemu z buforem głębokości...n Dodawanie obsługi bufora Z do funkcji rasteryzacji...n..833 Optymalizacje bufora odległości...n Oszczędzanie pamięci...n Rzadsze czyszczenie bufora...n Buforowanie mieszane...n Bufory odległości problemy...n Programy demonstrujące działanie buforów Z...n Program 1.: Obrazowanie zawartości bufora Z...n Program 2.: Wodny rajd...n Podsumowanie...n...n Teksturowanie podejście drugie...n Nowe struktury w pliku nagłówkowym...n Podstawa funkcji rasteryzacji...n Przyjęcie formatu stałoprzecinkowego...n Nowe funkcje rasteryzacji bez buforowania Z...n Nowe funkcje rasteryzacji z buforowaniem Z...n Teksturowanie z cieniowaniem Gourauda...n Przezroczystość i łączenie alfa...n Łączenie alfa z wykorzystaniem tablic przeglądowych Niezależne definiowanie łączenia alfa dla poszczególnych obiektów Łączenie alfa w module generowania terenu...n Teksturowanie z korektą perspektywiczną i buforowanie odwrotności Z Matematyczne podstawy teksturowania z korektą perspektywiczną Dodawanie do rasteryzatorów buforowania odwrotności Z Implementacja teksturowania poprawnego perspektywicznie Implementacja teksturowania częściowo poprawnego perspektywicznie Aproksymacja kwadratowa w teksturowaniu perspektywicznym Optymalizacja teksturowania teksturowanie hybrydowe Dwuliniowe filtrowanie tekstur...n Filtrowanie trzyliniowe tekstur i mipmapowanie...n Wprowadzenie do analizy Fouriera i efektu aliasingu Tworzenie szeregu tekstur mipmapowania...n Wybór poziomu teksturowania mip...n Filtrowanie trzyliniowe...n Wyświetlanie i teksturowanie wieloprzebiegowe...n Zaawansowane teksturowanie w jednym wywołaniu...n Nowy kontekst renderowania...n Wypełnianie struktury kontekstu renderowania...n Funkcja zbiorcza rasteryzacji...n Podsumowanie...n...n

10 Spis treści 13 Nowy moduł silnika graficznego...n Podział przestrzenny i określanie widoczności powierzchni wprowadzenie Binarny podział przestrzeni (BSP)...n Binarny podział przestrzenny płaszczyznami równoległymni do osi układu współrzędnych...n Binarny podział przestrzenny płaszczyznami arbitralnymi Binarny podział przestrzenny płaszczyznami wyznaczanynmi przez płaszczyzny wielokątów...n Wyświetlanie (odwiedzanie) węzłów drzewa BSP...n Struktury danych i funkcje obsługujące drzewa BSP...n.995 Tworzenie drzewa BSP...n Strategie podziału...n...n Przeglądanie i wyświetlanie węzłów drzewa BSP...n Wpasowanie drzew BSP do potoku renderowania...n Edytor poziomu wykorzystujący drzewa BSP...n Ograniczenia drzew BSP...n Minimalizacja nadmiarowości odrysowywania z wykorzystaniem drzew BSP Wykorzystanie drzew BSP do redukowania sceny...n Wykorzystanie drzew BSP do wykrywania kolizji...n Integracja drzew BSP ze standardowymi funkcjami rasteryzacji Zbiory powierzchni potencjalnie widocznych...n Zastosowania zbiorów PVS...n Możliwe sposoby kodowania zbiorów potencjalnej widoczności Wyznaczanie zbiorów PVS...n Portale...n...n Hierarchie brył otaczających i drzewa oktalne...n Sposób użycia drzewa hierarchii BHV...n Wydajność w czasie rzeczywistym...n Strategie budowy hierarchii BHV...n Implementacja hierarchii BHV...n Drzewa oktalne...n...n Eliminowanie powierzchni zasłoniętych...n Bryły zasłaniające...n...n Wybór obiektów zasłaniających...n Hybrydowa metoda wyboru obiektów zasłaniających Podsumowanie...n...n Nowy moduł silnika gry...n Wprowadzenie i plan gry...n Uproszczone zasady fizyki cieni...n Droga fotonów i wyliczanie intensywności światła...n.1085 Symulowanie cieni za pomocą rzutowanych obrazów i billboardów Implementowanie rasteryzatorów z obsługą przezroczystości Nowa biblioteka...n...n Proste cienie...n...n Skalowanie cieni...n...n Śledzenie położenia źródła światła...n Końcowe uwagi na temat tworzenia symulowanych cieni Tworzenie cieni poprzez rzutowanie na płaszczyznę siatki obiektu Wzory przekształceń wektorowych dla potrzeb rzutowania Optymalizowanie cieni rzutowanych na płaszczyznę

11 14 Triki najlepszych programistów gier 3D. Vademecum profesjonalisty Wprowadzenie do mapowania oświetlenia i przechowywannia powierzchni w pamięci podręcznej...n Przechowywanie powierzchni w pamięci podręcznej Generowanie map oświetlenia...n Implementowanie mapera oświetlenia...n Mapowanie ciemności...n Efekty specjalne z użyciem map oświetlenia...n Optymalizowanie kodu mapowania oświetlenia...n Łącząc wszystko w jedną całość...n Podsumowanie...n...n Nowy moduł silnika gry...n Wprowadzenie do animacji trójwymiarowej...n Format.MD2 stosowany w grze Quake II...n Nagłówek pliku.md2...n Ładowanie plików.md2 gry Quake II...n Animowanie plików.md2...n Proste zasady animacji bez modeli bohaterów...n Rotacja w ruchu i ruch w wyniku translacji...n Złożone ruchy parametryczne i ruch po krzywej...n Wykorzystywanie skryptów do programowania ruchu Wykrywanie kolizji w przestrzeni trójwymiarowej...n Ograniczające sfery i walce...n Wykorzystywanie struktur danych do przyśpieszania wykrywania kolizji Poruszanie się po powierzchni terenu...n Podsumowanie...n...n Wprowadzenie do technik optymalizacyjnych...n Profilowanie kodu za pomocą kompilatora Microsoft Visualn C++ i programu VTune Intela...n Profilowanie przy pomocy kompilatora Visual C++...n1171 Analizowanie danych profilowania...n Optymalizowanie kodu za pomocą programu VTune Korzystanie z kompilatora C++ firmy Intel...n Ściąganie kompilatora optymalizacyjnego Intela...n Korzystanie z kompilatora...n Korzystanie z opcji optymalizacyjnych kompilatora Ręczne wybieranie różnych kompilatorów dla różnych plików źródłowych Strategie optymalizacyjne...n Przykład programowania instrukcji SIMD w mechanizmie SSE Podstawy architektury SIMD...n Jak naprawdę wygląda korzystanie z instrukcji SIMD Klasa wektorów trójwymiarowych przystosowana do instrukcji SIMD Kilka podstawowych trików optymalizacyjnych...n Trik 1. Pozbywanie się funkcji _ftol()...n Trik 2. Ustawianie słowa kontrolującego FPU...n Trik 3. Szybkie zerowanie liczb zmiennoprzecinkowych Trik 4. Szybkie wyciąganie pierwiastków kwadratowych Trik 5. Uproszczone wyliczanie arcustangens...n

12 Spis treści 15 Trik 6: Zwiększanie wartości wskaźnika...n Trik 7. Wyjmowanie instrukcji if z pętli...n Trik 8. Rozgałęzianie potoków instrukcji...n Trik 9. Wyrównywanie danych...n Trik 10. Wywoływanie wszystkich krótkich funkcji w miejscu Literatura...n...n Podsumowanie...n...n Instalowanie DirectX...n...n Korzystanie z kompilatora Visual C/C++...n Kilka praktycznych porad związanych z kompilacją...n Trygonometria...n...n Wektory...n...n Długość wektora...n...n Normalizacja...n...n Mnożenie wektora przez skalar...n Dodawanie wektorów...n Odejmowanie wektorów...n Iloczyn skalarny wektorów...n Iloczyn wektorowy wektorów...n Wektor zerowy...n...n Wektory pozycji...n...n Wektory jako liniowe kombinacje wektorów jednostkowych Czym język C++ różni się od C...n Minimum tego co trzeba wiedzieć o C++...n Nowe typy, słowa kluczowe i konwencje...n Komentarze...n...n Stałe...n...n Zmienne referencyjne...n Tworzenie zmiennych w dowolnym miejscu kodu...n Zarządzanie pamięcią...n...n Strumienie wejścia i wyjścia...n Klasy...n...n Całkiem nowy typ struktur...n Przykład prostej klasy...n Publiczne a prywatne...n Funkcje składowe klasy (metody)...n Konstruktory i destruktory...n Pisanie konstruktora...n Pisanie destruktora...n...n.1244 Operator ustalania zakresu...n Pisanie funkcji składowych klasy poza zakresem klasy Przeciążanie operatorów i funkcji...n Podstawy korzystania z szablonów...n Wprowadzenie do obsługi wyjątków...n Komponenty składające się na obsługę wyjątków...n Podsumowanie...n...n

13 16 Triki najlepszych programistów gier 3D. Vademecum profesjonalisty Witryny poświęcone programowaniu gier i nowinkom programistycznym Witryny, z których można ściągać użyteczne materiały i programy Silniki 2D i 3D...n...n Książki poświęcone programowaniu gier komputerowych Strony Microsoftu poświęcone interfejsowi DirectX...n Grupy dyskusyjne Usenetu...n Najnowsze wiadomości z branży: Blues News...n Magazyny komputerowe poświęcone projektowaniu gier Dodatkowe materiały do gry Quake...n Darmowe modele i tekstury...n Twórcy witryn poświęconych grom komputerowym...n

14 Rozdział 10. Nie bój się, to nie jest groźba pod Twoim adresem Marla, Fight Club Dość długo udawało się nam unikać tematu przycinania scen 3D, przyszedł jednak czas na rozwiązanie i tego problemu. Nie da się już dłużej omijać tematu przycinania. Dlatego w bieżącym rozdziale omówione zostaną podstawy teoretyczne oraz zaprezentowany będzie praktyczny szkielet modułu przycinania scen 3D; wskazane zostaną też powody, dla których konieczne jest realizowanie przycinania scen oraz działający przykład wykorzystania tej techniki. Głównśymi wątkami rozdziału będą: wprowadzenie do przycinania scen 3D; podstawy teoretyczne algorytmów przycinania; implementacja przycinania sceny do ostrosłupa widześnia; zabawa z przycinaniem. Przycinanie jako jedna z technik przetwarzania sceny w grafice komputerowej wzmiankowane było w niniejszej książce już kilkukrotnie; stosowne omówienia znajdują się również w drugim wydaniu książki Tricks of the Windows Game Programming Gurus. Przycinanie to jedna z najważniejszych technik grafikśi 3D, gdyż źle przycinane sceny są nie tylko nieprawidłowo wyświetlane na ekranie, ale również ich rzutowanie w ostrosłupie widzenia może doprowadzić do błędów dzielenia przez zero i niepoprawnych odwołań do pamięci. Mając to na uwadze przypomnimy sobie różne techniki przycinania i wskażemy przyczyny ich stosowania. O przycinaniu w przestrzeni obiektu mówimy wtedy, gdy przycinaniu do wyznaczonego obszaru podlegają współrzędne geometryczne elementów sceny. Obszar przycinania może być dwu- lub trójwymiarowy istotne jest to, że przycinanie zachodzi w matematycznej reprezentacji sceny i dotyczy matematycznych reprezentacji obiektów, trójkątów, elementów podstawowych i wszelkich innych części sceny. Zaletą przycinania w przestrzeni obiektu jest prostota: przy pomocy listy wierzchołków wielokątów tworzących scenę przycina się ich współrzędne do wyznaczonego dwu- lub trójwymiarowego obszaru rzutowania. Listę przyciętych trójkątów przekazuje się do następnego etśapu potoku renderowania. Wady przycinania w przestrzeni obiektu tkwią, jak zwykle, w szczegółach implementacyjnych. W omawianych w tej książce mechanizmach obrazowania jako elementy konstrukcyjne wykorzystywane są zawsze trójkąty. Tymczasem w wyniku przycinania, czy to do prostokąta rzutu dwuwymiarowego, czy do ostrosłupa widzenia, do sceny wprowadzane są wielokąty z więcej niż trzema wierzchołkami (a więc w wyniku przycinania scena przestaje składać się już wyłącznie z trójkątów). Tak więc dla każdej płaszczyzny przycinania

15 756 Część III Podstawy renderowania 3D należy przewidzieć potrzebę wprowadzenia dodatkowych wierzchołków przetwarzanych trójkątów, przez co stają się one czworokątami bądź wielokątami o jeszcze większej liczbie kątów. To pierwsza trudność. Gdyby silnik graficzny optymalizowany był pod kątem przetwarzania wielokątów o dowolnej liczbie wierzchołków, nie byłoby problemu, ale dotychczas omówione optymalizacje przetwarzania 3D opierały się zawsze na założeniu, że scena składa się wyłącznie z trójkątów. Dalej, przycinanie w dowolnym systemie przestrzeni obiektu oznacza konieczność przecinania prostych prostymi, prostych płaszczyznami i tak dalej. Z pozoru proste, operacje te okazują się trudne w wydajnej implementacji, wymagając rozwiązania wielu problemów. Przycinanie 2D w przestrzeni obiektu nie jest nam całkiem obce, ponieważ wielokrotnie prezentowaliśmy je dla grafiki 2D. Podstawowa koncepcja takiego przycinania zakłada, że dysponujemy gotowymi już rzutami prostych i wielokątów, które należy przyciąć do prostokątnego obszaru widzenia. Kod implementujący takie przycinanie prezentowany był już zarówno w tym, jak i poprzednim wydaniu książki. Przycinanie 2D nie może być dłużej pomocne, ponieważ podstawowym problemem jest to, że w przestrzeni trójwymiarowej rzutowaniu podlegają wielokąty, które mogą być potencjalnie tak rozległe, że nie tylko przenikają przez bliską płaszczyznę przycinania, ale również przez płaszczyznę o współrzędnej z równej 0, stąd do rzutowania przekazywane są wierzchołki o ujemnych wartościach tej współrzędnej (jak na rysunku 10.1). Wyłania się więc potrzeba opracowania techniki bardziej agresywneśgo przycinania 3D w przestrzeni obiektu. Rzutowanie wierzchołków o współrzędnej z mniejszeji lub równej zeru prowadzi do błędów

16 Rozdział 10. Przycinanie scen 3D 757 Jeżeli mechanizm obrazowania sceny ma sobie radzić z wielokątami o dowolnych rozmiarach i rozmieszczeniu, nie da się w prosty sposób uniknąć przycinania sceny do bliskiej płaszczyzny przycinania (patrz rysunek 10.2). Najbardziej prymitywnym sposobem uniknięcia przycinania jest usuwanie w całości ze sceny tych wielokątów, których wierzchołki wystają poza płaszczyznę przycinania, ale wymaga to konstruowania sceny z wielokątów o ograniczonym rozmiarze (patrz rysunek 10.3). Przy tym fragmenty scen przylegające do płaszczyzn przycinania nie będą właśściwie obrazowane. Zbyt długie wielokąty muszą zostać przycięte Niewielkie wielokąty mogą zostać w całości usuniętie bądź zaliczone do sceny

17 758 Część III Podstawy renderowania 3D Warunkiem koniecznym prawidłowego obrazowania sceny jest przycinanie wszystkich wielokątów sceny do bliższej płaszczyzny, przy czym uzyskane w wyniku przycięcia wielokąty mogą przestać być trójkątami. Trzeba się więc liczyć z koniecznością ponownego podziału powstałych wielokątów na trójkąty i tym samym przebudowania listy obrazowanych wielokątów. W najgorszym więc przypadku konieczne będzie przycięcie wszystkich wielokątów do bliskiej płaszczyzny przycinania, co sprowadza się do wyliczania punktów przecięcia prostych i płaszczyzn. W szczegółach problem okazuje się poważniejszy. Wiemy już o konieczności ponownego podziału sceny na trójkąty; dodatkowo należy jeszcze przyciąć współrzędne tekstur, przeliczyć dane potrzebne do cieniowania powierzchni i wyliczyć nowe wartości wektorów normalnych wierzchołków widać, że trudności jest niemałśo, ale poradzimy sobie i z nimi. Z drugiej strony, niebawem okaże się, że nie ma potrzeby wykonywania operacji przycinania dla pozostałych płaszczyzn ostrosłupa widzenia. Spójrzmy na rysunek Okazuje się, że przycinanie wielokątów do dalekiej płaszczyzny przycinania jest zwykłą stratą czasu. Jaki byłby zysk? Praktycznie żaden. Co gorsza, przycinanie to znacznie zwiększyłoby czas przetwarzania sceny. Wystarczy więc (zamiast przycinać) odrzucać w całości te wielokąty, które znajdują się poza daleką płaszczyzną przycinania niezależnie od ich odległości od tej płaszczyzny. Wielokąty, które w całości znajdują się poza tą płaszczyzną, zostaną raczej usunięte z wykorzystaniem sfer otaczających niż przycśinania. Nie wszystkie płaszczyzny ostrosłupa widzenia wymaigają przycinania 3D Dalej, również przycinanie na płaszczyznach tworzących górną, dolną, lewą i prawą ścianę ostrosłupa widzenia nie ma sensu. Przycinanie na ścianach ostrosłupa widzenia zajęłoby cenny czas, a służyłoby tylko do tego, żeby rzut sceny nie wykraczał poza obszar dwuwymiarowej płaszczyzny widoku sceny. O to można zaś zadbać na etapie rasteryzacji, w obszarze bufora ramki ekranu, co jest nieporównanie szybsze niż przycinanie w przestrzeni obiektu. Unikając przycinania na płaszczyznach ostrosłupa widzenia eliminujemy również ze sceny i potoku renderowania potencjalne dodatkowe wielokąty, powstałe z podziału wielokątów na granicach obszaru przycinania.

18 Rozdział 10. Przycinanie scen 3D 759 Naturalnie, jeżeli Czytelnikowi zależy na elegancji i kompletności mechanizmu obrazowania, może pokusić się o implementację przycinania dla wszystkich płaszczyzn; zostanie to zresztą pokazane w dalszej części rozdziału. Główny nacisk zostanie jednak położony na następujące etapy przycinania i usuwania wielokątów (patrz rysunek 10.5): Etapy w potoku przycinania 3D Usunięcie wszystkich zbędnych obiektów. Usunięcie wielokątów zwróconych tyłem do obserwatora. Przycięcie wszystkich wielokątów do obszaru ostrosłupaś widzenia. Pełnego przycinania wymaga jedynie bliska płaszczyzna przycinania w osi Z. Przyciśnanie na pozostałych pięciu płaszczyznach sprowadza się zaś do prostej kwalifikacji wielokątaś do sceny w całości (jeżeli trójkąt znajduje się częściowo lub w całości w obszarze przycinania, zostśaje zaliczony do sceny w całości; trójkąty pozostające w całości poza lewą, prawą, górną i dolśną płaszczyzną ostrosłupa widzenia można w całości usunąć ze sceny). Przekazanie wszystkich wielokątów do następnych etapówś potoku renderowania; wszelkie trójkąty wystające poza obszar płaszczyzny rzutu można przyciśąć na etapie rasteryzacji. Taki system przycinania jest łatwy w implementacji, działa znakomicie, i co najważniejsze jest bardzo szybki. Należałoby jeszcze sprecyzować, co należy rozumieć pod pojęciem przycinania w obszarze rzutu ekranu. Sytuacja wejściowa prezentowana jest na rysunku 10.6: wielokąt jest gotowy do odrysowania, ale jego fragment wystaje poza jedną z prostych wyznaczających obszar obrazu sceny. Nie jest to problem, o ile przycinanie ma nastąpić w pionie. Wystarczy rozpocząć pętlę odrysowywania wielokąta od wierzchołka uzyskanego przez obliczenie punktu przecięcia trójkąta z obszarem obrazu. Wyliczenie takie to zaledwie jeden dodatkowy wiersz kodu programu. W przypadku przecięcia z lewą bądź prawą krawędzią obrazu procedura odrysowywania jest nieco inna: przycinane są kolejne linie tworzone w pętli odrysowywania. Jest to szybsze niż przycinanie każdego wystającego trójkąta do wszystkich czterech płaszczyzn ostrosłupa widzenia. To ostatnie oznacza bowiem dodanie do sceny potencjalnie wielu nowych wielokątów, a co za tym idzie, oznacza konieczność wyliczania nowych współrzędnych teksturowania, przeliczania wektorów normalnych wielokątów i wierzchołków i tak dalej. Tymczasem aż nadto obciążające obliczeniowo jest już samo przycinanie do bliskiej płaszczyzny prśzycinania.

19 760 Część III Podstawy renderowania 3D Przycinanie w obszarze obrazu sceny, podczas rysowywania wielokątów Z drugiej strony, nie można dopuścić, aby przycinanie w obszarze bufora ramki doprowadziło do utraty jakichkolwiek informacji 3D; będą one jeszcze potrzebne, między innymi przy okazji konstruowania bufora Z. Operacje w obszarze bufora ramki wymagają ostrożności: gdy dojdzie do interpolacji wartości współrzędnych z dla krawędzi wielokątów, konieczne będzie zachowanie przynajmniej współrzędnych z wierzchołków. Chodzi o to, że podczas ostatecznej rasteryzacji nie można będzie już realizować przycinania wyłącznie na podstawie wartości współrzędnych 2D. Dojdśziemy do tego w stosownym czasie. Przed wkroczeniem w obszar teorii algorytmów przycinania chciałbym uprzedzić, że poważne nazwy co niektórych algorytmów niekiedy rozśmieszają, a to dlatego, że każdy z nich można wymyślić samemu wszystkie są po prostu formalizacją tego, co w domu robi każdy, kto zajmuje się choć trochę algorytmami graficznymi. Nazewnictwo algorytmów jest zresztą nieodłącznym problemem grafiki komputerowej: co i raz ktoś wymyśla nowy algorytm i publikuje go; odtąd zaczyna on funkcjonować pod pewną nazwą, niezależnie od innych nazw tego samego algorytmu publikowanego gdzie indziej. Nie zawsze zresztą nowa nazwa starego algorytmu jest dziełem samego autora publikacji często czytelnicy zaczynają odwoływać się do nowego algorytmu pod nową nazwą. Przycinanie to koncepcja na tyle prosta, że śmieszne byłoby sądzić, że została odkryta przez jedną konkretną osobę. Każdy algorytm przycinania jest pewnym wcieleniem zdroworozsądkowego podejścia do przetwarzania grafiki i opiera się na wyliczaniu punktów przecięcia wierzchołków. Algorytmy takie produkuje się zwykle pod presją pojawiających się zadań niejednokrotnie wyważa się wtedy otwarte już drzwi. Do czego zmierzam? Otóż nieco dalej wymienione zostaną z nazwy pewne powszechnie przyjęte algorytmy przycinania, jednak nie powinniście na ich podstawie wyrabiać sobie poglądu, że są one jedynymi możliwymi wcieleniami przycinania. Jak Wam zapewne wiadomo, programista niejednokrotnie spędza całe godziny na rozwiązaniu problemu, po czym dowiaduje się, że jego rozwiązanie jest bardzo podobne do już istniejących algorytmów. W przypadku algorytmów przycinania byłoby prościej, gdyby ich nazwy były bardziej opisowe. Istniejące nazwy brzmiśą przecież jak nazwy kancelarii prawniczych!

20 Rozdział 10. Przycinanie scen 3D 761 Wydaje się, że aby algorytm otrzymał nazwę, powinien cechować się pewnym wyrafinowaniem, powodującym, że opisywana przezeń technika nie jest bynajmniej oczywista dla osób średnio tylko zaawansowanych w danej dziedzinie. Zgodnie z takim rozumowaniem uzasadnione jest uhonorowanie wynalazcy algorytmu drzewa BSP (ang. binary space partitioning) przez nadanie mu jego imienia podział trójwymiarowej przestrzeni BSP nie jest bowiem algorytmem trywialnym. Kiedy jednak chodzi o przycinanie wielokąta do innego wielokąta, opracowanie algorytmu wymaga godziny (może dwóch) zastanowienia, spędzonego na kombinowaniu metod przycinania odcinków, klasyfikacji wierzchołków, kodowania bitowego czy parametrycznych reprezentacji prostych. Iś tyle! Mam zamiar, rzecz jasna, zachęcić Was do eksperymenctów. Co prawda, dziewięćdziesiąt dziewięć procent rozwiązywanych w ten sposób problecmów doczekało się już rozwiązania, nie oznacza o jednak, że rozwiązania te zostały gdzicekolwiek opublikowane. Dosyć narzekania. Do dzieła! Przystąpimy teraz do omówienia z teoretycznego punktu widzenia najpopularniejszych algorytmów przycinania, po czym zajmiemy się implementacją takiego algorytmu na potrzeby naszego silnika graficznego. Prezentowany algorytm, jako że powstał pod presją konkretnego problemu, będzie hybrydą wielu pomysłów. Na początek nieśco informacji podstawowych. Przycinanie wielokątów sprowadza się do przycinania odcinków, co z kolei sprowadza się do określania, czy pewne punkty zawierają się w danym obszarze dwuwymiarowym bądź w trójwymiarowej bryle. Ilustracją problemu w jego postaci ogólnej jest rysunek Otóż dany jest zbiór odcinków, tworzących wchodzące w skład sceny wielokąty, które mają zostać później poddane rzutowaniu. Należy określić, czy elementy te mieszczą się w pewnych zadanych granicach. Da się to sprowadzić do określenia, czy w granicach tych mieszczą się pojedyncze punkty charakterystyczne elementów. Innymi słowy, dane trójkąty determinowane są trzema wierzchołkami, łączonymi trzema odcinkami (krawędziami). Choć to właśnie krawędzie nadają trójkątowi zarys, naprawdę ważne są jedynie wierzchołki. Stąd, na najwyższym poziomie ogólności, problem sprowadza się do sprawdzenia, czy punkt o współrzędnych (x, y) bądź (x, y, z) znajduje się w zadanym obszarze (bryle), a więc do testu zawierania się punktu. Test zawierania się na płaszczyźnie dwuwymiarowej

21 762 Część III Podstawy renderowania 3D Dla danego punktu p0(x, y) i prostokątnego obszaru wyznaczanego prostymi xmin, xmax, ymin, ymax (patrz rysunek 10.7), punkt p0 zawiera się w zadanym obszarze, jeżeli spełnia nastśępujące nierówności: i Przypadek 1. Zawieranie się punktu w bryle prostopadłościennej. Dla danego punktu p0(x, y, z) i prostopadłościennego obszaru wyznaczonego płaszczyznami xmin, ymin, zmin, xmax, ymax, zmax (patrz rysunek 10.8), punkt p0 zawiera się w zadanym obszarze, jeżeli spełnia następujące nierówności: Testowanie zawierania się punktu w bryle 3D i i Pojawia się tu wątpliwość, czy warto zawracać sobie głowę przycinaniem do bryły prostopadłościennej, jeżeli z góry wiadomo, że ostrosłup widzenia taką bryłą nie jest? To prawda, ale wystarczy przypomnieć sobie omówienie rzutowania i dyskutowany przy tej okazji efekt prostowania ostrosłupa widzenia właśnie do postaci bryły prostopadłościennej. W takim przypadku przycinanie sprowadza się do trywialnych porównań współrzędnych wierzchołków wielokątów sceny ze współrzędnymi wierzchołków ścian bryły zawierania. Nikt też nie mówił, że przycinanie realizowane jest wyłącznie do ostrosłupa widzenia przecież promienie lasera wystrzeliwane w grze warto przyciąć również do jakiejś skończonej bryły w rozległym świecie gry kosmicznej, aby nie przeliczać ich pozycji w nieskończoność, gdy dawno opuściły penetrowany układ planetarny.

22 Rozdział 10. Przycinanie scen 3D 763 Przypadek 2. Przypadek ogólny zawierania się punktu w bryle ostrośsłupa widzenia. Przypadek ten będzie interesował nas najbardziej. To standardowy przypadek w przycinaniu: danych jest sześć płaszczyzn tworzących ścięty ostrosłup widzenia, do którego należy przyciąć wszelkie elementy geometryczne sceny. Ostrosłup widzenia można zdefiniować na kilka sposobów, na przykład przez określenie współrzędnych z płaszczyzn przycinania (bliższej i dalszej) wraz ze współrzędnymi prostokątnego obszaru na płaszczyźnie bliższej. Jednak niezależnie od sposobu wyznaczenia zadanych będzie sześć płaszczyzn. Nazwijmy je Pgórna, Pdolna, Pprawa, Plewa, Pdaleka i Pbliska. Dodatkowo załóżmy, że płaszczyzny zdefiniowano w taki sposób, że ich wektory normalne skierowane są do wewnątrz bryły ściętego ostrosłupa widzenia. Dalej, dla punktu p0(x, y, z) można wyznaczyć półprzestrzeń, w której się znajduje. Przynależność do półprzestrzeni dodatniej oznacza, że punkt znajduje się po wewnętrznej stronie płaszczyzny przycinania, przynależność do półprzestrzeni ujemnej że punkt znajduje się po stronie zewnętrznej, a tym samym poza ostrosłupem widzenia. Przypominacie sobie zapewne, że do określenia, czy dany punkt leży na płaszczyźnie, czy też należy do półprzestrzeni dodatniej bądź ujemnej, służy równanie płaszczyzny, prezentowane w rozdziałach 4. i 5. Załóżmy więc, że operator HS(p, pł) zwraca wartość półprzestrzeni punktu p względem płaszczyzny pł (dla półprzestrzeni dodatniej wynikiem operatora jest +1, dla ujemnej 1, a w przypadku, gdy punkt znajduje śsię dokładnie na płaszczyźnie 0). Do określenia zawierania się punktu w bryle niezbędne jest sprawdzenie, czy współrzędne punktu spełniają następujące nierówności: Obliczenia te są tylko pozornie skomplikowane. Znamy już sposób określania, czy dany punkt znajduje się wewnątrz, czy na zewnątrz wyznaczonego obszaru przycinania, zarówno na płaszczyźnie, jak i w przestrzeni trójwymiarowej. Kolejny krok to przejście na wyższy poziom abstrakcji i przycinanie odcinków (krawędzi) wyznaczanych punktami i tym samym przycinanie konturów trójkątów. Potrzebujemy tu narzędzia służącego do wykrywania punktów przecięć odcinków z płaszczyznami i innymi odcinkami. Stosowne wzory podane zostały i omówione w rozdziałach 4. i 5., nie będziemy więc od nowa ich wyprowadzać; konieczne będzie jednak odświeżenie pamięci. Przycinanie wielokątów to tylko pewne rozszerzenie zagadnienia przycinania odcinków, więc nie uprzedzając omówienia rzecz sprowadza się do wymyślenia sposobu przycięcia odcinka względem nieskończonej prostej (na płaszczyźnie) bądź względem płaszczyzny (w przestrzeni 3D). Pełny algorytm przycinania sceny to po prostu iteracyjne lub rekurencyjne stosowanie procedury przycinania dla każdego odcinka wielokąta względem każdej płaszczyzny przycinania ograniczającej ostrosłup widzenia. Naturalnie, algorytmy przycinania są odpowiednio optymalizowane, ale sprowadzają się właśnie do powyższej procedury, i to niezależnie od liczby wymiarów sceny. Skupmy się na zagadnieniu przycinania odcinków. Na pierwszy ogień pójdzie przypadek przycinania w przestrzeni dwuwymiarowej. Odwołując się do rysunku 10.9 wyobrażamy sobie odcinek łączący punkty p0(x0, y0) i p1(x1, y1). Odcinek ten ma zostać przycięty względem pionowej prostej wyznaczanej równaniem x = xl. Przycinanie trójkątów rzadko będzie odbywało względecm prostych o dowolnym kierunku zwykle wystarcza analiza przypadków względem prostcych poziomych i pionowych.

23 764 Część III Podstawy renderowania 3D Proste przycinanie odcinków Aby przyciąć prostą (odcinek), wystarczy dokonać konwersji jej reprezentacji do postaci parametrycznej i podstawić wartość x w punkcie przecięcia. Oto sposób rozuśmowania, który prowadzi do takiego wniosku: W postaci wektorowej pozycja punktu wzdłuż odcinka tśo: W postaci rozbitej na składowe: Do sprawdzenia, czy dany odcinek przecina zadaną prostą pionową, należy podstawić wartość x definiującą tę prostą (tutaj x = xl) do lewej strony równania dla składowej x, a następnie wyliczyć z tego równania wartość t. Jeżeli t należy do przedziału <0, 1>, odcinek przecina zadaną prostą; dla t spoza tego przedziału wiadomo, że odcinek nie przecina prostej: Po podstawieniu w miejsce x wartości xl otrzymujemy: Stąd t ma wartość: Jeżeli t ma wartość pomiędzy 0 a 1, odcinek przecina prostą. Należy pamiętać, że odcinek zdefiniowany tak, jak w przykładzie, rozciąga się pomiędzy punktami p0 i p1, przy t zmieniającym się od 0 do 1. Wartości t spoza tego zakresu należą co prawda do prostej, nie należą jednak do jej odcinka ograniczanego punktami p0 i p1. Po wyliczeniu t i stwierdzeniu, że mieści się ona w zakresie od 0 do 1,wystarczy podstawić je do równania dla składowej y:

24 Rozdział 10. Przycinanie scen 3D 765 I otrzymujemy współrzędne punktu przecięcia z danego odcinka z prostą pionową x = xl. Wyznaczenie punktu przecięcia z prostą poziomą jest równie proste, tyle, że jako pierwsze rozwiązujemy równanie dla składowej y i uzyskaną stąd wartość t podstawiamy do równania dla składowej x. Oto przykład dla prostej odcięcia wyznaczanej wzorem y = yl: Po podstawieniu yl do odpowiedniego równania otrzymuśjemy: Stąd wartość t to: Po sprawdzeniu wartości t otrzymujemy informację, czy nastąpiło przecięcie danych odcinków (dla t z zakresu od 0 do 1). Jeżeli tak, podstawiamy otrzymaną wartość dśo równania składowej x: I otrzymujemy drugą współrzędną punktu przecięcia odścinka z poziomą prostą y = yl. Oczywiście, efektywna implementacja takiego przycinania wymaga podejścia zdroworozsądkowego i wprowadzenia stosownych testów odsiewających. Przykładowo, jeżeli punkty końcowe p0 i p1 mają identyczne współrzędne, w ogóle nie trzeba przeprowadzać testu na przecięcie z prostą. Podobnie daremna jest próba obliczenia punktu przecięcia odcinka poziomego z pośziomą prostą i tak dalej. Przypadek przecinania prostych w przestrzeni trójwymiarowej okazuje się równie łatwy jak na płaszczyźnie cały problem sprowadza się do odpowiedniej reprezentacji płaszczyzn. Na razie nie będziemy jednak wprowadzać żadnych sztuczek i przyjrzymy się ogólnemu przypadkowi przycinania odcinków w przestrzeni 3D przy zadanej parametrycznie prostej i zadanej płaszczyźnie. Problem ilustrowany jest rysunkiem Na pierwszy ogień pójdzie równanie płaszczyzny będzie ona definiowana w postaci punktu zaczepienia i wektora normalnego płaszczyzny. Odcinek przecinający płaszczyznę w przestrzeni trójwymiarowej Niech p0 = (x0, y0, z0) będzie punktem leżącym na płaszczyźnie, a n [nx, ny, nz] wektorem normalnym tej płaszczyzny. Równanie płaszczyzny przyjmie wtedy śpostać:

25 766 Część III Podstawy renderowania 3D Odcinek pomiędzy punktami p1 i p2 dany będzie parametrycznie, w zapisie wektorowym: W postaci równań składowych: Pora na wyliczenie punktu przecięcia. Ponownie odsyłam Was do rozdziału 4., w którym zaprezentowano wzory niezbędne do realizacji obliczenia; objaśnienie procesu obliczeniowego można jednak sprowadzić do stwierdzenia, że wartości x, y i z prostej parametrycznej podstawiane są do równania płaszczyzny, po czym z równania tego obliczana jest wartość t: Po podstawieniu x, y i z do równania płaszczyzny otrzśymujemy: Po obliczeniu wartości t należy podstawić ją z powrotem do równania prostej w ten sposób wyliczone zostaną odpowiednie współrzędne punktu przecięcia. Jako, że pokazywaliśmy to już dla przypadku 2D, poszczególne etapy obliczenia zostaną tym razem pominięte. To już wszystko na temat przycinania, sprowadza się on bowiem właśnie do umiejętności obliczania punktów przecięcia prostej z prostą i prostej z płaszczyzną. Teraz wiedzę tę należy wykorzystać w algorytmie, który będzie ją efektywnie implementował. Przejdźmy więc do opisu kilku popularnych algorśytmów przycinania. Algorytm Cohena-Sutherlanda to jedna z najpopularniejszych technik przycinania odcinków do prostokątnych obszarów płaskich bądź do prostopadłościennych brył w przestrzeni trójwymiarowej. Algorytm dzieli się na dwie fazy. W fazie klasyfikacji punktów końcowych każdy odcinek na płaszczyźnie bądź w przestrzeni jest oznaczany jako leżący wewnątrz lub w poza obszarem przycinania; do klasyfikacji wykorzystuje się kodowanie bitowe, reprezentujące pozycję każdego z punktów końcowych odcinka jako wewnątrz (1) lub poza (0) zadanym obszarem. Schemat kodowania klasyfikującego dla przypaśdku 2D ilustrowany jest rysunkiem Każdy wierzchołek (x, y) odcinka ograniczonego punktami p0(x0, y0) i p1(x1, y1) wymaga osobnej klasyfikacji. Klasyfikacja punktów końcowych odcinka kodowana jest na czterech (sześciu w przestrzeni trójwymiarowej) bitach. Kod dla punktu p0 określać będziemy symbolem kb0 (analogicznie, dla p1 będzie to symbol kb1). Bity reprezentujące poszczególne obszary klasyfikacji mogą być kodowane w dowolny sposób, dla obszaru prostokątnego ograniczanego punktami (xmin, ymin) i (xmax, ymax) przyjęto jednak kody wymienione w tabeli Kodowanie położenia wierzchołków odcinków w algorytimie Cohena-Sutherlanda Nr bitu Znaczenie dla wartości 1, powyżej górnej krawędzi obszaru przycinania, poniżej dolnej krawędzi obszaru przycinania, na prawo od prawej krawędzi obszaru przycinania, na lewo od lewej krawędzi obszaru przycinania

Julia 4D - raytracing

Julia 4D - raytracing i przykładowa implementacja w asemblerze Politechnika Śląska Instytut Informatyki 27 sierpnia 2009 A teraz... 1 Fraktale Julia Przykłady Wstęp teoretyczny Rendering za pomocą śledzenia promieni 2 Implementacja

Bardziej szczegółowo

9. Podstawowe narzędzia matematyczne analiz przestrzennych

9. Podstawowe narzędzia matematyczne analiz przestrzennych Waldemar Izdebski - Wykłady z przedmiotu SIT 75 9. odstawowe narzędzia matematyczne analiz przestrzennych Niniejszy rozdział służy ogólnemu przedstawieniu metod matematycznych wykorzystywanych w zagadnieniu

Bardziej szczegółowo

Spis treści. I. Skuteczne. Od autora... Obliczenia inżynierskie i naukowe... Ostrzeżenia...XVII

Spis treści. I. Skuteczne. Od autora... Obliczenia inżynierskie i naukowe... Ostrzeżenia...XVII Spis treści Od autora..................................................... Obliczenia inżynierskie i naukowe.................................. X XII Ostrzeżenia...................................................XVII

Bardziej szczegółowo

Rozkład materiału z matematyki dla II klasy technikum zakres podstawowy I wariant (38 tyg. 2 godz. = 76 godz.)

Rozkład materiału z matematyki dla II klasy technikum zakres podstawowy I wariant (38 tyg. 2 godz. = 76 godz.) Rozkład materiału z matematyki dla II klasy technikum zakres podstawowy I wariant (38 tyg. godz. = 76 godz.) I. Funkcja i jej własności.4godz. II. Przekształcenia wykresów funkcji...9 godz. III. Funkcja

Bardziej szczegółowo

OpenGL i wprowadzenie do programowania gier

OpenGL i wprowadzenie do programowania gier OpenGL i wprowadzenie do programowania gier Wojciech Sterna Bartosz Chodorowski OpenGL i wprowadzenie do programowania gier Autorstwo rozdziałów: 1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 Wojciech Sterna

Bardziej szczegółowo

Smarty PHP. Leksykon kieszonkowy

Smarty PHP. Leksykon kieszonkowy IDZ DO PRZYK ADOWY ROZDZIA SPIS TREœCI KATALOG KSI EK KATALOG ONLINE ZAMÓW DRUKOWANY KATALOG Smarty PHP. Leksykon kieszonkowy Autor: Daniel Bargie³ ISBN: 83-246-0676-9 Format: B6, stron: 112 TWÓJ KOSZYK

Bardziej szczegółowo

Wymagania edukacyjne z matematyki w klasie III gimnazjum

Wymagania edukacyjne z matematyki w klasie III gimnazjum Wymagania edukacyjne z matematyki w klasie III gimnazjum - nie potrafi konstrukcyjnie podzielić odcinka - nie potrafi konstruować figur jednokładnych - nie zna pojęcia skali - nie rozpoznaje figur jednokładnych

Bardziej szczegółowo

Plan wykładu. Akcelerator 3D Potok graficzny

Plan wykładu. Akcelerator 3D Potok graficzny Plan wykładu Akcelerator 3D Potok graficzny Akcelerator 3D W 1996 r. opracowana została specjalna karta rozszerzeń o nazwie marketingowej Voodoo, którą z racji wspomagania procesu generowania grafiki 3D

Bardziej szczegółowo

Załącznik KARTA PRZEDMIOTU. KARTA PRZEDMIOTU Wydział Automatyki, Elektroniki i Informatyki, Rok akademicki: 2009/2010 KOMPUTEROWA

Załącznik KARTA PRZEDMIOTU. KARTA PRZEDMIOTU Wydział Automatyki, Elektroniki i Informatyki, Rok akademicki: 2009/2010 KOMPUTEROWA 1/1 Wydział Automatyki, Elektroniki i Informatyki, Rok akademicki: 2009/2010 Nazwa przedmiotu: Kierunek: Specjalność: Tryb studiów: GRAFIKA KOMPUTEROWA INFORMATYKA Kod/nr GK PRZEDMIOT OBOWIĄZKOWY DLA WSZYSTKICH

Bardziej szczegółowo

Matematyka z komputerem dla gimnazjum

Matematyka z komputerem dla gimnazjum IDZ DO PRZYK ADOWY ROZDZIA KATALOG KSI EK ZAMÓW DRUKOWANY KATALOG TWÓJ KOSZYK CENNIK I INFORMACJE ZAMÓW INFORMACJE O NOWO CIACH ZAMÓW CENNIK CZYTELNIA SPIS TRE CI KATALOG ONLINE DODAJ DO KOSZYKA FRAGMENTY

Bardziej szczegółowo

SPIS TREŚCI WSTĘP... 8 1. LICZBY RZECZYWISTE 2. WYRAŻENIA ALGEBRAICZNE 3. RÓWNANIA I NIERÓWNOŚCI

SPIS TREŚCI WSTĘP... 8 1. LICZBY RZECZYWISTE 2. WYRAŻENIA ALGEBRAICZNE 3. RÓWNANIA I NIERÓWNOŚCI SPIS TREŚCI WSTĘP.................................................................. 8 1. LICZBY RZECZYWISTE Teoria............................................................ 11 Rozgrzewka 1.....................................................

Bardziej szczegółowo

Algebra liniowa z geometrią

Algebra liniowa z geometrią Algebra liniowa z geometrią Maciej Czarnecki 15 stycznia 2013 Spis treści 1 Geometria płaszczyzny 2 1.1 Wektory i skalary........................... 2 1.2 Macierze, wyznaczniki, układy równań liniowych.........

Bardziej szczegółowo

2 Przygotował: mgr inż. Maciej Lasota

2 Przygotował: mgr inż. Maciej Lasota Laboratorium nr 2 1/6 Grafika Komputerowa 3D Instrukcja laboratoryjna Temat: Manipulowanie przestrzenią 2 Przygotował: mgr inż. Maciej Lasota 1) Manipulowanie przestrzenią Istnieją dwa typy układów współrzędnych:

Bardziej szczegółowo

WYMAGANIA EDUKACYJN KRYTERIA OCENY Z MATEMATYKI W KLASIE II GIMNAZJUM

WYMAGANIA EDUKACYJN KRYTERIA OCENY Z MATEMATYKI W KLASIE II GIMNAZJUM Na ocenę dopuszczającą uczeń umie : WYMAGANIA EDUKACYJN KRYTERIA OCENY Z MATEMATYKI W KLASIE II GIMNAZJUM stosować cztery podstawowe działania na liczbach wymiernych, zna kolejność wykonywania działań

Bardziej szczegółowo

Podstawa programowa przedmiotu MATEMATYKA. III etap edukacyjny (klasy I - III gimnazjum)

Podstawa programowa przedmiotu MATEMATYKA. III etap edukacyjny (klasy I - III gimnazjum) Podstawa programowa przedmiotu MATEMATYKA III etap edukacyjny (klasy I - III gimnazjum) Cele kształcenia wymagania ogólne: I. Wykorzystanie i tworzenie informacji. Uczeń interpretuje i tworzy teksty o

Bardziej szczegółowo

WYMAGANIE EDUKACYJNE Z MATEMATYKI W KLASIE II GIMNAZJUM. dopuszczającą dostateczną dobrą bardzo dobrą celującą

WYMAGANIE EDUKACYJNE Z MATEMATYKI W KLASIE II GIMNAZJUM. dopuszczającą dostateczną dobrą bardzo dobrą celującą 1. Statystyka odczytać informacje z tabeli odczytać informacje z diagramu 2. Mnożenie i dzielenie potęg o tych samych podstawach 3. Mnożenie i dzielenie potęg o tych samych wykładnikach 4. Potęga o wykładniku

Bardziej szczegółowo

SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD

SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD Dr inż. Jacek WARCHULSKI Dr inż. Marcin WARCHULSKI Mgr inż. Witold BUŻANTOWICZ Wojskowa Akademia Techniczna SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD Streszczenie: W referacie przedstawiono możliwości

Bardziej szczegółowo

Oświetlenie. Modelowanie oświetlenia sceny 3D. Algorytmy cieniowania.

Oświetlenie. Modelowanie oświetlenia sceny 3D. Algorytmy cieniowania. Oświetlenie. Modelowanie oświetlenia sceny 3D. Algorytmy cieniowania. Chcąc osiągnąć realizm renderowanego obrazu, należy rozwiązać problem świetlenia. Barwy, faktury i inne właściwości przedmiotów postrzegamy

Bardziej szczegółowo

Katalog wymagań programowych na poszczególne stopnie szkolne. Matematyka. Poznać, zrozumieć

Katalog wymagań programowych na poszczególne stopnie szkolne. Matematyka. Poznać, zrozumieć Katalog wymagań programowych na poszczególne stopnie szkolne Matematyka. Poznać, zrozumieć Kształcenie w zakresie podstawowym. Klasa 3 Poniżej podajemy umiejętności, jakie powinien zdobyć uczeń z każdego

Bardziej szczegółowo

Matematyka do liceów i techników Szczegółowy rozkład materiału Zakres podstawowy

Matematyka do liceów i techników Szczegółowy rozkład materiału Zakres podstawowy Matematyka do liceów i techników Szczegółowy rozkład materiału Zakres podstawowy Wariant nr (klasa I 4 godz., klasa II godz., klasa III godz.) Klasa I 7 tygodni 4 godziny = 48 godzin Lp. Tematyka zajęć

Bardziej szczegółowo

Spis treści. Rozdział 1. Aplikacje konsoli w stylu ANSI C i podstawowe operacje w Visual C++... 7

Spis treści. Rozdział 1. Aplikacje konsoli w stylu ANSI C i podstawowe operacje w Visual C++... 7 Spis treści Wprowadzenie...n...n... 5 Jak korzystać z tej książki?...t... 6 Rozdział 1. Aplikacje konsoli w stylu ANSI C i podstawowe operacje w Visual C++... 7 Podsumowanie...t...t...15 Rozdział 2. Rozdział

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Algorytmy i programowanie Algorithms and Programming Kierunek: Zarządzanie i Inżynieria Produkcji Rodzaj przedmiotu: kierunkowy Poziom studiów: studia I stopnia forma studiów: studia

Bardziej szczegółowo

Wprowadzenie do rysowania w 3D. Praca w środowisku 3D

Wprowadzenie do rysowania w 3D. Praca w środowisku 3D Wprowadzenie do rysowania w 3D 13 Praca w środowisku 3D Pierwszym krokiem niezbędnym do rozpoczęcia pracy w środowisku 3D programu AutoCad 2010 jest wybór odpowiedniego obszaru roboczego. Można tego dokonać

Bardziej szczegółowo

TEMAT 1. LICZBY I DZIAŁANIA 14 20. 1. Liczby 1-2. 2. Rozwinięcia dziesiętne liczb wymiernych. 3. Zaokrąglanie liczb. Szacowanie wyników 1-2

TEMAT 1. LICZBY I DZIAŁANIA 14 20. 1. Liczby 1-2. 2. Rozwinięcia dziesiętne liczb wymiernych. 3. Zaokrąglanie liczb. Szacowanie wyników 1-2 TEMAT 1. LICZBY I DZIAŁANIA 14 20 LICZBA GODZIN LEKCYJNYCH 1. Liczby 1-2 2. Rozwinięcia dziesiętne liczb wymiernych 3. Zaokrąglanie liczb. Szacowanie wyników 1 1-2 WYMAGANIA SZCZEGÓŁOWE Z PODSTAWY PROGRAMOWEJ

Bardziej szczegółowo

Podstawy grafiki komputerowej

Podstawy grafiki komputerowej Podstawy grafiki komputerowej Krzysztof Gracki K.Gracki@ii.pw.edu.pl tel. (22) 6605031 Instytut Informatyki Politechniki Warszawskiej 2 Sprawy organizacyjne Krzysztof Gracki k.gracki@ii.pw.edu.pl tel.

Bardziej szczegółowo

Katalog wymagań na poszczególne oceny z matematyki dla kl. VI Program nauczania Matematyka wokół nas

Katalog wymagań na poszczególne oceny z matematyki dla kl. VI Program nauczania Matematyka wokół nas Katalog wymagań na poszczególne oceny z matematyki dla kl. VI Program nauczania Matematyka wokół nas OCENA DOPUSZCZAJĄCA (wymagania na ocenę dopuszczającą są równoważne z minimum programowe dla klasy VI)

Bardziej szczegółowo

GRAFIKA KOMPUTEROWA. Plan wykładu. 1. Początki grafiki komputerowej. 2. Grafika komputerowa a dziedziny pokrewne. 3. Omówienie programu przedmiotu

GRAFIKA KOMPUTEROWA. Plan wykładu. 1. Początki grafiki komputerowej. 2. Grafika komputerowa a dziedziny pokrewne. 3. Omówienie programu przedmiotu GRAFIKA KOMPUTEROWA 1. Układ przedmiotu semestr VI - 20000 semestr VII - 00200 Dr inż. Jacek Jarnicki Instytut Cybernetyki Technicznej p. 226 C-C 3, tel. 320-28-2323 jacek@ict.pwr.wroc.pl www.zsk.ict.pwr.wroc.pl

Bardziej szczegółowo

Wymagania edukacyjne klasa pierwsza.

Wymagania edukacyjne klasa pierwsza. Wymagania edukacyjne klasa pierwsza. TEMAT WYMAGANIA SZCZEGÓŁOWE Z PODSTAWY PROGRAMOWEJ 1. LICZBY I DZIAŁANIA Liczby Rozwinięcia dziesiętne liczb wymiernych Zaokrąglanie liczb. Szacowanie wyników Dodawanie

Bardziej szczegółowo

KRYTERIA OCENY Z MATEMATYKI W KLASIE I GIMNAZJUM

KRYTERIA OCENY Z MATEMATYKI W KLASIE I GIMNAZJUM KRYTERIA OCENY Z MATEMATYKI W KLASIE I GIMNAZJUM Na stopień dostateczny uczeń powinien umieć: Arytmetyka - zamieniać procent/promil na liczbę i odwrotnie, - zamieniać procent na promil i odwrotnie, - obliczać

Bardziej szczegółowo

Definicja obrotu: Definicja elementów obrotu:

Definicja obrotu: Definicja elementów obrotu: 5. Obroty i kłady Definicja obrotu: Obrotem punktu A dookoła prostej l nazywamy ruch punktu A po okręgu k zawartym w płaszczyźnie prostopadłej do prostej l w kierunku zgodnym lub przeciwnym do ruchu wskazówek

Bardziej szczegółowo

W naukach technicznych większość rozpatrywanych wielkości możemy zapisać w jednej z trzech postaci: skalara, wektora oraz tensora.

W naukach technicznych większość rozpatrywanych wielkości możemy zapisać w jednej z trzech postaci: skalara, wektora oraz tensora. 1. Podstawy matematyki 1.1. Geometria analityczna W naukach technicznych większość rozpatrywanych wielkości możemy zapisać w jednej z trzech postaci: skalara, wektora oraz tensora. Skalarem w fizyce nazywamy

Bardziej szczegółowo

PROGRAM KLASY Z ROZSZERZONĄ MATEMATYKĄ

PROGRAM KLASY Z ROZSZERZONĄ MATEMATYKĄ PROGRAM KLASY Z ROZSZERZONĄ MATEMATYKĄ ALGEBRA Klasa I 3 godziny tygodniowo Klasa II 4 godziny tygodniowo Klasa III 3 godziny tygodniowo A. Liczby (24) 1. Liczby naturalne i całkowite. a. Własności, kolejność

Bardziej szczegółowo

MATeMAtyka 3. Propozycja przedmiotowego systemu oceniania wraz z określeniem wymagań edukacyjnych. Zakres podstawowy i rozszerzony

MATeMAtyka 3. Propozycja przedmiotowego systemu oceniania wraz z określeniem wymagań edukacyjnych. Zakres podstawowy i rozszerzony Agnieszka Kamińska, Dorota Ponczek MATeMAtyka 3 Propozycja przedmiotowego systemu oceniania wraz z określeniem wymagań edukacyjnych Zakres podstawowy i rozszerzony Wyróżnione zostały następujące wymagania

Bardziej szczegółowo

DesignCAD 3D Max 24.0 PL

DesignCAD 3D Max 24.0 PL DesignCAD 3D Max 24.0 PL Październik 2014 DesignCAD 3D Max 24.0 PL zawiera następujące ulepszenia i poprawki: Nowe funkcje: Tryb RedSDK jest teraz dostępny w widoku 3D i jest w pełni obsługiwany przez

Bardziej szczegółowo

Wybrane wymagania dla informatyki w gimnazjum i liceum z podstawy programowej

Wybrane wymagania dla informatyki w gimnazjum i liceum z podstawy programowej Wybrane wymagania dla informatyki w gimnazjum i liceum z podstawy programowej Spis treści Autor: Marcin Orchel Algorytmika...2 Algorytmika w gimnazjum...2 Algorytmika w liceum...2 Język programowania w

Bardziej szczegółowo

Techniki animacji komputerowej

Techniki animacji komputerowej Techniki animacji komputerowej 1 Animacja filmowa Pojęcie animacji pochodzi od ożywiania i ruchu. Animować oznacza dawać czemuś życie. Słowem animacja określa się czasami film animowany jako taki. Animacja

Bardziej szczegółowo

TEMAT 1. LICZBY I DZIAŁANIA 14 20. 1. Liczby 1-2. 2. Rozwinięcia dziesiętne liczb wymiernych. 3. Zaokrąglanie liczb. Szacowanie wyników 1-2

TEMAT 1. LICZBY I DZIAŁANIA 14 20. 1. Liczby 1-2. 2. Rozwinięcia dziesiętne liczb wymiernych. 3. Zaokrąglanie liczb. Szacowanie wyników 1-2 TEMAT 1. LICZBY I DZIAŁANIA 14 0 LICZBA GODZIN LEKCYJNYCH 1. Liczby 1-. Rozwinięcia dziesiętne liczb wymiernych 3. Zaokrąglanie liczb. Szacowanie wyników 4. Dodawanie i odejmowanie liczb dodatnich 1 1-

Bardziej szczegółowo

AutoCAD 2005. Pierwsze kroki

AutoCAD 2005. Pierwsze kroki IDZ DO PRZYK ADOWY ROZDZIA SPIS TRE CI KATALOG KSI EK KATALOG ONLINE ZAMÓW DRUKOWANY KATALOG AutoCAD 2005. Pierwsze kroki Autor: Andrzej Pikoñ ISBN: 83-7361-581-4 Format: B5, stron: 216 TWÓJ KOSZYK CENNIK

Bardziej szczegółowo

PORÓWNANIE TREŚCI ZAWARTYCH W OBOWIĄZUJĄCYCH STANDARDACH EGZAMINACYJNYCH Z TREŚCIAMI NOWEJ PODSTAWY PROGRAMOWEJ

PORÓWNANIE TREŚCI ZAWARTYCH W OBOWIĄZUJĄCYCH STANDARDACH EGZAMINACYJNYCH Z TREŚCIAMI NOWEJ PODSTAWY PROGRAMOWEJ PORÓWNANIE TREŚCI ZAWARTYCH W OBOWIĄZUJĄCYCH STANDARDACH EGZAMINACYJNYCH Z TREŚCIAMI NOWEJ PODSTAWY PROGRAMOWEJ L.p. 1. Liczby rzeczywiste 2. Wyrażenia algebraiczne bada, czy wynik obliczeń jest liczbą

Bardziej szczegółowo

Mathcad c.d. - Macierze, wykresy 3D, rozwiązywanie równań, pochodne i całki, animacje

Mathcad c.d. - Macierze, wykresy 3D, rozwiązywanie równań, pochodne i całki, animacje Mathcad c.d. - Macierze, wykresy 3D, rozwiązywanie równań, pochodne i całki, animacje Opracował: Zbigniew Rudnicki Powtórka z poprzedniego wykładu 2 1 Dokument, regiony, klawisze: Dokument Mathcada realizuje

Bardziej szczegółowo

Wprowadzenie do programowania

Wprowadzenie do programowania do programowania ITA-104 Wersja 1 Warszawa, Wrzesień 2009 ITA-104 do programowania Informacje o kursie Zakres tematyczny kursu Opis kursu Kurs przeznaczony jest do prowadzenia przedmiotu do programowania

Bardziej szczegółowo

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Część XVIII C++ Funkcje Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Umiemy już podzielić nasz

Bardziej szczegółowo

Katalog wymagań programowych na poszczególne stopnie szkolne klasa 1

Katalog wymagań programowych na poszczególne stopnie szkolne klasa 1 Matematyka Liczy się matematyka Klasa klasa Rozdział. Liczby zamienia liczby dziesiętne skończone na ułamki zwykłe i liczby mieszane zapisuje ułamek zwykły w postaci ułamka dziesiętnego skończonego porównuje

Bardziej szczegółowo

Algorytm. a programowanie -

Algorytm. a programowanie - Algorytm a programowanie - Program komputerowy: Program komputerowy można rozumieć jako: kod źródłowy - program komputerowy zapisany w pewnym języku programowania, zestaw poszczególnych instrukcji, plik

Bardziej szczegółowo

2012 Bentley Systems, Incorporated. Bentley Pointools V8i Przegląd

2012 Bentley Systems, Incorporated. Bentley Pointools V8i Przegląd 2012 Bentley Systems, Incorporated Bentley Pointools V8i Przegląd Przegląd Dlaczego potrzebujesz Bentley Pointools V8i? Co to jest? Filozofia Funkcje Szczegóły Kto to wykorzystuje? Wykorzystanie w przemyśle

Bardziej szczegółowo

Wymagania edukacyjne niezbędne do uzyskania poszczególnych śródrocznych i rocznych ocen klasyfikacyjnych z matematyki klasa 6.

Wymagania edukacyjne niezbędne do uzyskania poszczególnych śródrocznych i rocznych ocen klasyfikacyjnych z matematyki klasa 6. Wymagania edukacyjne niezbędne do uzyskania poszczególnych śródrocznych i rocznych ocen klasyfikacyjnych z matematyki klasa 6. Semestr 1 Dział programu: Liczby naturalne Oblicza różnice czasu proste Wymienia

Bardziej szczegółowo

Obróbka po realnej powierzchni o Bez siatki trójkątów o Lepsza jakość po obróbce wykańczającej o Tylko jedna tolerancja jakości powierzchni

Obróbka po realnej powierzchni o Bez siatki trójkątów o Lepsza jakość po obróbce wykańczającej o Tylko jedna tolerancja jakości powierzchni TEBIS Wszechstronny o Duża elastyczność programowania o Wysoka interaktywność Delikatne ścieżki o Nie potrzebny dodatkowy moduł HSC o Mniejsze zużycie narzędzi o Mniejsze zużycie obrabiarki Zarządzanie

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Podstawy Informatyki Basic Informatics Kierunek: Zarządzanie i Inżynieria Produkcji Rodzaj przedmiotu: ogólny Poziom studiów: studia I stopnia forma studiów: studia stacjonarne Rodzaj

Bardziej szczegółowo

Plan wynikowy klasa 3

Plan wynikowy klasa 3 Plan wynikowy klasa 3 Przedmiot: matematyka Klasa 3 liceum (technikum) Rok szkolny:........................ Nauczyciel:........................ zakres podstawowy: 28 tyg. 3 h = 84 h (78 h + 6 h do dyspozycji

Bardziej szczegółowo

Matematyka, kl. 6. Konieczne umiejętności

Matematyka, kl. 6. Konieczne umiejętności Matematyka, kl. 6 Liczby naturalne i ułamki Program Matematyka z plusem Odczytywanie liczb na osi liczbowej. Zapisywanie potęg w postaci iloczynu i obliczanie ich wartości. Sprawność rachunkowa w pisemnych

Bardziej szczegółowo

Kryteria oceniania z matematyki w klasie pierwszej w roku szkolnym 2015/2016

Kryteria oceniania z matematyki w klasie pierwszej w roku szkolnym 2015/2016 Kryteria oceniania z matematyki w klasie pierwszej w roku szkolnym 2015/2016 1) Liczby - zamienia liczby dziesiętne skończone na ułamki zwykłe i liczby mieszane, - zapisuje ułamek zwykły w postaci ułamka

Bardziej szczegółowo

8. Analiza danych przestrzennych

8. Analiza danych przestrzennych 8. naliza danych przestrzennych Treścią niniejszego rozdziału będą analizy danych przestrzennych. naliza, ogólnie mówiąc, jest procesem poszukiwania (wydobywania) informacji ukrytej w zbiorze danych. Najprostszym

Bardziej szczegółowo

MySQL. Æwiczenia praktyczne

MySQL. Æwiczenia praktyczne IDZ DO PRZYK ADOWY ROZDZIA SPIS TRE CI KATALOG KSI EK KATALOG ONLINE ZAMÓW DRUKOWANY KATALOG MySQL. Æwiczenia praktyczne Autor: Marek Nowakowski ISBN: 83-7197-884-7 Format: B5, stron: 114 TWÓJ KOSZYK DODAJ

Bardziej szczegółowo

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2013/2014

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2013/2014 Politechnika Krakowska im. Tadeusza Kościuszki Karta przedmiotu Wydział Mechaniczny obowiązuje studentów rozpoczynających studia w roku akademickim 013/014 Kierunek studiów: Informatyka Stosowana Forma

Bardziej szczegółowo

Podstawy 3D Studio MAX

Podstawy 3D Studio MAX Podstawy 3D Studio MAX 7 grudnia 2001 roku 1 Charakterystyka programu 3D Studio MAX jest zintegrowanym środowiskiem modelowania i animacji obiektów trójwymiarowych. Doświadczonemu użytkownikowi pozwala

Bardziej szczegółowo

Osiągnięcia ponadprzedmiotowe

Osiągnięcia ponadprzedmiotowe W rezultacie kształcenia matematycznego uczeń potrafi: Osiągnięcia ponadprzedmiotowe Umiejętności konieczne i podstawowe czytać teksty w stylu matematycznym wykorzystywać słownictwo wprowadzane przy okazji

Bardziej szczegółowo

Wymagania edukacyjne z matematyki dla klasy II gimnazjum wg programu Matematyka z plusem

Wymagania edukacyjne z matematyki dla klasy II gimnazjum wg programu Matematyka z plusem Wymagania edukacyjne z matematyki dla klasy II gimnazjum wg programu Matematyka z plusem pojęcie potęgi o wykładniku naturalnym wzór na mnożenie i dzielenie potęg o tych samych podstawach wzór na potęgowanie

Bardziej szczegółowo

Informatyka I stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny)

Informatyka I stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny) Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. KARTA MODUŁU / KARTA PRZEDMIOTU Kod Nazwa Nazwa w języku angielskim Obowiązuje od roku akademickiego 2012/2013 Programy grafiki rastrowej,

Bardziej szczegółowo

Jak napisać program obliczający pola powierzchni różnych figur płaskich?

Jak napisać program obliczający pola powierzchni różnych figur płaskich? Część IX C++ Jak napisać program obliczający pola powierzchni różnych figur płaskich? Na początku, przed stworzeniem właściwego kodu programu zaprojektujemy naszą aplikację i stworzymy schemat blokowy

Bardziej szczegółowo

ROZWIĄZYWANIE UKŁADÓW RÓWNAŃ NIELINIOWYCH PRZY POMOCY DODATKU SOLVER PROGRAMU MICROSOFT EXCEL. sin x2 (1)

ROZWIĄZYWANIE UKŁADÓW RÓWNAŃ NIELINIOWYCH PRZY POMOCY DODATKU SOLVER PROGRAMU MICROSOFT EXCEL. sin x2 (1) ROZWIĄZYWANIE UKŁADÓW RÓWNAŃ NIELINIOWYCH PRZY POMOCY DODATKU SOLVER PROGRAMU MICROSOFT EXCEL 1. Problem Rozważmy układ dwóch równań z dwiema niewiadomymi (x 1, x 2 ): 1 x1 sin x2 x2 cos x1 (1) Nie jest

Bardziej szczegółowo

Wymagania edukacyjne klasa trzecia.

Wymagania edukacyjne klasa trzecia. TEMAT Wymagania edukacyjne klasa trzecia. WYMAGANIA SZCZEGÓŁOWE Z PODSTAWY PROGRAMOWEJ 1. LICZBY I WYRAŻENIA ALGEBRAICZNE Lekcja organizacyjna System dziesiątkowy System rzymski Liczby wymierne i niewymierne

Bardziej szczegółowo

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

Czym jest wykrywanie kolizji. Elementarne metody detekcji kolizji. Trochę praktyki: Jak przygotować Visual Studio 2010 do pracy z XNA pod Windows Czym jest wykrywanie kolizji. Elementarne metody detekcji kolizji. Trochę praktyki: Jak przygotować Visual Studio 2010 do pracy z XNA pod Windows Phone 7. Skąd i jakie paczki pobrać. Coś napiszemy :-)

Bardziej szczegółowo

A,B M! v V ; A + v = B, (1.3) AB = v. (1.4)

A,B M! v V ; A + v = B, (1.3) AB = v. (1.4) Rozdział 1 Prosta i płaszczyzna 1.1 Przestrzeń afiniczna Przestrzeń afiniczna to matematyczny model przestrzeni jednorodnej, bez wyróżnionego punktu. Można w niej przesuwać punkty równolegle do zadanego

Bardziej szczegółowo

PLANIMETRIA CZYLI GEOMETRIA PŁASZCZYZNY CZ. 1

PLANIMETRIA CZYLI GEOMETRIA PŁASZCZYZNY CZ. 1 PLANIMETRIA CZYLI GEOMETRIA PŁASZCZYZNY CZ. 1 Planimetria to dział geometrii, w którym przedmiotem badań są własności figur geometrycznych leżących na płaszczyźnie (patrz określenie płaszczyzny). Pojęcia

Bardziej szczegółowo

MATEMATYKA WOKÓŁ NAS Katalog wymagań programowych na poszczególne stopnie szkolne klasa 6

MATEMATYKA WOKÓŁ NAS Katalog wymagań programowych na poszczególne stopnie szkolne klasa 6 MATEMATYKA WOKÓŁ NAS Katalog wymagań programowych na poszczególne stopnie szkolne klasa 6 UCZEŃ Dział programu: Liczby naturalne Oblicza różnice czasu proste Wymienia jednostki opisujące prędkość, drogę,

Bardziej szczegółowo

Krzyżówka oraz hasła do krzyżówki. Kalina R., Przewodnik po matematyce dla klas VII-VIII, część IV, SENS, Poznań 1997, s.20-22.

Krzyżówka oraz hasła do krzyżówki. Kalina R., Przewodnik po matematyce dla klas VII-VIII, część IV, SENS, Poznań 1997, s.20-22. Omnibus matematyczny 1. Cele lekcji a) Wiadomości Uczeń: zna pojęcia matematyczne z zakresu szkoły podstawowej i gimnazjum. b) Umiejętności Uczeń: potrafi podać odpowiednie pojęcie matematyczne na podstawie

Bardziej szczegółowo

DZIAŁ I: LICZBY I DZIAŁANIA Ocena dostateczna. Ocena dobra. Ocena bardzo dobra (1+2) (1+2+3+4) Uczeń: (1+2+3) Uczeń: określone warunki

DZIAŁ I: LICZBY I DZIAŁANIA Ocena dostateczna. Ocena dobra. Ocena bardzo dobra (1+2) (1+2+3+4) Uczeń: (1+2+3) Uczeń: określone warunki MATEMATYKA KLASA I I PÓŁROCZE -wyróżnia liczby naturalne, całkowite, wymierne -zna kolejność wykonywania działań -rozumie poszerzenie osi liczbowej na liczby ujemne -porównuje liczby wymierne -zaznacza

Bardziej szczegółowo

WYMAGANIA EDUKACYJNE Z MATEMATYKI DLA KLASY I GIMNAZJUM

WYMAGANIA EDUKACYJNE Z MATEMATYKI DLA KLASY I GIMNAZJUM WYMAGANIA EDUKACYJNE Z MATEMATYKI DLA KLASY I GIMNAZJUM LICZBY I DZIAŁANIA zna pojęcie liczby naturalnej, całkowitej, wymiernej rozumie rozszerzenie osi liczbowej na liczby ujemne umie zaznaczać liczbę

Bardziej szczegółowo

SCENARIUSZ LEKCJI. TEMAT LEKCJI: Projektowanie rozwiązania prostych problemów w języku C++ obliczanie pola trójkąta

SCENARIUSZ LEKCJI. TEMAT LEKCJI: Projektowanie rozwiązania prostych problemów w języku C++ obliczanie pola trójkąta SCENARIUSZ LEKCJI OPRACOWANY W RAMACH PROJEKTU: INFORMATYKA MÓJ SPOSÓB NA POZNANIE I OPISANIE ŚWIATA. PROGRAM NAUCZANIA INFORMATYKI Z ELEMENTAMI PRZEDMIOTÓW MATEMATYCZNO-PRZYRODNICZYCH Autorzy scenariusza:

Bardziej szczegółowo

TWIERDZENIE TALESA W PRZESTRZENI

TWIERDZENIE TALESA W PRZESTRZENI TWIERDZENIE TALESA W PRZESTRZENI PRACA BADAWCZA autor Agnieszka Duszeńko Uniwersytet Wrocławski Wydział Matematyki i Informatyki 2005 Na płaszczyźnie: Najpopularniejsza, powszechnie znana wersja twierdzenia

Bardziej szczegółowo

Przedmiotowy system oceniania

Przedmiotowy system oceniania Przedmiotowy system oceniania gimnazjum - matematyka Opracowała mgr Katarzyna Kukuła 1 MATEMATYKA KRYTERIA OCEN Kryteria oceniania zostały określone przez podanie listy umiejętności, którymi uczeń musi

Bardziej szczegółowo

Zakres na egzaminy poprawkowe w r. szk. 2013/14 /nauczyciel M.Tatar/

Zakres na egzaminy poprawkowe w r. szk. 2013/14 /nauczyciel M.Tatar/ Zakres na egzaminy poprawkowe w r. szk. 2013/14 /nauczyciel M.Tatar/ MATEMATYKA Klasa III ZAKRES PODSTAWOWY Dział programu Temat Wymagania. Uczeń: 1. Miara łukowa kąta zna pojęcia: kąt skierowany, kąt

Bardziej szczegółowo

Excel w obliczeniach naukowych i inżynierskich. Wydanie II.

Excel w obliczeniach naukowych i inżynierskich. Wydanie II. Excel w obliczeniach naukowych i inżynierskich. Wydanie II. Autor: Maciej Gonet Sprawdź, jak Excel może pomóc Ci w skomplikowanych obliczeniach! Jak za pomocą arkusza rozwiązywać zaawansowane zadania matematyczne?

Bardziej szczegółowo

Wymagania edukacyjne niezbędne do uzyskania poszczególnych ocen śródrocznych i rocznych ocen klasyfikacyjnych z matematyki klasa 1 gimnazjum

Wymagania edukacyjne niezbędne do uzyskania poszczególnych ocen śródrocznych i rocznych ocen klasyfikacyjnych z matematyki klasa 1 gimnazjum edukacyjne niezbędne do uzyskania poszczególnych ocen śródrocznych i rocznych ocen klasyfikacyjnych z matematyki klasa 1 gimnazjum Semestr I Stopień Rozdział 1. Liczby Zamienia liczby dziesiętne na ułamki

Bardziej szczegółowo

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka 1. Kompilacja aplikacji konsolowych w środowisku programistycznym Microsoft Visual Basic. Odszukaj w menu startowym systemu

Bardziej szczegółowo

SCENARIUSZ LEKCJI. Streszczenie. Czas realizacji. Podstawa programowa

SCENARIUSZ LEKCJI. Streszczenie. Czas realizacji. Podstawa programowa SCENARIUSZ LEKCJI OPRACOWANY W RAMACH PROJEKTU: INFORMATYKA MÓJ SPOSÓB NA POZNANIE I OPISANIE ŚWIATA. PROGRAM NAUCZANIA INFORMATYKI Z ELEMENTAMI PRZEDMIOTÓW MATEMATYCZNO-PRZYRODNICZYCH Autorzy scenariusza:

Bardziej szczegółowo

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

Algorytm SAT. Marek Zając 2012. Zabrania się rozpowszechniania całości lub fragmentów niniejszego tekstu bez podania nazwiska jego autora. Marek Zając 2012 Zabrania się rozpowszechniania całości lub fragmentów niniejszego tekstu bez podania nazwiska jego autora. Spis treści 1. Wprowadzenie... 3 1.1 Czym jest SAT?... 3 1.2 Figury wypukłe...

Bardziej szczegółowo

Poniżej przedstawiony został podział wymagań na poszczególne oceny szkolne:

Poniżej przedstawiony został podział wymagań na poszczególne oceny szkolne: Prosto do matury klasa d Rok szkolny 014/015 WYMAGANIA EDUKACYJNE Wyróżnione zostały następujące wymagania programowe: konieczne (K), podstawowe (P), rozszerzające (R), dopełniające (D) i wykraczające

Bardziej szczegółowo

czyli Arkuszy / Układów na podstawie modelu

czyli Arkuszy / Układów na podstawie modelu Przygotowanie dokumentacji technicznej czyli Arkuszy / Układów na podstawie modelu Przygotowanie dokumentacji technicznej w AutoCAD 1 Wydruk rysunku z AutoCAD można przygotować na dwa sposoby 1. na zakładce

Bardziej szczegółowo

SCENARIUSZ LEKCJI. TEMAT LEKCJI: O czym mówią współczynniki funkcji liniowej? - wykorzystanie arkusza kalkulacyjnego na lekcjach matematyki

SCENARIUSZ LEKCJI. TEMAT LEKCJI: O czym mówią współczynniki funkcji liniowej? - wykorzystanie arkusza kalkulacyjnego na lekcjach matematyki SCENARIUSZ LEKCJI OPRACOWANY w RAMACH PROJEKTU: INFORMATYKA MÓJ SPOSÓB NA POZNANIE i OPISANIE ŚWIATA. PROGRAM NAUCZANIA INFORMATYKI Z ELEMENTAMI PRZEDMIOTÓW MATEMATYCZNO-PRZYRODNICZYCH Autorzy scenariusza:

Bardziej szczegółowo

Zapis liczb binarnych ze znakiem

Zapis liczb binarnych ze znakiem Zapis liczb binarnych ze znakiem W tej prezentacji: Zapis Znak-Moduł (ZM) Zapis uzupełnień do 1 (U1) Zapis uzupełnień do 2 (U2) Zapis Znak-Moduł (ZM) Koncepcyjnie zapis znak - moduł (w skrócie ZM - ang.

Bardziej szczegółowo

KRZYŻÓWKA 2. 11. Może być np. równoboczny lub rozwartokątny. Jego pole to a b HASŁO:

KRZYŻÓWKA 2. 11. Może być np. równoboczny lub rozwartokątny. Jego pole to a b HASŁO: KRZYŻÓWKA.Wyznaczają ją dwa punkty.. Jego pole to π r² 3. Jego pole to a a 4.Figura przestrzenna, której podstawą jest dowolny wielokąt, a ściany boczne są trójkątami o wspólnym wierzchołku. 5.Prosta mająca

Bardziej szczegółowo

Grafika komputerowa i wizualizacja

Grafika komputerowa i wizualizacja Grafika komputerowa i wizualizacja Radosław Mantiuk ( rmantiuk@wi.zut.edu.pl, p. 315 WI2) http://rmantiuk.zut.edu.pl Katedra Systemów Multimedialnych Wydział Informatyki, Zachodniopomorski Uniwersytet

Bardziej szczegółowo

Systemy wirtualnej rzeczywistości. Komponenty i serwisy

Systemy wirtualnej rzeczywistości. Komponenty i serwisy Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Systemy wirtualnej rzeczywistości Laboratorium Komponenty i serwisy Wstęp: W trzeciej części przedstawione zostaną podstawowe techniki

Bardziej szczegółowo

Sieciowe Technologie Mobilne. Laboratorium 4

Sieciowe Technologie Mobilne. Laboratorium 4 Sieciowe Technologie Mobilne Laboratorium 4 Tworzenie wieloplatformowych aplikacji mobilnych przy użyciu biblioteki PhoneGap. Łukasz Kamiński Laboratorium 4 Urozmaicone zostaną animacje potworów, aby odpowiadały

Bardziej szczegółowo

Wymagania edukacyjne z matematyki

Wymagania edukacyjne z matematyki Wymagania edukacyjne z matematyki Klasa I - program Matematyka z plusem" Dział: LICZBY I DZIAŁANIA Poziom konieczny - ocena dopuszczająca porównywać liczby wymierne, zaznaczać liczby wymierne na osi liczbowej,

Bardziej szczegółowo

WYMAGANIA NA POSZCZEGÓLNE STOPNIE KLASA I GIMNAZJUM

WYMAGANIA NA POSZCZEGÓLNE STOPNIE KLASA I GIMNAZJUM WYMAGANIA NA POSZCZEGÓLNE STOPNIE KLASA I GIMNAZJUM OCENA DOPUSZCZAJĄCA pojęcie liczby naturalnej, całkowitej, wymiernej, pojęcia: rozwinięcie dziesiętne skończone, nieskończone, okres, algorytm zaokrąglania

Bardziej szczegółowo

16. CO TU PASUJE CZYLI O DOSTRZEGANIU ZWIĄZKÓW, PODOBIEŃSTW I RÓŻNIC, CZ. II

16. CO TU PASUJE CZYLI O DOSTRZEGANIU ZWIĄZKÓW, PODOBIEŃSTW I RÓŻNIC, CZ. II 80 Mirosław Dąbrowski 16. CO TU PASUJE CZYLI O DOSTRZEGANIU ZWIĄZKÓW, PODOBIEŃSTW I RÓŻNIC, CZ. II Cele ogólne w szkole podstawowej: zdobycie przez uczniów umiejętności wykorzystywania posiadanych wiadomości

Bardziej szczegółowo

MATeMAtyka klasa II poziom rozszerzony

MATeMAtyka klasa II poziom rozszerzony MATeMAtyka klasa II poziom rozszerzony W klasie drugiej na poziomie rozszerzonym realizujemy materiał z klasy pierwszej tylko z poziomu rozszerzonego (na czerwono) oraz cały materiał z klasy drugiej. Rozkład

Bardziej szczegółowo

OKREŚLENIE WYMAGAŃ NA POSZCZEGÓLNE OCENY Z MATEMATYKI DLA UCZNIÓW GIMNAZJUM

OKREŚLENIE WYMAGAŃ NA POSZCZEGÓLNE OCENY Z MATEMATYKI DLA UCZNIÓW GIMNAZJUM OKREŚLENIE WYMAGAŃ NA POSZCZEGÓLNE OCENY Z MATEMATYKI DLA UCZNIÓW GIMNAZJUM (założone osiągnięcia ucznia w klasach I III gimnazjum zgodnie z programem nauczania Matematyka z plusem (DPN-5002-17/08) realizującym

Bardziej szczegółowo

Arytmetyka komputera. Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka. Opracował: Kamil Kowalski klasa III TI

Arytmetyka komputera. Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka. Opracował: Kamil Kowalski klasa III TI Arytmetyka komputera Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka Opracował: Kamil Kowalski klasa III TI Spis treści 1. Jednostki informacyjne 2. Systemy liczbowe 2.1. System

Bardziej szczegółowo

Egzamin gimnazjalny 2015 część matematyczna

Egzamin gimnazjalny 2015 część matematyczna Egzamin gimnazjalny 2015 część matematyczna imię i nazwisko Kalendarz gimnazjalisty Tydz. Dział start 22.09 29 26.09 Przygotowanie do pracy zapoznanie się z informacjami na temat egzaminu gimnazjalnego

Bardziej szczegółowo

Nieskończona jednowymiarowa studnia potencjału

Nieskończona jednowymiarowa studnia potencjału Nieskończona jednowymiarowa studnia potencjału Zagadnienie dane jest następująco: znaleźć funkcje własne i wartości własne operatora energii dla cząstki umieszczonej w nieskończonej studni potencjału,

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Kierunek: Inżynieria Biomedyczna Rodzaj przedmiotu: obowiązkowy moduł kierunkowy ogólny Rodzaj zajęć: wykład, laboratorium GRAFIKA KOMPUTEROWA Computer Graphics Forma studiów: studia

Bardziej szczegółowo

GIMNAZJUM WYMAGANIA NA POSZCZEGÓLNE OCENY Z MATEMATYKI

GIMNAZJUM WYMAGANIA NA POSZCZEGÓLNE OCENY Z MATEMATYKI GIMNAZJUM WYMAGANIA NA POSZCZEGÓLNE OCENY Z MATEMATYKI Klasa I Liczby i działania wskazać liczby naturalne, całkowite, wymierne zaznaczyć liczbę wymierną na osi liczbowej podać liczbę przeciwną do danej

Bardziej szczegółowo

V Konkurs Matematyczny Politechniki Białostockiej

V Konkurs Matematyczny Politechniki Białostockiej V Konkurs Matematyczny Politechniki iałostockiej Rozwiązania - klasy pierwsze 27 kwietnia 2013 r. 1. ane są cztery liczby dodatnie a b c d. Wykazać że przynajmniej jedna z liczb a + b + c d b + c + d a

Bardziej szczegółowo