diff options
Diffstat (limited to 'Source/ThirdParty/ANGLE/util/geometry_utils.h')
-rw-r--r-- | Source/ThirdParty/ANGLE/util/geometry_utils.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/Source/ThirdParty/ANGLE/util/geometry_utils.h b/Source/ThirdParty/ANGLE/util/geometry_utils.h new file mode 100644 index 000000000..699e8bef2 --- /dev/null +++ b/Source/ThirdParty/ANGLE/util/geometry_utils.h @@ -0,0 +1,40 @@ +// +// Copyright (c) 2014 The ANGLE Project Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. +// +// geometry_utils: +// Helper library for generating certain sets of geometry. +// + +#ifndef UTIL_GEOMETRY_UTILS_H +#define UTIL_GEOMETRY_UTILS_H + +#include <cstddef> +#include <vector> + +#include <export.h> +#include <GLES2/gl2.h> + +#include "Vector.h" + +struct ANGLE_EXPORT SphereGeometry +{ + std::vector<Vector3> positions; + std::vector<Vector3> normals; + std::vector<GLushort> indices; +}; + +ANGLE_EXPORT void CreateSphereGeometry(size_t sliceCount, float radius, SphereGeometry *result); + +struct ANGLE_EXPORT CubeGeometry +{ + std::vector<Vector3> positions; + std::vector<Vector3> normals; + std::vector<Vector2> texcoords; + std::vector<GLushort> indices; +}; + +ANGLE_EXPORT void GenerateCubeGeometry(float radius, CubeGeometry *result); + +#endif // UTIL_GEOMETRY_UTILS_H |