From 15b30fe20b401d079c2b3c6a8e77eee827813de3 Mon Sep 17 00:00:00 2001 From: Travis CI Date: Tue, 17 Mar 2015 22:54:19 +0000 Subject: Gem 096ed6ef786b7a9d6e11a437ff8526619c89a1fd osx/x86_64 built 'master:096ed6ef786b7a9d6e11a437ff8526619c89a1fd' for osx/x86_64 --- Gem/manual/BasicObj.html | 115 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 115 insertions(+) create mode 100644 Gem/manual/BasicObj.html (limited to 'Gem/manual/BasicObj.html') diff --git a/Gem/manual/BasicObj.html b/Gem/manual/BasicObj.html new file mode 100644 index 0000000..80e5d84 --- /dev/null +++ b/Gem/manual/BasicObj.html @@ -0,0 +1,115 @@ + + + + + + + Basic Objects + + + +
+

+Basic Objects

+ +


There are a number of objects which are the foundation for GEM. +These objects are used in every patch and control the graphics and rendering. +

[gemwin] - The window manager +
[gemhead] - The start of a rendering chain +
manips - Move an object in the window +
geos - Render a shape +

+

+[gemwin]

+The graphics window is created and destroyed with the [gemwin] object. +With the [gemwin] object, you can set the default size of the graphics +window, create and destroy the graphics window, turn on and off rendering, +etc. All basic GEM patches will have the following [gemwin] +object with these messages: +
+

+The create and destroy messages will display and remove the graphics window. +The 1 and 0 messages start and stop rendering. +

+

+[gemhead]

+The [gemhead] object is the start of every rendering chain. +A simple patch, which is located in examples/gem_basic/gem1.redSquare.pd +looks like: +
+

+ +

This patch will render a red square. The [gemhead] object +signifies the start of rendering. The [color] object sets the color +for all objects after it in the chain. The [square] object renders +a square into the graphics window based on the current color, texturing, +and transformations. In this case, there is no texturing and no transformation. +

Every rendering chain MUST start with a [gemhead]. If you +do not put a [gemhead] at the beginning of the chain, then nothing +will be rendered for that part of the patch. +

+

+manips

+In the patch 01.basic/02.cube.pd, the [translateXYZ] object is +introduced. +
+

+ +

The graphics are transformed and moved by the manipulator objects, +or the manips. GEM has the following manips: +

[color] - set the color with a vector +
[colorRGB] - set the color with 3 discrete values +
[rotate] - rotate with an angle and vector +
[rotateXYZ] - rotate with 3 discrete values +
[scale] - scale with a vector +
[scaleXYZ] - scale with 3 discrete values +
[translate] - translate with a vector +
[translateXYZ] - translate with 3 discrete values +

To understand the difference between the vector and discrete values +version, realize that everything in is defined in 3 dimensions. These +dimensions can be XYZ values, or RGB colors. +

+

+ +

The two translate objects above will do exactly the same thing in a +patch, but they provide two different ways to do it. [translate] accepts +a scalar and vector. [translateXYZ] accepts three floats which +specify a point in space. The manips will transform any object which +appears after it in the rendering chain. +

+

+geos

+Up above, we saw the [square] and [cube] objects. The other +primary geos are: +

[square] - render a square +
[circle] - render a circle +
[triangle] - render a triangle +
[cube] - render a cube +
[sphere] - render a sphere +
[cone] - render a cone +

The [square], [circle], [cube], and [triangle] objects +have a right-hand inlet to set the size of the shape. The default +size is 1. +

The [cone] and [sphere] objects are not perfectly smooth. +They are actually composed of a number of polygons. In order to control +the rendering better, the middle inlet is the size of the object, while +the right-hand inlet is the number of slices to define the shape. +Take a look at the patch gem_basic/gem3.sphere.pd to see how the number +of slices can change the look of a sphere. Don't worry about the +[world_light] +object, it is just there to make it easier to see the difference in the +number of slices. Make sure to click the 'lighting 0' message before +closing the patch (if you don't, then other patches will probably be completely +black until you quit and restart pd/GEM). +

Your graphics window should look like this for 5 and 15 slices: +

+

+Obviously, the more slices that you use, the better the sphere looks. +However, each slice adds more polygons, which can slow down your frame +rate. In computer graphics, there is always a trade off between resolution +and speed. +

+

[return] +
+ + -- cgit v1.2.1