Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
| Obě strany předchozí revizePředchozí verzeNásledující verze | Předchozí verze | ||
| msz:opengl [31. 05. 2012, 07.17:29] – [Možnosti nastavení] smazat pitel | msz:opengl [02. 08. 2026, 01.25:01] (aktuální) – odstraněno - upraveno mimo DokuWiki (Neznámé datum) 127.0.0.1 | ||
|---|---|---|---|
| Řádek 1: | Řádek 1: | ||
| - | ====== Grafická knihovna OpenGL ====== | ||
| - | [[wp> | ||
| - | |||
| - | * **OpenGL** – standard pro počítačovou 3D grafiku, knihovny pro různý HW a OS. | ||
| - | * **Grafická primitiva** jsou bod, úsečka, polygon, pixmapa, bitmapa. Pomocí těchto se vše vykresluje. | ||
| - | * **Stavový stroj** je základním principem vykreslování OpenGL, nastavení parametrů mění stav stroje a je dále používáno až do další změny. | ||
| - | * Neobsahuje žádné funkce pro práci s okny ani GUI. | ||
| - | ===== Vykreslovací řetězec ===== | ||
| - | {{ http:// | ||
| - | [[wp> | ||
| - | |||
| - | * **Display Lists** – Veškerá data, ať už geometrie nebo pixely, mlže být uložena v display listu pro aktuální i budoucí použití. (Alternativou je okamžité zpracování data, známe jako //immediate mode//.) Pokud je display list zpracován, uložená data jsou z něj poslány a zpracovány stejně jako v immediate módu. | ||
| - | * **Evaluators** – All geometric primitives are eventually described by vertices. Parametric curves and surfaces may be initially described by control points and polynomial functions called basis functions. Evaluators provide a method to derive the vertices used to represent the surface from the control points. The method is a polynomial mapping, which can produce surface normal, texture coordinates, | ||
| - | * **Per-Vertex Operations** – For vertex data, next is the " | ||
| - | * **Primitive Assembly** – Clipping, a major part of primitive assembly, is the elimination of portions of geometry which fall outside a half-space, defined by a plane. Point clipping simply passes or rejects vertices; line or polygon clipping can add additional vertices depending upon how the line or polygon is clipped. In some cases, this is followed by perspective division, which makes distant geometric objects appear smaller than closer objects. Then viewport and depth (z coordinate) operations are applied. If culling is enabled and the primitive is a polygon, it then may be rejected by a culling test. Depending upon the polygon mode, a polygon may be drawn as points or lines. The results of this stage are complete geometric primitives, which are the transformed and clipped vertices with related color, depth, and sometimes texture-coordinate values and guidelines for the rasterization step. | ||
| - | * **Pixel Operations** – While geometric data takes one path through the OpenGL rendering pipeline, pixel data takes a different route. Pixels from an array in system memory are first unpacked from one of a variety of formats into the proper number of components. Next the data is scaled, biased, and processed by a pixel map. The results are clamped and then either written into texture memory or sent to the rasterization step. If pixel data is read from the frame buffer, pixel-transfer operations (scale, bias, mapping, and clamping) are performed. TherL these results are packed into an appropriate format and returned to an array in system memory. There are special pixel copy operations to copy data in the framebuffer to other parts of the framebuffer or to the texture memory. A single pass is made through the pixel transfer operations before the data is written to the texture memory or back to the framebuffer. | ||
| - | * **Texture Assembly** – An OpenGL application may wish to apply texture images onto geometric objects to make them look more realistic. If several texture images are used, it's wise to put them into texture objects so that you can easily switch among them. Some OpenGL implementations may have special resources to accelerate texture performance. There may be specialized, | ||
| - | * **Rasterization** – Rasterization is the conversion of both geometric and pixel data into fragments. Each fragment square corresponds to a pixel in the framebuffer. Line and polygon stipples, line width, point size, shading model, and coverage calculations to support antialiasing are taken into consideration as vertices are connected into lines or the interior pixels are calculated for a filled polygon. Color and depth values are assigned for each fragment square. | ||
| - | * **Fragment Operations** – Before values are actually stored into the framebuffer, | ||
| - | |||
| - | |||
| - | ===== Frame buffer ===== | ||
| - | ===== Stencil buffer ===== | ||