diff options
author | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2016-04-16 22:16:44 +0300 |
---|---|---|
committer | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2016-04-16 22:16:44 +0300 |
commit | f902b289c2a3956176fc328afb31ea4fc91f8984 (patch) | |
tree | da71d4ee7ff0c5dd499631ccf8ff3201fcad70ef /kmscube/esUtil.h | |
parent | d54a6e8e8a170591d6eb98c8e2d4236763258f5d (diff) |
kmscube: split into parts
Diffstat (limited to 'kmscube/esUtil.h')
-rw-r--r-- | kmscube/esUtil.h | 125 |
1 files changed, 0 insertions, 125 deletions
diff --git a/kmscube/esUtil.h b/kmscube/esUtil.h deleted file mode 100644 index c0383ab..0000000 --- a/kmscube/esUtil.h +++ /dev/null @@ -1,125 +0,0 @@ -// -// Book: OpenGL(R) ES 2.0 Programming Guide -// Authors: Aaftab Munshi, Dan Ginsburg, Dave Shreiner -// ISBN-10: 0321502795 -// ISBN-13: 9780321502797 -// Publisher: Addison-Wesley Professional -// URLs: http://safari.informit.com/9780321563835 -// http://www.opengles-book.com -// - -/* - * (c) 2009 Aaftab Munshi, Dan Ginsburg, Dave Shreiner - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER - * DEALINGS IN THE SOFTWARE. - */ - -// -/// \file ESUtil.h -/// \brief A utility library for OpenGL ES. This library provides a -/// basic common framework for the example applications in the -/// OpenGL ES 2.0 Programming Guide. -// -#ifndef ESUTIL_H -#define ESUTIL_H - -/// -// Includes -// -#include <GLES2/gl2.h> -#include <EGL/egl.h> - -#ifdef __cplusplus - -extern "C" { -#endif - -typedef struct -{ - GLfloat m[4][4]; -} ESMatrix; - -// -/// \brief multiply matrix specified by result with a scaling matrix and return new matrix in result -/// \param result Specifies the input matrix. Scaled matrix is returned in result. -/// \param sx, sy, sz Scale factors along the x, y and z axes respectively -// -void esScale(ESMatrix *result, GLfloat sx, GLfloat sy, GLfloat sz); - -// -/// \brief multiply matrix specified by result with a translation matrix and return new matrix in result -/// \param result Specifies the input matrix. Translated matrix is returned in result. -/// \param tx, ty, tz Scale factors along the x, y and z axes respectively -// -void esTranslate(ESMatrix *result, GLfloat tx, GLfloat ty, GLfloat tz); - -// -/// \brief multiply matrix specified by result with a rotation matrix and return new matrix in result -/// \param result Specifies the input matrix. Rotated matrix is returned in result. -/// \param angle Specifies the angle of rotation, in degrees. -/// \param x, y, z Specify the x, y and z coordinates of a vector, respectively -// -void esRotate(ESMatrix *result, GLfloat angle, GLfloat x, GLfloat y, GLfloat z); - -// -// \brief multiply matrix specified by result with a perspective matrix and return new matrix in result -/// \param result Specifies the input matrix. new matrix is returned in result. -/// \param left, right Coordinates for the left and right vertical clipping planes -/// \param bottom, top Coordinates for the bottom and top horizontal clipping planes -/// \param nearZ, farZ Distances to the near and far depth clipping planes. Both distances must be positive. -// -void esFrustum(ESMatrix *result, float left, float right, float bottom, float top, float nearZ, float farZ); - -// -/// \brief multiply matrix specified by result with a perspective matrix and return new matrix in result -/// \param result Specifies the input matrix. new matrix is returned in result. -/// \param fovy Field of view y angle in degrees -/// \param aspect Aspect ratio of screen -/// \param nearZ Near plane distance -/// \param farZ Far plane distance -// -void esPerspective(ESMatrix *result, float fovy, float aspect, float nearZ, float farZ); - -// -/// \brief multiply matrix specified by result with a perspective matrix and return new matrix in result -/// \param result Specifies the input matrix. new matrix is returned in result. -/// \param left, right Coordinates for the left and right vertical clipping planes -/// \param bottom, top Coordinates for the bottom and top horizontal clipping planes -/// \param nearZ, farZ Distances to the near and far depth clipping planes. These values are negative if plane is behind the viewer -// -void esOrtho(ESMatrix *result, float left, float right, float bottom, float top, float nearZ, float farZ); - -// -/// \brief perform the following operation - result matrix = srcA matrix * srcB matrix -/// \param result Returns multiplied matrix -/// \param srcA, srcB Input matrices to be multiplied -// -void esMatrixMultiply(ESMatrix *result, ESMatrix *srcA, ESMatrix *srcB); - -// -//// \brief return an indentity matrix -//// \param result returns identity matrix -// -void esMatrixLoadIdentity(ESMatrix *result); - -#ifdef __cplusplus -} -#endif - -#endif // ESUTIL_H |