mirror of
https://github.com/recp/cglm.git
synced 2026-02-17 03:39:05 +00:00
Compare commits
12 Commits
v0.7.9
...
flt-epsilo
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6626d2b74f | ||
|
|
5bda762df6 | ||
|
|
f9824a8dc6 | ||
|
|
ccd3058adc | ||
|
|
4ab9ab4772 | ||
|
|
a5ff477fc8 | ||
|
|
254570d006 | ||
|
|
681f20d540 | ||
|
|
fd87f6e2c3 | ||
|
|
2c12c6dce5 | ||
|
|
5619527fd3 | ||
|
|
8b1c3c3fc4 |
@@ -1,5 +1,5 @@
|
||||
cmake_minimum_required(VERSION 3.8.2)
|
||||
project(cglm VERSION 0.7.9 LANGUAGES C)
|
||||
project(cglm VERSION 0.8.0 LANGUAGES C)
|
||||
|
||||
set(CMAKE_C_STANDARD 11)
|
||||
set(CMAKE_C_STANDARD_REQUIRED YES)
|
||||
|
||||
15
cglm.podspec
15
cglm.podspec
@@ -2,10 +2,10 @@ Pod::Spec.new do |s|
|
||||
|
||||
# Description
|
||||
s.name = "cglm"
|
||||
s.version = "0.7.2"
|
||||
s.summary = "📽 Optimized OpenGL/Graphics Math (glm) for C"
|
||||
s.version = "0.7.9"
|
||||
s.summary = "📽 Highly Optimized Graphics Math (glm) for C"
|
||||
s.description = <<-DESC
|
||||
cglm is math library for graphics programming for C. It is similar to original glm but it is written for C instead of C++ (you can use here too). See the documentation or README for all features.
|
||||
cglm is math library for graphics programming for C. See the documentation or README for all features.
|
||||
DESC
|
||||
|
||||
s.documentation_url = "http://cglm.readthedocs.io"
|
||||
@@ -25,4 +25,13 @@ cglm is math library for graphics programming for C. It is similar to original g
|
||||
|
||||
# Linking
|
||||
s.library = "m"
|
||||
|
||||
# Configuration
|
||||
s.pod_target_xcconfig = {
|
||||
'CLANG_ENABLE_MODULES' => 'NO',
|
||||
'CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES' => 'YES',
|
||||
'CLANG_WARN_DOCUMENTATION_COMMENTS' => 'NO',
|
||||
'GCC_C_LANGUAGE_STANDARD' => 'gnu11',
|
||||
'GCC_PREPROCESSOR_DEFINITIONS' => '$(inherited) GLM_TESTS_NO_COLORFUL_OUTPUT'
|
||||
}
|
||||
end
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#*****************************************************************************
|
||||
|
||||
AC_PREREQ([2.69])
|
||||
AC_INIT([cglm], [0.7.9], [info@recp.me])
|
||||
AC_INIT([cglm], [0.8.0], [info@recp.me])
|
||||
AM_INIT_AUTOMAKE([-Wall -Werror foreign subdir-objects serial-tests])
|
||||
|
||||
# Don't use the default cflags (-O2 -g), we set ours manually in Makefile.am.
|
||||
|
||||
@@ -50,7 +50,7 @@ If you don't want to install **cglm** to your system's folder you can get static
|
||||
Meson (All platforms):
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
.. code-block:: bash
|
||||
.. code-block::
|
||||
:linenos:
|
||||
|
||||
$ meson build # [Optional] --default-library=static
|
||||
@@ -60,7 +60,7 @@ Meson (All platforms):
|
||||
|
||||
**Meson Options:**
|
||||
|
||||
.. code-block:: CMake
|
||||
.. code-block::
|
||||
:linenos:
|
||||
|
||||
c_std=c11
|
||||
@@ -69,9 +69,9 @@ Meson (All platforms):
|
||||
enable_tests=false # to run tests: ninja test
|
||||
|
||||
|
||||
**Use with your CMake project example**
|
||||
**Use with your Meson project**
|
||||
|
||||
.. code-block:: CMake
|
||||
.. code-block::
|
||||
:linenos:
|
||||
|
||||
# Clone cglm or create a cglm.wrap under <source_root>/subprojects
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
|
||||
# If your documentation needs a minimal Sphinx version, state it here.
|
||||
#
|
||||
# needs_sphinx = '1.0'
|
||||
# needs_sphinx = '3.0'
|
||||
|
||||
# Add any Sphinx extension module names here, as strings. They can be
|
||||
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
|
||||
@@ -62,9 +62,9 @@ author = u'Recep Aslantas'
|
||||
# built documents.
|
||||
#
|
||||
# The short X.Y version.
|
||||
version = u'0.7.9'
|
||||
version = u'0.8.0'
|
||||
# The full version, including alpha/beta/rc tags.
|
||||
release = u'0.7.9'
|
||||
release = u'0.8.0'
|
||||
|
||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
||||
# for a list of supported languages.
|
||||
@@ -197,3 +197,7 @@ epub_exclude_files = ['search.html']
|
||||
|
||||
# If true, `todo` and `todoList` produce output, else they produce nothing.
|
||||
todo_include_todos = True
|
||||
|
||||
# -- Options for the C domain ------------------------------------------------
|
||||
|
||||
c_id_attributes = ['__restrict']
|
||||
|
||||
@@ -374,7 +374,7 @@ Functions documentation
|
||||
| *[in]* **q** quaternion
|
||||
| *[in]* **pivot** pivot
|
||||
|
||||
.. c:function:: void glm_quat_rotate(mat4 m, versor q, mat4 dest)
|
||||
.. c:function:: void glm_quat_rotate_atm(mat4 m, versor q, vec3 pivot)
|
||||
|
||||
| rotate NEW transform matrix using quaternion at pivot point
|
||||
| this creates rotation matrix, it assumes you don't have a matrix
|
||||
|
||||
@@ -55,7 +55,7 @@ Functions:
|
||||
Functions documentation
|
||||
~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
.. c:function:: void glm_vec2(float \*v, vec2 dest)
|
||||
.. c:function:: void glm_vec2(float * v, vec2 dest)
|
||||
|
||||
init vec2 using vec3 or vec4
|
||||
|
||||
|
||||
@@ -425,7 +425,7 @@ bool
|
||||
glm_uniscaled(mat4 m) {
|
||||
CGLM_ALIGN(8) vec3 s;
|
||||
glm_decompose_scalev(m, s);
|
||||
return glm_vec3_eq_all(s);
|
||||
return glm_vec3_eq_eps(s, s[0]);
|
||||
}
|
||||
|
||||
/*!
|
||||
|
||||
@@ -42,12 +42,18 @@
|
||||
#include "types.h"
|
||||
#include "simd/intrin.h"
|
||||
|
||||
#ifndef CGLM_USE_DEFAULT_EPSILON
|
||||
# ifndef GLM_FLT_EPSILON
|
||||
# define GLM_FLT_EPSILON 1e-6
|
||||
/** CGLM_USE_DEFAULT_EPSILON is removed, to override float epsilon,
|
||||
* just define GLM_FLT_EPSILON with epsilon value like below
|
||||
*
|
||||
* #define GLM_FLT_EPSILON 1e-6f
|
||||
*/
|
||||
|
||||
#ifndef GLM_FLT_EPSILON
|
||||
# ifndef FLT_EPSILON
|
||||
# define GLM_FLT_EPSILON 1e-6f
|
||||
# else
|
||||
# define GLM_FLT_EPSILON FLT_EPSILON
|
||||
# endif
|
||||
#else
|
||||
# define GLM_FLT_EPSILON FLT_EPSILON
|
||||
#endif
|
||||
|
||||
#endif /* cglm_common_h */
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
#define cglm_version_h
|
||||
|
||||
#define CGLM_VERSION_MAJOR 0
|
||||
#define CGLM_VERSION_MINOR 7
|
||||
#define CGLM_VERSION_PATCH 9
|
||||
#define CGLM_VERSION_MINOR 8
|
||||
#define CGLM_VERSION_PATCH 0
|
||||
|
||||
#endif /* cglm_version_h */
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
project('cglm', 'c',
|
||||
version : '0.7.9',
|
||||
version : '0.8.0',
|
||||
license : 'mit',
|
||||
default_options : [
|
||||
'c_std=c11',
|
||||
|
||||
@@ -35,9 +35,9 @@ TEST_IMPL(camera_decomp) {
|
||||
farVal = 100.0f;
|
||||
|
||||
glm_perspective(fovy, aspect, nearVal, farVal, proj);
|
||||
ASSERT(fabsf(aspect - glm_persp_aspect(proj)) < GLM_FLT_EPSILON)
|
||||
ASSERT(fabsf(fovy - glm_persp_fovy(proj)) < GLM_FLT_EPSILON)
|
||||
ASSERT(fabsf(49.984f - glm_deg(glm_persp_fovy(proj))) < GLM_FLT_EPSILON)
|
||||
ASSERT(fabsf(aspect - glm_persp_aspect(proj)) < 1e-5f)
|
||||
ASSERT(fabsf(fovy - glm_persp_fovy(proj)) < 1e-5f)
|
||||
ASSERT(fabsf(49.984f - glm_deg(glm_persp_fovy(proj))) < 1e-5f)
|
||||
|
||||
glm_persp_sizes(proj, fovy, sizes);
|
||||
|
||||
|
||||
@@ -106,7 +106,7 @@ test_rand_quat(versor q);
|
||||
CGLM_INLINE
|
||||
bool
|
||||
test_eq(float a, float b) {
|
||||
return fabsf(a - b) <= GLM_FLT_EPSILON * 10;
|
||||
return fabsf(a - b) <= 1e-5f;
|
||||
}
|
||||
|
||||
CGLM_INLINE
|
||||
|
||||
Reference in New Issue
Block a user