Seminar: Programmierung von Grafikkarten (SS 2006)

Größe: px
Ab Seite anzeigen:

Download "Seminar: Programmierung von Grafikkarten (SS 2006)"

Transkript

1 Seminar: Programmierung von Grafikkarten (SS 2006) Shader Christian Niemand Johannes Spohr Universität Kassel, FB 16 Research Group Programming Languages / Methodologies Seminarleiterin: Prof. Dr. Claudia Leopold leopold@uni-kassel.de Seminarbetreuer: Dipl.-Inform. Björn Knafla bknafla@uni-kassel.de

2 INHALT 1 EINFÜHRUNG SHADERPROGRAMME PARAMETERDEFINITION PROGRAMMIERSPRACHEN VERTEX SHADER ANWENDUNGSGEBIETE EINSCHRÄNKUNGEN BEISPIELE Morphing Skinning PIXEL SHADER ANWENDUNGSGEBIETE EINSCHRÄNKUNGEN BEISPIELE Per Pixel Lighting Bump Mapping Post-Processing ZUSAMMENFASSUNG ANHANG QUELLENVERZEICHNIS ABBILDUNGSVERZEICHNIS...11 Seite 2 von 11

3 1 Einführung Der Einzug der hardwarebeschleunigten Grafikdarstellung in den PC- Konsumentenbereich ermöglicht anspruchsvolle 3D-Anwendungen und Spiele in Echtzeit auf preisgünstigen Systemen. Ihre Programmierung erfolgt mithilfe von hardwarenahen 3D APIs für die die Grafikkartenhersteller Treiber bereitstellen. Zwei solcher APIs haben sich herstellerübergreifend durchgesetzt: das plattformunabhängige OpenGL und Microsofts Windowsschnittstelle Direct3D. Die Interfaces beider Bibliotheken spiegeln die Pipelines gängiger Grafiksysteme wieder. Der Programmierer kann Grafikprimitive auf den Computerbildschirm bringen, indem er diese am Ausgangspunkt der Pipeline einspielt und durch diverse zusätzliche Datenstrukturen oder Schalter ihre Darstellungsweise beeinflusst. Der Kern der Grafikkarte, die GPU (Graphics Processing Unit), übernimmt dabei die Transformation der 3D-Punkte (Vertices; singulär: Vertex) auf den 2D-Bildschirm des Benutzers, die Berechnung von Farbe und Sichtbarkeit und die anschließende Umwandlung in Pixel (rechteckige Bildelemente im Frame Buffer, dem Zielspeicher für das fertige Bild [GLSL, Kapitel 1.4]), die Rasterisierung. Dieser Prozess des Renderns war lange Zeit nur über die State Machine (die Menge aller Zustände) der Grafik-API beeinflussbar. Ein Teil eines solchen Zustands (auch Render State) kann ein Ein/Aus-Bit sein (z.b. ob Blending aktiviert ist oder nicht), aber auch eine Fließkommazahl oder ein Vektor (z.b. Farbe der zu zeichnenden Primitive). Die Verarbeitung der Oberflächeneigenschaften wie z.b. Farbe, Form oder Reflektivität und das Berechnen von Lichteinflüssen mit dem Resultat einer möglichst realitätsnahen Abbildung entsprechender Objekte wird als Shading bezeichnet. Ein sog. Shader beschreibt die Darstellung eines benutzerdefinierten Materials. Shader sind keine eigenständigen Programme sondern können nur innerhalb einer Grafikpipeline ausgeführt, also auf Primitive angewendet werden. Texture Memory (Geometry) Vertex Processor Primitive Assembly Clip Project Viewport Cull (Geometry) Fragment Processor Per- Fragment Operations Frame Buffer Operations Rasterize App. Memory (Pixel) (Pixel) Pixel (Un)Pack Transfer Frame Buffer Abbildung 1: Programmable Pipeline Fest verdrahtete Grafikpipelines (Fixed Function Pipelines) ermöglichen es dem Benutzer lediglich, die Shader der GPU durch Setzen von Zuständen zu Seite 3 von 11

4 konfigurieren, während programmierbare GPUs es erlauben, Shader selbst zu entwickeln und diese in die Pipeline einzufügen (Programmable Pipelines). Diese sog. Shader-Programme ersetzen in aktuellen GPU-Architekturen (Stand Mitte 2006) jeweils nur einen Teil der Pipeline (siehe Abbildung 1). Der für die Verarbeitung von Vertices zuständige Vertex Processor wird durch spezielle Vertex Shader programmiert. Im Fragment Processor werden die entstandenen Pixel berechnet; ein Vorgang der durch Pixel Shader programmierbar ist. In dieser Architektur ist der Rest der Pipeline immer noch fest, also nicht programmierbar, und wird weiterhin durch Render States gesteuert. [GLSL, Kapitel 1] 1.1 Shaderprogramme Programme, die einen auf der GPU ausführbaren Shader implementieren, werden als Shader-Programme bezeichnet. Im Unterschied zu regulären, auf der CPU ausgeführten Programmen sind sie in ihrem Umfang, den Ein- /Ausgabemöglichkeiten und der Fallunterscheidung (Branching) in If- Abfragen und Schleifen stark eingeschränkt. Ihr Einsatz in programmierbaren GPUs wird im Folgenden anhand von Vertex- und Pixel-Shadern beschrieben. Dabei wird der Einfachheit halber nur auf die Darstellung von Dreiecken eingegangen. Zwar sind in den APIs auch Punkte und Linien als Grundprimitive vorgesehen, in der Praxis wird deren Abbildung aber durch degenerierte Dreiecke mit zwei bzw. drei identischen Eckpunkten erzeugt. 1.2 Parameterdefinition Zusätzlich zu den konfigurierbaren, fest vorgegebenen Render States der Grafik-API, und damit der GPU, werden in der Shader-Programmierung Parameter verwendet, die an die Shader-Programme übergeben werden. Allein das Programm entscheidet über ihre Verwendung, wovon Definitionsweise und Datentyp abhängig sind. Gebräuchliche Typen sind vor allem 32bit Fließkommazahlen (Typ float), die einzeln oder in Feldern von bis zu 16 Elementen übergeben werden können. Meistens werden folgende Kardinalitäten benutzt: 1 (Skalar) 3 (3D-Vektor) 4 (4D-Vektor oder Quaternion) 9 (3x3 Matrix) 12 (4x3 Matrix) 16 (4x4 Matrix) Ebenso vorgesehen sind ganze Zahlen (Typ int), ihre Verwendung ist jedoch eher selten. Sie werden implizit für die Indizierung von Texturen (Bildern, mit denen Dreiecke überzogen werden) benutzt. Parameter werden sowohl im Shader-Programm selbst als auch in der Anwendung definiert, die die Daten erzeugt. Dies ist für die Kommunikation zwischen Software auf CPU- und GPU-Seite unabdingbar, führt aber zu gewissen Abhängigkeiten, die es oft erschweren, Shader ohne Änderungen in andere Anwendungen zu übernehmen. Auf die Vertex- bzw. Pixel-Shader-spezifischen Parameterarten wird in den jeweiligen Kapiteln 2 und 3 näher eingegangen. Seite 4 von 11

5 1.3 Programmiersprachen Anfangs wurden API-spezifische Assemblersprachen verwendet, um Shader- Programme zu schreiben. Diese haben den Vorteil, dass sie direkt auf die internen Instruktionen der GPU übersetzt werden können, erschweren allerdings den Einstieg in die Shader-Programmierung. Der typische Befehlssatz umfasst mehrere Operationen der linearen Algebra, die in der Grafikprogrammierung häufig Verwendung finden, unter anderem das Skalarprodukt. Die meisten Befehle sind parallel ausgelegt, operieren also auf mehreren Werten gleichzeitig (SIMD, Single Instruction Multiple Data) um die Performance zu steigern. Mittlerweile stehen mehrere Hochsprachen für die Entwicklung von Shader- Programmen zur Auswahl, die sich alle relativ ähnlich sind. Sie basieren auf der Sprache C und werden von einem in die Grafik-API integrierten Compiler in die jeweilige Assemblersprache übersetzt und dann wiederum an den Shader-Assembler weitergereicht. Es handelt sich dabei um: GLSL (OpenGL Shading Language, sprich dschi-el-släng ): OpenGLspezifischer C-Dialekt [GLSL] Cg (C for Graphics): Vom Grafikkartenhersteller NVidia entwickelter C- Dialekt, der als Frontend sowohl für OpenGL als auch Direct3D einsetzbar ist und auch nicht auf Hardware von NVidia beschränkt ist [Cg] HLSL (High Level Shading Language): Microsofts Implementierung von Cg, die in Direct3D enthalten ist [HLSL] 2 Vertex Shader Vertex-Shader-Programme werden auf jeden Vertex eines darzustellenden Dreiecks angewendet, d.h. sie arbeiten lediglich mit der Oberflächenstruktur eines Objekts. Vertex Shader sind prinzipiell auch durch normale Software emulierbar. Es gibt unterschiedliche Versionen der Shader, man spricht auch von Shader-Modellen. Die zur Zeit aktuelle Version ist das Shader-Modell 3.0. Bei höheren Versionen des Shader-Modells wird auch bei Vertex Shadern eine geeignete Grafikkarte benötigt. Emulierte Vertex Shader sind verständlicherweise langsamer als solche, die von der Hardware unterstützt werden. Die meisten Grafikkarten besitzen dazu mehrere Einheiten, welche die Vertices parallel bearbeiten können. Eingabeparameter eines Vertex Shaders können auf verschiedene Weise definiert werden [GLSL, Kapitel 7]: Uniform: Parameter sind für jede Anwendung eines Vertex Shaders auf einen Vertex innerhalb derselben Primitivenliste konstant Vertex-Attribut: Parameter die für jeden Vertex, der den Shader durchläuft, unterschiedlich sein können. Zusätzlich zu den Koordinaten des Vertex können bspw. Normalvektor, Texturkoordinaten etc. angegeben werden. Die Informationen, die einen Vertex beschreiben, können je nach Verwendungszweck unterschiedlich sein. Die Kombination bestimmter Informationen eines Vertex nennt man das Vertex-Format. Textur: (Ab Shader-Modell 3.0) Sonderfall eines Parameters, auf den im Vertex Shader über einen Sampler (Textureinheit der Grafikkarte, die Farbwerte aus Texturdaten ermittelt) zugegriffen werden kann Seite 5 von 11

6 Des Weiteren stellen Sprachen zur Shader-Programmierung sowohl eingebaute Variablen als auch eingebaute Funktionen zur Verfügung. In GLSL beginnen diese mit dem Präfix gl_. Über die eingebauten Variablen kann so schnell und einfach direkt mit OpenGL kommuniziert werden, um beispielsweise an die aktuelle Model-View- oder Projektionsmatrix zu gelangen [Gd3DG]. Die eingebauten Funktionen eignen sich, um etwa trigonometrische Funktionen wie z.b. sin, cos usw., geometrische Funktionen wie dot, length, distance usw. oder allgemein mathematische Funktionen wie z.b. sqrt, pow, min, max, usw. innerhalb eines Shader-Programms zu berechnen. 2.1 Anwendungsgebiete In den meisten Fällen sind die Vertex Shader eine Vorstufe der Pixel Shader (siehe Kapitel 3). Sie werden relativ selten alleine eingesetzt. Der Vertex Shader wird in GLSL vom sog. Vertex Processor umgesetzt. Er führt folgende Aufgaben aus: - Vertex Transformation - Normalen Transformation und Normalisierung - Texturkoordinaten Generierung - Texturkoordinaten Transformation - Beleuchtung (Berechnung der sichtbaren Farbe des Vertex abhängig von der Materialfarbe (bspw. grünes Plastik) und der beleuchtenden Lichtquelle [Cg, Kapitel 5]) Des Weiteren sind neue Vertex Shader (3.0) in der Lage, Informationen aus Texturen auszulesen. Dadurch sind sie in der Lage Effekte wie Displacement Mapping (Änderung der Vertex-Position entsprechend der in einer Textur abgespeicherten Höheninformation) durchzuführen. 2.2 Einschränkungen Vertex Shader können keine Vertices erzeugen, nur manipulieren. 2.3 Beispiele In den folgenden Beispielen werden Anwendungen betrachtet, in denen der jeweilige Vertex Shader eine sehr spezielle Aufgabe übernimmt. Im Normalfall ist der Vertex Shader dafür zuständig, die Vertices relativ zum Betrachter zu transformieren und zu beleuchten. In folgenden Beispielen nimmt er aktiv Einfluss auf die Objektstruktur der Objekte Morphing Beim Morphing wird, wie in Abbildung 2 gezeigt wird, die Form eines Objekts in eine andere überführt. Man formt also beispielsweise einen Würfel in eine Kugel um. Diesen Effekt kennt man evtl. aus dem Windows Bildschirmschoner Flower Box. Seite 6 von 11

7 Abbildung 2: Umformung eines Körpers in einen anderen (Morphing) [P2] Skinning Dieser in Abbildung 3 dargestellte Effekt wird im Bereich der Charakteranimation eingesetzt. Wie bei einem Menschen befinden sich bei einem Modell Knochen (sog. Bones) unterhalb der Haut (im Falle des 3D Objekts unterhalb des Meshes, d.h. der durch die Vertices beschriebenen Oberflächenstruktur). Werden nun diese Bones bewegt, so beeinflussen sie das darüber liegende Mesh (Objektstruktur). Wird beispielsweise der Armknochen bewegt, muss der Vertex Shader dafür sorgen, dass sich lediglich die Vertices des Arms mitbewegen und nicht die des Fußes. Um zwischen den einzelnen Bones einen fließenden Übergang zu erlangen, werden die Einflüsse der Bones auf die entsprechenden Vertices gewichtet. So können auf einen Vertex mehrere Bones Einfluss nehmen. Abbildung 3: Bonestruktur mit umschließendem Mesh [P3] 3 Pixel Shader Die Aufgabe eines Pixel-Shader-Programms ist es, anhand seiner Eingaben (Parameter und Texturdaten) über die Farbe eines Pixels im Frame Buffer zu entscheiden. In diesem Zusammenhang wird ein Pixel auch als Fragment bezeichnet, was neben der Farbe zusätzliche Werte wie Tiefe oder Bildschirmkoordinaten beinhaltet. Man spricht daher auch vom Fragment Shader. Beim Rasterisieren von Grafikprimitiven werden die Ausgaben des Vertex Shaders genutzt, um eine 2D-Repräsentation der Ausgangsdaten auf dem Bildschirm zu erzeugen. Dieser Vorgang beinhaltet die Projektion der transformierten Vertex-Koordinaten in den sog. Screen Space (das Seite 7 von 11

8 Bildschirm-Koordinatensystem) durch die Anwendung der Projektionsmatrix. Anschließend wird auf jeden Pixel, der innerhalb der Fläche eines auf diese Weise projizierten Dreiecks liegt, der Pixel Shader angewendet. Eingabeparameter eines Pixel Shaders können auf verschiedene Weise definiert werden [GLSL, Kapitel 7]: Uniform: Parameter sind für jede Anwendung eines Pixel Shaders innerhalb einer Primitivenliste konstant Varying: Parameter die an den Pixel Shader übergeben werden, nachdem sie vom Vertex Shader generiert und über die Fläche des Dreiecks hinweg interpoliert wurden (Abb. 4) Textur: Sonderfall eines Parameters, auf den im Pixel Shader über einen Sampler zugegriffen werden kann (ab Shader-Modell 3.0 auch im Vertex Shader) 3.1 Anwendungsgebiete Pixel Shader können die Performance steigern, indem großflächige Dreiecke mit komplexen Oberflächenstrukturen versehen werden, die das Vorhandensein hochaufgelöster Geometrie vortäuschen. Im Gegensatz zur einfachen Texturierung können dabei zusätzlich Lichtberechnungen für jeden Pixel durchgeführt werden (Per Pixel Lighting). In der herkömmlichen Pipeline wird lediglich für jeden Vertex eine lokale Beleuchtung durchgeführt, mit anschließender linearer Interpolation der ermittelten Farbe über die Dreiecksfläche. Dies verhindert die Darstellung von Maxima der Lichtreflexion innerhalb des Dreiecks und erzeugt stellenweise sichtbare Kanten an den Rändern. Durch die Verlagerung der Beleuchtung in den Pixel Shader wird dieses Problem vermieden, was die optische Qualität verbessert. [Cg, Kapitel 5.3] Ein weiter Anwendungsfall ist die Generierung sog. prozeduraler Texturen, wobei statt statischer Bilder direkt im Shader erzeugte Oberflächenmuster verwendet werden. [GLSL, Kapitel 11] 3.2 Einschränkungen Der Pixel Shader hat nicht die Möglichkeit, aus dem Frame Buffer zu lesen. Er kann also weder die Farbe des aktuellen noch anderer Pixel im Puffer lesen. Diese Einschränkung ist durch die parallele Auslegung der Pixelpipelines begründet. Einzig die Alpha-Komponente des zu schreibenden Pixels kann auf einen Wert unterhalb 1.0 gesetzt werden, so dass der vorige Pixel durchscheint, falls das sog. Alpha Blending aktiviert ist. Um einen Pixel Shader auf ein gerendertes Bild anzuwenden, muss dieses in eine Textur hineingezeichnet werden, aus der der Shader wiederum lesen kann. 3.3 Beispiele Es folgen einige Beispielanwendungen für Pixel Shader, die einen besseren Eindruck von deren Arbeitsweise vermitteln sollen Per Pixel Lighting Abbildung 4: Interpolation von Farbe über Dreiecksfläche [P1] Jeden Pixel einzeln zu beleuchten ermöglicht eine realistische Darstellung von Beleuchtungsmodellen wie Phong Shading [Phong75], Blinn Shading Seite 8 von 11

9 [Blinn77] oder Bump Mapping [Blinn78]. Der folgende Pixel-Shader-Code implementiert ein vereinfachtes Phong-Modell. // Uniform-Parameter aus Anwendung uniform vec4 ambient; uniform vec4 diffuse; uniform vec4 specular; // Varying-Parameter die im Vertex Shader berechnet wurden varying vec3 normal; varying vec3 lightvector; varying vec3 viewvector; // main-funktion: Einstiegspunkt des Shader-Codes void main(void) { // Berechnung des Reflektionsvektors anhand der Normalen vec3 reflect = normalize(2.0 * dot(normal, lightvector) * normal - lightvector); } // Diffuse Beleuchtungskomponente (Helligkeit) vec4 diffusecolor = diffuse * max(0.0, dot(normal, lightvector)); // Spekulaere Beleuchtungskomponente (Lichtreflektion) vec4 specularcolor = specular * pow(max(0.0, dot(reflect, viewvector)), 10.0); // Ausgabe: Resultat wird in vorgegebene Variable geschrieben gl_fragcolor = ambient + diffusecolor + specularcolor; Der zugehörige Vertex Shader muss die 3 Varying-Parameter normal (Normalenvektor), lightvector (Vektor vom Vertex zur Lichtquelle) und viewvector (Vektor vom Vertex zum Betrachtungspunkt) im World Space berechnen. Die Uniforms ambient, diffuse und specular sind die Koeffizienten des Beleuchtungsmodells [Phong75] und müssen von der Anwendung spezifiziert werden. Die Farbe des resultierenden Pixels wird in der letzten Zeile in die Variable gl_fragcolor geschrieben, die in GLSL fest eingebaut ist [GLSL, Kapitel 4.2.4] Bump Mapping Bump Mapping (Abbildung 5) entspricht dem oben beschriebenen Per Pixel Lighting, mit dem Unterschied, dass nicht Vertex- Normalen vom Vertex Shader über die Dreiecksfläche interpoliert werden, sondern Normalen für jeden Pixel aus einer speziell vorbereiteten Textur (der sog. Bump Map oder Normal Map) gelesen werden. Dieser Vektor muss anschließend in den World Space transformiert werden, dem absoluten Koordinatensystem, in dem Objekte sowie Lichtquellen und Abbildung 5: Bump-Mapping [P4] Betrachterposition relativ zu einem globalen Ursprung positioniert sind. Dies geschieht über eine im Vertex Shader berechnete Rotationsmatrix, die entsprechend interpoliert an den Pixel Shader weitergereicht wird. Dazu müssen für jeden Vertex die sog. Tangenten- und Binormal-Vektoren im Object Space (dem lokalen Koordinatensystem des Objekts) vorberechnet und als Vertex-Attribute gespeichert werden. [GLSL, Kapitel 11.4] Seite 9 von 11

10 3.3.3 Post-Processing Nachbearbeitung von Bildern kennt man aus Bildverarbeitungsprogrammen oder dem Videoschnitt. Im Pixel Shader können viele dort gebräuchliche Effekte in Echtzeit nachträglich auf das gerenderte Bild angewendet werden. Voraussetzung dafür ist, dass der zu manipulierende Bildbereich zuvor in eine Textur gerendert wurde, da der Inhalt des Framebuffers für den Shader nicht zur Verfügung steht. Der gewünschte Effekt entsteht, indem ein bildschirmfüllendes Rechteck aus zwei Dreiecken mit dieser Textur und dem entsprechenden Pixel Shader gezeichnet wird. Dabei wird entweder in das existierende Bild hineingemischt oder die Textur selbst wird wiederum als Ziel verwendet (Feedback). Besonders populäre Post-Processing-Effekte: Motion Blur: Bewegliche Objekte werden in eine Textur gerendert und diese während eines späteren Frames über das existierende Bild gezeichnet, so dass diese Objekte leicht versetzt miteinander verschmelzen und unscharf wirken. Dies simuliert die Trägheit des Auges bzw. einer Kameralinse, die schnelle Bewegungen als Schlieren abbilden. Glow: Hell leuchtende Objekte werden in eine Textur gerendert. Diese wird mittels Pixel Shader durch einen Gauß-Filter aufgeweicht und auf das existierende Bild aufaddiert. Die Objekte scheinen zu strahlen und erhalten eine Art weiche Aura. 4 Zusammenfassung In der Fixed Function Pipeline sind alle Einheiten statisch und der Programmierer kann lediglich über die verwendete Grafik-API das Aussehen von 3D Modellen bestimmen. Um ihm mehr Freiheit und Flexibilität zu geben, hat man programmierbare Einheiten in die Pipeline eingeführt, die Vertexund Pixel- bzw. Fragment-Shader. Hierbei handelt es sich um kleine Programme, die direkt auf der Grafikkarte ablaufen. Der Vertex Shader wird auf jeden Vertex einer eingehenden Oberflächenstruktur (Mesh) angewendet. Jeder Vertex wird durch ein Vertex- Format beschrieben. Zusätzliche Informationen können dem Shader über Attribute (Information kann für jeden Vertex unterschiedlich sein) und Uniforms (für alle Vertices bzw. Pixel gleich) übergeben werden. Da der Vertex Shader neben der Beleuchtung der Vertices auch für die Transformation verantwortlich ist, können mit ihm Effekte wie bspw. Morphing und Skinning durchgeführt werden. Der Pixel Shader beleuchtet jeden Pixel einzeln und mischt die Beleuchtung mit den Texturfarben. Dazu verwendet er interpolierte Daten, die vom Vertex Shader vorberechnet wurden, sog. Varying-Variablen. Dadurch, dass der Pixel Shader jeden Pixel einzeln beleuchtet, kann er dem Betrachter durch sog. Normal Maps differenzierte Oberflächenstrukturen vorgaukeln obwohl das Objekt keine derartige Geometrie besitzt. Durch den Einsatz programmierbarer Shader ist es möglich, das Potential moderner Grafikkarten besser auszunutzen, was sowohl die Performance als auch die optische Qualität betrifft. Seite 10 von 11

11 5 Anhang 5.1 Quellenverzeichnis [GLSL] Rost, Randi J.: OpenGL Shading Language, Addison Wesley 2004 [Cg] Fernando, Randima; Kilgard, Mark J.: The Cg Tutorial, Addison Wesley 2003 [HLSL] Direct3D 9 Reference, HLSL Shaders: library/default.asp?url=/library/en-us/directx9_c/hlsl_shaders.asp [Phong75] Phong, Bui Tuong: Illumination for Computer Generated Pictures, Communications of the ACM, Vol. 18, Nr. 6, S , Juni 1975 [Blinn77] Blinn, James: Models of Light Reflection for Computer Synthesized Pictures, SIGGRAPH '77 Proceedings, S , Juli 1977 [Blinn78] Blinn, James: Simulation of Wrinkled Surfaces, SIGGRAPH '78 Proceedings, S , August 1978 [Gd3DG] Boßdorf, Dominik; Schulze, Christian; Sebastiao, Marco: Grundlagen der 3D Grafik, Seminar "Programmierung von Grafikkarten", Research Group Programming Languages / Methodologies, Uni Kassel, 8. Mai Abbildungsverzeichnis [P1] [P2] [P3] [P4] Gerendert mit ATI RenderMonkey Seite 11 von 11

Seminar Game Development Game Computer Graphics. Einleitung

Seminar Game Development Game Computer Graphics. Einleitung Einleitung Gliederung OpenGL Realismus Material Beleuchtung Schatten Echtzeit Daten verringern Grafik Hardware Beispiel CryEngine 2 Kristian Keßler OpenGL Was ist OpenGL? Grafik API plattform- und programmiersprachenunabhängig

Mehr

Computer Graphics Shader

Computer Graphics Shader Computer Graphics Shader Sven Janusch Inhalt Fixed Function Pipeline Programmable Pipeline Implementierung Applikation Beispiel Sven Janusch 2 Fixed Function Pipeline T&L Pipeline (Transformation and Lighting)

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

OpenGL. (Open Graphic Library)

OpenGL. (Open Graphic Library) OpenGL (Open Graphic Library) Agenda Was ist OpenGL eigentlich? Geschichte Vor- und Nachteile Arbeitsweise glscene OpenGL per Hand Debugging Trend Was ist OpenGL eigentlich? OpenGL ist eine Spezifikation

Mehr

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders

Mehr

Raytracing. Schlussbericht. Jonas Lauener 1995, Áedán Christie 1997 Melvin Ott 1997, Timon Stampfli 1997

Raytracing. Schlussbericht. Jonas Lauener 1995, Áedán Christie 1997 Melvin Ott 1997, Timon Stampfli 1997 Raytracing Schlussbericht Jonas Lauener 1995, Áedán Christie 1997 Melvin Ott 1997, Timon Stampfli 1997 bei Betreuer Marco Manzi, Institut für Informatik und angewandte Mathematik Inhalt Fragestellung...

Mehr

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv Roboter programmieren mit NXC für Lego Mindstorms NXT 1. Auflage Roboter programmieren mit NXC für Lego Mindstorms NXT schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv Verlag

Mehr

Plotten von Linien ( nach Jack Bresenham, 1962 )

Plotten von Linien ( nach Jack Bresenham, 1962 ) Plotten von Linien ( nach Jack Bresenham, 1962 ) Ac Eine auf dem Bildschirm darzustellende Linie sieht treppenförmig aus, weil der Computer Linien aus einzelnen (meist quadratischen) Bildpunkten, Pixels

Mehr

Zeichen bei Zahlen entschlüsseln

Zeichen bei Zahlen entschlüsseln Zeichen bei Zahlen entschlüsseln In diesem Kapitel... Verwendung des Zahlenstrahls Absolut richtige Bestimmung von absoluten Werten Operationen bei Zahlen mit Vorzeichen: Addieren, Subtrahieren, Multiplizieren

Mehr

computer graphics & visualization

computer graphics & visualization Entwicklung und Implementierung echtzeitfähiger Verfahren zur Darstellung von reflektierenden Objekten auf GPUs echtzeitfähiger Verfahren zur Darstellung von reflektierenden Objekten auf GPUs Motivation

Mehr

Jeopardy and andere Quizformate im bilingualen Sachfachunterricht Tipps zur Erstellung mit Powerpoint

Jeopardy and andere Quizformate im bilingualen Sachfachunterricht Tipps zur Erstellung mit Powerpoint Bilingual konkret Jeopardy and andere Quizformate im bilingualen Sachfachunterricht Tipps zur Erstellung mit Powerpoint Moderner Unterricht ist ohne die Unterstützung durch Computer und das Internet fast

Mehr

Zwischenvortrag zum Entwicklungsstand der Bachelor-Arbeit. Direct 3D-Output für ein Rendering Framework

Zwischenvortrag zum Entwicklungsstand der Bachelor-Arbeit. Direct 3D-Output für ein Rendering Framework Zwischenvortrag zum Entwicklungsstand der Bachelor-Arbeit Direct 3D-Output für ein Rendering Framework von Benjamin Betting unter der Betreuung von Daniel Schiffner 1 Gliederung Kapitel I und II: Motivation,Einführung,Grundlagen

Mehr

Softwareprojekt Spieleentwicklung

Softwareprojekt Spieleentwicklung Softwareprojekt Spieleentwicklung Prototyp I (2D) Prototyp II (3D) Softwareprojekt 12.04. 19.04. 26.04. 03.05. 31.05. Meilenstein I 28.06. Meilenstein II Prof. Holger Theisel, Tobias Günther, OvGU Magdeburg

Mehr

Im Original veränderbare Word-Dateien

Im Original veränderbare Word-Dateien Computergrafik Bilder, Grafiken, Zeichnungen etc., die mithilfe von Computern hergestellt oder bearbeitet werden, bezeichnet man allgemein als Computergrafiken. Früher wurde streng zwischen Computergrafik

Mehr

Der Einsatz von HDRIs in LightWave 7

Der Einsatz von HDRIs in LightWave 7 Seite 1 DOSCH DESIGN TUTORIAL Der Einsatz von HDRIs in LightWave 7 Eine Schritt-für-Schritt-Anleitung LightWave kann ab der Version 6.5 HDRIs (High Dynamic Range Images) als Beleuchtung und Hintergrund

Mehr

Wasserzeichen mit Paint-Shop-Pro 9 (geht auch mit den anderen Versionen. Allerdings könnten die Bezeichnungen und Ansichten etwas anders sein)

Wasserzeichen mit Paint-Shop-Pro 9 (geht auch mit den anderen Versionen. Allerdings könnten die Bezeichnungen und Ansichten etwas anders sein) Wasserzeichen mit Paint-Shop-Pro 9 (geht auch mit den anderen Versionen. Allerdings könnten die Bezeichnungen und Ansichten etwas anders sein) Öffne ein neues Bild ca. 200 x 200, weiß (Datei - neu) Aktiviere

Mehr

OECD Programme for International Student Assessment PISA 2000. Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland

OECD Programme for International Student Assessment PISA 2000. Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland OECD Programme for International Student Assessment Deutschland PISA 2000 Lösungen der Beispielaufgaben aus dem Mathematiktest Beispielaufgaben PISA-Hauptstudie 2000 Seite 3 UNIT ÄPFEL Beispielaufgaben

Mehr

Advanced Rendering Interior Szene

Advanced Rendering Interior Szene Advanced Rendering Interior Szene in Cinema 4D 11-11.5 Als erstes, sollten Sie ihre Szene in Cinema 4D öffnen. vergewissern sie sich, ob alle Licht quellen die evtl. mit importiert wurden, aus der Szene

Mehr

Zahlensysteme: Oktal- und Hexadezimalsystem

Zahlensysteme: Oktal- und Hexadezimalsystem 20 Brückenkurs Die gebräuchlichste Bitfolge umfasst 8 Bits, sie deckt also 2 8 =256 Möglichkeiten ab, und wird ein Byte genannt. Zwei Bytes, also 16 Bits, bilden ein Wort, und 4 Bytes, also 32 Bits, formen

Mehr

Fotos in Tobii Communicator verwenden

Fotos in Tobii Communicator verwenden Fotos in Tobii Communicator verwenden Hier wird beschrieben wie man Fotos in Tobii Communicator verwenden kann und was man zur Nutzung beachten sollte. Fotonutzung in Tobii Communicator In einigen Fällen

Mehr

Lineare Gleichungssysteme

Lineare Gleichungssysteme Brückenkurs Mathematik TU Dresden 2015 Lineare Gleichungssysteme Schwerpunkte: Modellbildung geometrische Interpretation Lösungsmethoden Prof. Dr. F. Schuricht TU Dresden, Fachbereich Mathematik auf der

Mehr

10.1 Auflösung, Drucken und Scannen

10.1 Auflösung, Drucken und Scannen Um einige technische Erläuterungen kommen wir auch in diesem Buch nicht herum. Für Ihre Bildergebnisse sind diese technischen Zusammenhänge sehr wichtig, nehmen Sie sich also etwas Zeit und lesen Sie dieses

Mehr

ACHTUNG: Es können gpx-dateien und mit dem GP7 aufgezeichnete trc-dateien umgewandelt werden.

ACHTUNG: Es können gpx-dateien und mit dem GP7 aufgezeichnete trc-dateien umgewandelt werden. Track in Route umwandeln ACHTUNG: Ein Track kann nur dann in eine Route umgewandelt werden, wenn der Track auf Wegen gefahren wurde. Ein Querfeldein-Track kann nicht in eine Route umgewandelt werden, da

Mehr

Grundlagen von Python

Grundlagen von Python Einführung in Python Grundlagen von Python Felix Döring, Felix Wittwer November 17, 2015 Scriptcharakter Programmierparadigmen Imperatives Programmieren Das Scoping Problem Objektorientiertes Programmieren

Mehr

Austausch- bzw. Übergangsprozesse und Gleichgewichtsverteilungen

Austausch- bzw. Übergangsprozesse und Gleichgewichtsverteilungen Austausch- bzw. Übergangsrozesse und Gleichgewichtsverteilungen Wir betrachten ein System mit verschiedenen Zuständen, zwischen denen ein Austausch stattfinden kann. Etwa soziale Schichten in einer Gesellschaft:

Mehr

AZK 1- Freistil. Der Dialog "Arbeitszeitkonten" Grundsätzliches zum Dialog "Arbeitszeitkonten"

AZK 1- Freistil. Der Dialog Arbeitszeitkonten Grundsätzliches zum Dialog Arbeitszeitkonten AZK 1- Freistil Nur bei Bedarf werden dafür gekennzeichnete Lohnbestandteile (Stundenzahl und Stundensatz) zwischen dem aktuellen Bruttolohnjournal und dem AZK ausgetauscht. Das Ansparen und das Auszahlen

Mehr

Microsoft Access 2013 Navigationsformular (Musterlösung)

Microsoft Access 2013 Navigationsformular (Musterlösung) Hochschulrechenzentrum Justus-Liebig-Universität Gießen Microsoft Access 2013 Navigationsformular (Musterlösung) Musterlösung zum Navigationsformular (Access 2013) Seite 1 von 5 Inhaltsverzeichnis Vorbemerkung...

Mehr

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes. Binäre Bäume Definition: Ein binärer Baum T besteht aus einer Menge von Knoten, die durch eine Vater-Kind-Beziehung wie folgt strukturiert ist: 1. Es gibt genau einen hervorgehobenen Knoten r T, die Wurzel

Mehr

1. Einschränkung für Mac-User ohne Office 365. 2. Dokumente hochladen, teilen und bearbeiten

1. Einschränkung für Mac-User ohne Office 365. 2. Dokumente hochladen, teilen und bearbeiten 1. Einschränkung für Mac-User ohne Office 365 Mac-User ohne Office 365 müssen die Dateien herunterladen; sie können die Dateien nicht direkt öffnen und bearbeiten. Wenn die Datei heruntergeladen wurde,

Mehr

Objektorientierte Programmierung für Anfänger am Beispiel PHP

Objektorientierte Programmierung für Anfänger am Beispiel PHP Objektorientierte Programmierung für Anfänger am Beispiel PHP Johannes Mittendorfer http://jmittendorfer.hostingsociety.com 19. August 2012 Abstract Dieses Dokument soll die Vorteile der objektorientierten

Mehr

Objektorientierte Programmierung. Kapitel 12: Interfaces

Objektorientierte Programmierung. Kapitel 12: Interfaces 12. Interfaces 1/14 Objektorientierte Programmierung Kapitel 12: Interfaces Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2012/13 http://www.informatik.uni-halle.de/ brass/oop12/

Mehr

Informationen zum Aufnahmetest Mathematik

Informationen zum Aufnahmetest Mathematik Erwachsenenschule Bremen Abendgymnasium und Kolleg Fachvertretung Mathematik Informationen zum Aufnahmetest Mathematik Der Aufnahmetest Mathematik ist eine schriftliche Prüfung von 60 Minuten Dauer. Alle

Mehr

www.mathe-aufgaben.com

www.mathe-aufgaben.com Abiturprüfung Mathematik Baden-Württemberg (ohne CAS) Pflichtteil Aufgaben Aufgabe : ( VP) Bilden Sie die erste Ableitung der Funktion f mit sin() f() =. Aufgabe : ( VP) Berechnen Sie das Integral ( )

Mehr

1 Mathematische Grundlagen

1 Mathematische Grundlagen Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.

Mehr

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein. Schritt 1: Installation des Javacompilers JDK. Der erste Start mit Eclipse Bevor Sie den Java-Compiler installieren sollten Sie sich vergewissern, ob er eventuell schon installiert ist. Gehen sie wie folgt

Mehr

Shader. Computer Graphics: Shader

Shader. Computer Graphics: Shader Computer Graphics Computer Graphics Shader Computer Graphics: Shader Inhalt Pipeline Memory Resources Input-Assembler Vertex-Shader Geometry-Shader & Stream-Output Rasterizer Pixel-Shader Output-Merger

Mehr

Jörn Loviscach Hochschule Bremen

Jörn Loviscach Hochschule Bremen Programmierbare Hardware-Shader Jörn Loviscach Hochschule Bremen Überblick Vertex- und Pixel-Shader Anwendungsbeispiele fx-dateien Anwendungsbeispiele Zusammenfassung Puffer Vertex- und Pixel-Shader Hardware-Renderpipeline

Mehr

Anleitung über den Umgang mit Schildern

Anleitung über den Umgang mit Schildern Anleitung über den Umgang mit Schildern -Vorwort -Wo bekommt man Schilder? -Wo und wie speichert man die Schilder? -Wie füge ich die Schilder in meinen Track ein? -Welche Bauteile kann man noch für Schilder

Mehr

3. GLIEDERUNG. Aufgabe:

3. GLIEDERUNG. Aufgabe: 3. GLIEDERUNG Aufgabe: In der Praxis ist es für einen Ausdruck, der nicht alle Detaildaten enthält, häufig notwendig, Zeilen oder Spalten einer Tabelle auszublenden. Auch eine übersichtlichere Darstellung

Mehr

2 Darstellung von Zahlen und Zeichen

2 Darstellung von Zahlen und Zeichen 2.1 Analoge und digitale Darstellung von Werten 79 2 Darstellung von Zahlen und Zeichen Computer- bzw. Prozessorsysteme führen Transformationen durch, die Eingaben X auf Ausgaben Y abbilden, d.h. Y = f

Mehr

Mediator 9 - Lernprogramm

Mediator 9 - Lernprogramm Mediator 9 - Lernprogramm Ein Lernprogramm mit Mediator erstellen Mediator 9 bietet viele Möglichkeiten, CBT-Module (Computer Based Training = Computerunterstütztes Lernen) zu erstellen, z. B. Drag & Drop

Mehr

1. Einführung. 2. Die Abschlagsdefinition

1. Einführung. 2. Die Abschlagsdefinition 1. Einführung orgamax bietet die Möglichkeit, Abschlagszahlungen (oder auch Akontozahlungen) zu erstellen. Die Erstellung der Abschlagsrechnung beginnt dabei immer im Auftrag, in dem Höhe und Anzahl der

Mehr

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: 19.02.2014 MORE Projects GmbH

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: 19.02.2014 MORE Projects GmbH MORE Profile Pass- und Lizenzverwaltungssystem erstellt von: Thorsten Schumann erreichbar unter: thorsten.schumann@more-projects.de Stand: MORE Projects GmbH Einführung Die in More Profile integrierte

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle Seminare im Bereich MS-Office Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion

Mehr

Microsoft PowerPoint 2013 Folien gemeinsam nutzen

Microsoft PowerPoint 2013 Folien gemeinsam nutzen Hochschulrechenzentrum Justus-Liebig-Universität Gießen Microsoft PowerPoint 2013 Folien gemeinsam nutzen Folien gemeinsam nutzen in PowerPoint 2013 Seite 1 von 4 Inhaltsverzeichnis Einleitung... 2 Einzelne

Mehr

S/W mit PhotoLine. Inhaltsverzeichnis. PhotoLine

S/W mit PhotoLine. Inhaltsverzeichnis. PhotoLine PhotoLine S/W mit PhotoLine Erstellt mit Version 16.11 Ich liebe Schwarzweiß-Bilder und schaue mir neidisch die Meisterwerke an, die andere Fotografen zustande bringen. Schon lange versuche ich, auch so

Mehr

Praktische Mathematik: Lineare und Netzwerk-Optimierung (SS 2015) Praktikumsaufgaben

Praktische Mathematik: Lineare und Netzwerk-Optimierung (SS 2015) Praktikumsaufgaben Technische Universität Kaiserslautern Prof Dr Sven O Krumke Dr Sabine Büttner MSc Marco Natale Praktische Mathematik: Lineare und Netzwerk-Optimierung (SS 2015) Praktikumsaufgaben Aufgabe 1 (Konvertieren

Mehr

1. Sichtbarkeitsproblem beim Rendern einer dreidimensionalen Szene auf einer zweidimensionalen

1. Sichtbarkeitsproblem beim Rendern einer dreidimensionalen Szene auf einer zweidimensionalen 3D-Rendering Ulf Döring, Markus Färber 07.03.2011 1. Sichtbarkeitsproblem beim Rendern einer dreidimensionalen Szene auf einer zweidimensionalen Anzeigefläche (a) Worin besteht das Sichtbarkeitsproblem?

Mehr

Guide DynDNS und Portforwarding

Guide DynDNS und Portforwarding Guide DynDNS und Portforwarding Allgemein Um Geräte im lokalen Netzwerk von überall aus über das Internet erreichen zu können, kommt man um die Themen Dynamik DNS (kurz DynDNS) und Portweiterleitung(auch

Mehr

Erstellen von x-y-diagrammen in OpenOffice.calc

Erstellen von x-y-diagrammen in OpenOffice.calc Erstellen von x-y-diagrammen in OpenOffice.calc In dieser kleinen Anleitung geht es nur darum, aus einer bestehenden Tabelle ein x-y-diagramm zu erzeugen. D.h. es müssen in der Tabelle mindestens zwei

Mehr

GPU Programmierung 6. Juli 2004 M. Christen, T. Egartner, P. Zanoni

GPU Programmierung 6. Juli 2004 M. Christen, T. Egartner, P. Zanoni GPU Programmierung 6. Juli 2004 M. Christen, T. Egartner, P. Zanoni 1 Ablauf GPU Programm Vertex und Fragment Shader 2 3 4 5 Image Processing 6 Ablauf GPU Programm Ablauf GPU Programm Vertex und Fragment

Mehr

Vermeiden Sie es sich bei einer deutlich erfahreneren Person "dranzuhängen", Sie sind persönlich verantwortlich für Ihren Lernerfolg.

Vermeiden Sie es sich bei einer deutlich erfahreneren Person dranzuhängen, Sie sind persönlich verantwortlich für Ihren Lernerfolg. 1 2 3 4 Vermeiden Sie es sich bei einer deutlich erfahreneren Person "dranzuhängen", Sie sind persönlich verantwortlich für Ihren Lernerfolg. Gerade beim Einstig in der Programmierung muss kontinuierlich

Mehr

Version 0.3. Installation von MinGW und Eclipse CDT

Version 0.3. Installation von MinGW und Eclipse CDT Version 0.3 Installation von MinGW und Eclipse CDT 1. Stellen Sie fest, ob Sie Windows in der 32 Bit Version oder in der 64 Bit Version installiert haben. 2. Prüfen Sie, welche Java Runtime vorhanden ist.

Mehr

Die Gleichung A x = a hat für A 0 die eindeutig bestimmte Lösung. Für A=0 und a 0 existiert keine Lösung.

Die Gleichung A x = a hat für A 0 die eindeutig bestimmte Lösung. Für A=0 und a 0 existiert keine Lösung. Lineare Gleichungen mit einer Unbekannten Die Grundform der linearen Gleichung mit einer Unbekannten x lautet A x = a Dabei sind A, a reelle Zahlen. Die Gleichung lösen heißt, alle reellen Zahlen anzugeben,

Mehr

Anleitung zur Verwendung der VVW-Word-Vorlagen

Anleitung zur Verwendung der VVW-Word-Vorlagen Anleitung zur Verwendung der VVW-Word-Vorlagen v1.0. Feb-15 1 1 Vorwort Sehr geehrte Autorinnen und Autoren, wir haben für Sie eine Dokumentenvorlage für Microsoft Word entwickelt, um Ihnen die strukturierte

Mehr

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang sysplus.ch outlook - mail-grundlagen Seite 1/8 Outlook Mail-Grundlagen Posteingang Es gibt verschiedene Möglichkeiten, um zum Posteingang zu gelangen. Man kann links im Outlook-Fenster auf die Schaltfläche

Mehr

Animation ist das Erzeugen von Filmen mit Hilfe der Computergrafik. Objekte bewegen sich hierbei oder Beleuchtung, Augpunkt, Form,... ändern sich.

Animation ist das Erzeugen von Filmen mit Hilfe der Computergrafik. Objekte bewegen sich hierbei oder Beleuchtung, Augpunkt, Form,... ändern sich. Kapitel 1 Animation (Belebung) Animation ist das Erzeugen von Filmen mit Hilfe der Computergrafik. Objekte bewegen sich hierbei oder Beleuchtung, Augpunkt, Form,... ändern sich. Anwendungen findet die

Mehr

Lernwerkstatt 9 privat- Freischaltung

Lernwerkstatt 9 privat- Freischaltung Was tun, wenn mein Rechner immer wieder die Freischaltung der Lernwerkstatt 9 privat verliert und ich die Ursache dafür nicht finden kann? Normalerweise genügt es, genau eine einzige online-freischaltung

Mehr

Mediumwechsel - VR-NetWorld Software

Mediumwechsel - VR-NetWorld Software Mediumwechsel - VR-NetWorld Software Die personalisierte VR-NetWorld-Card wird mit einem festen Laufzeitende ausgeliefert. Am Ende der Laufzeit müssen Sie die bestehende VR-NetWorld-Card gegen eine neue

Mehr

Kurzeinführung LABTALK

Kurzeinführung LABTALK Kurzeinführung LABTALK Mit der Interpreter-Sprache LabTalk, die von ORIGIN zur Verfügung gestellt wird, können bequem Datenmanipulationen sowie Zugriffe direkt auf das Programm (Veränderungen der Oberfläche,

Mehr

Das große ElterngeldPlus 1x1. Alles über das ElterngeldPlus. Wer kann ElterngeldPlus beantragen? ElterngeldPlus verstehen ein paar einleitende Fakten

Das große ElterngeldPlus 1x1. Alles über das ElterngeldPlus. Wer kann ElterngeldPlus beantragen? ElterngeldPlus verstehen ein paar einleitende Fakten Das große x -4 Alles über das Wer kann beantragen? Generell kann jeder beantragen! Eltern (Mütter UND Väter), die schon während ihrer Elternzeit wieder in Teilzeit arbeiten möchten. Eltern, die während

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum

Mehr

Nutzung von GiS BasePac 8 im Netzwerk

Nutzung von GiS BasePac 8 im Netzwerk Allgemeines Grundsätzlich kann das GiS BasePac Programm in allen Netzwerken eingesetzt werden, die Verbindungen als Laufwerk zu lassen (alle WINDOWS Versionen). Die GiS Software unterstützt nur den Zugriff

Mehr

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 von Markus Mack Stand: Samstag, 17. April 2004 Inhaltsverzeichnis 1. Systemvorraussetzungen...3 2. Installation und Start...3 3. Anpassen der Tabelle...3

Mehr

ARCO Software - Anleitung zur Umstellung der MWSt

ARCO Software - Anleitung zur Umstellung der MWSt ARCO Software - Anleitung zur Umstellung der MWSt Wieder einmal beschert uns die Bundesverwaltung auf Ende Jahr mit zusätzlicher Arbeit, statt mit den immer wieder versprochenen Erleichterungen für KMU.

Mehr

Anwendungspraktikum aus JAVA Programmierung im SS 2006 Leitung: Albert Weichselbraun. Java Projekt. Schiffe Versenken mit GUI

Anwendungspraktikum aus JAVA Programmierung im SS 2006 Leitung: Albert Weichselbraun. Java Projekt. Schiffe Versenken mit GUI Anwendungspraktikum aus JAVA Programmierung im SS 2006 Leitung: Albert Weichselbraun Java Projekt Schiffe Versenken mit GUI 1. Über den Autor: Name: Marija Matejic Matrikelnummer: 9352571 E-mail: marijamatejic@yahoo.com

Mehr

WordPress. Dokumentation

WordPress. Dokumentation WordPress Dokumentation Backend-Login In das Backend gelangt man, indem man hinter seiner Website-URL einfach ein /wp-admin dranhängt www.domain.tld/wp-admin Dabei gelangt man auf die Administrationsoberfläche,

Mehr

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Übungsbuch für den Grundkurs mit Tipps und Lösungen: Analysis

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Übungsbuch für den Grundkurs mit Tipps und Lösungen: Analysis Unterrichtsmaterialien in digitaler und in gedruckter Form Auszug aus: Übungsbuch für den Grundkurs mit Tipps und Lösungen: Analysis Das komplette Material finden Sie hier: Download bei School-Scout.de

Mehr

Welche Lagen können zwei Geraden (im Raum) zueinander haben? Welche Lagen kann eine Gerade bezüglich einer Ebene im Raum einnehmen?

Welche Lagen können zwei Geraden (im Raum) zueinander haben? Welche Lagen kann eine Gerade bezüglich einer Ebene im Raum einnehmen? Welche Lagen können zwei Geraden (im Raum) zueinander haben? Welche Lagen können zwei Ebenen (im Raum) zueinander haben? Welche Lagen kann eine Gerade bezüglich einer Ebene im Raum einnehmen? Wie heiÿt

Mehr

Übung: Verwendung von Java-Threads

Übung: Verwendung von Java-Threads Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum

Mehr

Primzahlen und RSA-Verschlüsselung

Primzahlen und RSA-Verschlüsselung Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also

Mehr

Arbeiten mit UMLed und Delphi

Arbeiten mit UMLed und Delphi Arbeiten mit UMLed und Delphi Diese Anleitung soll zeigen, wie man Klassen mit dem UML ( Unified Modeling Language ) Editor UMLed erstellt, in Delphi exportiert und dort so einbindet, dass diese (bis auf

Mehr

Microsoft Access 2010 Navigationsformular (Musterlösung)

Microsoft Access 2010 Navigationsformular (Musterlösung) Hochschulrechenzentrum Justus-Liebig-Universität Gießen Microsoft Access 2010 Navigationsformular (Musterlösung) Musterlösung zum Navigationsformular (Access 2010) Seite 1 von 5 Inhaltsverzeichnis Vorbemerkung...

Mehr

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version 1.0.0. 23. September 2015 - 1 -

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version 1.0.0. 23. September 2015 - 1 - Matrix42 Use Case - Sicherung und Rücksicherung persönlicher Version 1.0.0 23. September 2015-1 - Inhaltsverzeichnis 1 Einleitung 3 1.1 Beschreibung 3 1.2 Vorbereitung 3 1.3 Ziel 3 2 Use Case 4-2 - 1 Einleitung

Mehr

Datensicherung. Beschreibung der Datensicherung

Datensicherung. Beschreibung der Datensicherung Datensicherung Mit dem Datensicherungsprogramm können Sie Ihre persönlichen Daten problemlos Sichern. Es ist möglich eine komplette Datensicherung durchzuführen, aber auch nur die neuen und geänderten

Mehr

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Seite erstellen Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Es öffnet sich die Eingabe Seite um eine neue Seite zu erstellen. Seiten Titel festlegen Den neuen

Mehr

1 Vom Problem zum Programm

1 Vom Problem zum Programm Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren

Mehr

Leichte-Sprache-Bilder

Leichte-Sprache-Bilder Leichte-Sprache-Bilder Reinhild Kassing Information - So geht es 1. Bilder gucken 2. anmelden für Probe-Bilder 3. Bilder bestellen 4. Rechnung bezahlen 5. Bilder runterladen 6. neue Bilder vorschlagen

Mehr

Access 2013. Grundlagen für Anwender. Susanne Weber. 1. Ausgabe, 1. Aktualisierung, Juni 2013

Access 2013. Grundlagen für Anwender. Susanne Weber. 1. Ausgabe, 1. Aktualisierung, Juni 2013 Access 2013 Susanne Weber 1. Ausgabe, 1. Aktualisierung, Juni 2013 Grundlagen für Anwender ACC2013 2 Access 2013 - Grundlagen für Anwender 2 Mit Datenbanken arbeiten In diesem Kapitel erfahren Sie was

Mehr

Anhand des bereits hergeleiteten Models erstellen wir nun mit der Formel

Anhand des bereits hergeleiteten Models erstellen wir nun mit der Formel Ausarbeitung zum Proseminar Finanzmathematische Modelle und Simulationen bei Raphael Kruse und Prof. Dr. Wolf-Jürgen Beyn zum Thema Simulation des Anlagenpreismodels von Simon Uphus im WS 09/10 Zusammenfassung

Mehr

6.2 Scan-Konvertierung (Scan Conversion)

6.2 Scan-Konvertierung (Scan Conversion) 6.2 Scan-Konvertierung (Scan Conversion) Scan-Konvertierung ist die Rasterung von einfachen Objekten (Geraden, Kreisen, Kurven). Als Ausgabemedium dient meist der Bildschirm, der aus einem Pixelraster

Mehr

Kapitel 3 Frames Seite 1

Kapitel 3 Frames Seite 1 Kapitel 3 Frames Seite 1 3 Frames 3.1 Allgemeines Mit Frames teilt man eine HTML-Seite in mehrere Bereiche ein. Eine Seite, die mit Frames aufgeteilt ist, besteht aus mehreren Einzelseiten, die sich den

Mehr

Vektoren mit GeoGebra

Vektoren mit GeoGebra Vektoren mit GeoGebra Eine Kurzanleitung mit Beispielen Markus Hohenwarter, 2005 In GeoGebra kann mit Vektoren und Punkten konstruiert und gerechnet werden. Diese Kurzanleitung gibt einen Überblick über

Mehr

HTML5. Wie funktioniert HTML5? Tags: Attribute:

HTML5. Wie funktioniert HTML5? Tags: Attribute: HTML5 HTML bedeutet Hypertext Markup Language und liegt aktuell in der fünften Fassung, also HTML5 vor. HTML5 ist eine Auszeichnungssprache mit der Webseiten geschrieben werden. In HTML5 wird festgelegt,

Mehr

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b AGROPLUS Buchhaltung Daten-Server und Sicherheitskopie Version vom 21.10.2013b 3a) Der Daten-Server Modus und der Tresor Der Daten-Server ist eine Betriebsart welche dem Nutzer eine grosse Flexibilität

Mehr

FastBill Automatic. Dokumentation Versand. FastBill GmbH. Holteyer Straße 30 45289 Essen Telefon 0201 47091505 Telefax 0201 54502360

FastBill Automatic. Dokumentation Versand. FastBill GmbH. Holteyer Straße 30 45289 Essen Telefon 0201 47091505 Telefax 0201 54502360 FastBill GmbH Holteyer Straße 30 45289 Essen Telefon 0201 47091505 Telefax 0201 54502360 FastBill Automatic Dokumentation Versand 1 Inhaltsverzeichnis: 1. Grundlegendes 2. Produkteinstellungen 2.1. Grundeinstellungen

Mehr

Einfügen von Bildern innerhalb eines Beitrages

Einfügen von Bildern innerhalb eines Beitrages Version 1.2 Einfügen von Bildern innerhalb eines Beitrages Um eigene Bilder ins Forum einzufügen, gibt es zwei Möglichkeiten. 1.) Ein Bild vom eigenem PC wird auf den Webspace von Baue-die-Bismarck.de

Mehr

Benutzerkonto unter Windows 2000

Benutzerkonto unter Windows 2000 Jeder Benutzer, der an einem Windows 2000 PC arbeiten möchte, braucht dazu ein Benutzerkonto. Je nach Organisation des Netzwerkes, existiert dieses Benutzerkonto auf der lokalen Workstation oder im Active

Mehr

impact ordering Info Produktkonfigurator

impact ordering Info Produktkonfigurator impact ordering Info Copyright Copyright 2013 veenion GmbH Alle Rechte vorbehalten. Kein Teil der Dokumentation darf in irgendeiner Form ohne schriftliche Genehmigung der veenion GmbH reproduziert, verändert

Mehr

Charakteristikenmethode im Beispiel

Charakteristikenmethode im Beispiel Charakteristikenmethode im Wir betrachten die PDE in drei Variablen xu x + yu y + (x + y )u z = 0. Das charakteristische System lautet dann ẋ = x ẏ = y ż = x + y und besitzt die allgemeine Lösung x(t)

Mehr

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress. Anmeldung http://www.ihredomain.de/wp-admin Dashboard Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress. Das Dashboard gibt Ihnen eine kurze Übersicht, z.b. Anzahl der Beiträge,

Mehr

Navigieren auf dem Desktop

Navigieren auf dem Desktop Navigieren auf dem Desktop Sie kennen Windows 7 noch nicht? Obwohl Windows 7 viel mit den Versionen von Windows gemein hat, die Ihnen ggf. bereits vertraut sind, werden Sie möglicherweise an der einen

Mehr

Dokumentation für das Spiel Pong

Dokumentation für das Spiel Pong Dokumentation für das Spiel Pong BwInf - Turnierserver Didaktik der nformatik BWINF KI Wettbewerbs-Plattform Stand: 02.09.2014 Grundlagen In diesem KI-Turnier programmiert ihr einen Schläger für das Retro-Spiel

Mehr

Lizenzen auschecken. Was ist zu tun?

Lizenzen auschecken. Was ist zu tun? Use case Lizenzen auschecken Ihr Unternehmen hat eine Netzwerk-Commuterlizenz mit beispielsweise 4 Lizenzen. Am Freitag wollen Sie Ihren Laptop mit nach Hause nehmen, um dort am Wochenende weiter zu arbeiten.

Mehr

Zahlen auf einen Blick

Zahlen auf einen Blick Zahlen auf einen Blick Nicht ohne Grund heißt es: Ein Bild sagt mehr als 1000 Worte. Die meisten Menschen nehmen Informationen schneller auf und behalten diese eher, wenn sie als Schaubild dargeboten werden.

Mehr

Um ein solches Dokument zu erzeugen, muss eine Serienbriefvorlage in Word erstellt werden, das auf die von BüroWARE erstellte Datei zugreift.

Um ein solches Dokument zu erzeugen, muss eine Serienbriefvorlage in Word erstellt werden, das auf die von BüroWARE erstellte Datei zugreift. Briefe Schreiben - Arbeiten mit Word-Steuerformaten Ab der Version 5.1 stellt die BüroWARE über die Word-Steuerformate eine einfache Methode dar, Briefe sowie Serienbriefe mit Hilfe der Korrespondenzverwaltung

Mehr

A.u.S. Spielgeräte GmbH A-1210 Wien Scheydgasse 48 Tel.+43-(0)1-271 66 00 Fax. +43-(0)1-271 66 00 75

A.u.S. Spielgeräte GmbH A-1210 Wien Scheydgasse 48 Tel.+43-(0)1-271 66 00 Fax. +43-(0)1-271 66 00 75 Inhaltsverzeichnis Seite 1. Einleitung. 2 2. Vorraussetzung.. 2 2.1 Software 2 2.2 Hardware.. 2 3. Vorbereitung... 3 4. Programmierung 4 5. Ändern des Schlüssels... 6 6. Test 6 7. Informationen.. 7 1.Einleitung

Mehr

Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me

Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me Bevor Sie die Platte zum ersten Mal benutzen können, muss sie noch partitioniert und formatiert werden! Vorher zeigt sich die Festplatte

Mehr

SICHERN DER FAVORITEN

SICHERN DER FAVORITEN Seite 1 von 7 SICHERN DER FAVORITEN Eine Anleitung zum Sichern der eigenen Favoriten zur Verfügung gestellt durch: ZID Dezentrale Systeme März 2010 Seite 2 von 7 Für die Datensicherheit ist bekanntlich

Mehr

ERGÄNZUNGEN ZUR ANALYSIS II MITTELWERTSATZ UND ANWENDUNGEN

ERGÄNZUNGEN ZUR ANALYSIS II MITTELWERTSATZ UND ANWENDUNGEN ERGÄNZUNGEN ZUR ANALYSIS II MITTELWERTSATZ UND ANWENDUNGEN CHRISTIAN HARTFELDT. Zweiter Mittelwertsatz Der Mittelwertsatz Satz VI.3.4) lässt sich verallgemeinern zu Satz.. Seien f, g : [a, b] R auf [a,

Mehr