{"id":16856453,"url":"https://github.com/vallentin/gamemath","last_synced_at":"2025-10-12T09:12:29.268Z","repository":{"id":89082045,"uuid":"63630104","full_name":"vallentin/GameMath","owner":"vallentin","description":"Collection of single-header libraries for various game and graphics related mathematics","archived":false,"fork":false,"pushed_at":"2017-02-09T16:37:21.000Z","size":15,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-24T17:34:57.627Z","etag":null,"topics":["game","graphics","mathematics"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"zlib","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vallentin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-07-18T19:14:52.000Z","updated_at":"2017-02-09T16:37:22.000Z","dependencies_parsed_at":"2023-03-15T19:15:54.942Z","dependency_job_id":null,"html_url":"https://github.com/vallentin/GameMath","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vallentin%2FGameMath","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vallentin%2FGameMath/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vallentin%2FGameMath/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vallentin%2FGameMath/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vallentin","download_url":"https://codeload.github.com/vallentin/GameMath/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244207746,"owners_count":20416109,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["game","graphics","mathematics"],"created_at":"2024-10-13T14:04:17.205Z","updated_at":"2025-10-12T09:12:24.218Z","avatar_url":"https://github.com/vallentin.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# GameMath ![Release][GameMathVersionBadge] ![License][GameMathLicenseBadge]\n\n[GameMath][GameMath] is a collection of single-header libraries for various\ngame and graphics related mathematics.\n\n\nLibrary | Latest Version | Description\n--------|----------------|------------\ngm_math.hpp | 1.0.0 | Like `math.h` but for gamedev specific functions\ngm_color.hpp | 1.2.0 | Contains functionality for converting between color models and changing colorfulness\ngm_easing.hpp | 1.0.0 | Contains simple easing functions\n\n\n[GameMath][GameMath] is compatible with both C and C++. Files denoted with `.h`\nis compatible with both C and C++, whereas files denoted with `.hpp` is only\ncompatible with C++.\n\n\n## Libraries\n\n\n### Math (`gm_math.hpp`)\n\nIf you're developing on Windows and have any Windows headers\nincluded. Then macros `min` and `max` might have been defined.\nThis will (at least) break `gm_math.hpp` (as well as `gm_linear.hpp`).\n\nTo counteract this either `#undef` `min` and `max` or `#define` `NOMINMAX`\nbefore including any Windows headers.\n\n\n### Color (`gm_color.hpp`)\n\n#### HSL \u0026 RGB Conversion\n\nDepending on the software HSL is represented in different\nranges. **H**ue, **S**aturation and **L**ightness (or brightness)\nis usually represented as a range between [0;240]. As HSL is\nalso visually represented as a cylinder, H, S, L is thereby usually\nrepresented as Hue being an angle from [0;360] and Saturation and\nLightness being a percentage [0;100%].\n\nFor ease of use the library's HSL and RGB converter takes and\noutputs in the range of [0;1].\n\n\n## Reporting Bugs \u0026 Requests\n\nFeel free to use the [issue tracker][GameMathIssues],\nfor reporting bugs, submitting patches or requesting features.\n\nBefore submitting bugs, make sure that you're using the latest version of [GameMath][GameMath].\n\n\n## License\n\n```\nCopyright (c) 2012-2016 Christian Vallentin \u003cmail@vallentinsource.com\u003e\n\nThis software is provided 'as-is', without any express or implied\nwarranty. In no event will the authors be held liable for any damages\narising from the use of this software.\n\nPermission is granted to anyone to use this software for any purpose,\nincluding commercial applications, and to alter it and redistribute it\nfreely, subject to the following restrictions:\n\n1. The origin of this software must not be misrepresented; you must not\n   claim that you wrote the original software. If you use this software\n   in a product, an acknowledgment in the product documentation would be\n   appreciated but is not required.\n\n2. Altered source versions must be plainly marked as such, and must not\n   be misrepresented as being the original software.\n\n3. This notice may not be removed or altered from any source\n   distribution.\n```\n\n\n[GameMath]: https://github.com/MrVallentin/GameMath\n[GameMathLicense]: https://github.com/MrVallentin/GameMath/blob/master/LICENSE\n\n[GameMathVersionBadge]: https://img.shields.io/badge/release-v1.0.0-blue.svg\n[GameMathLicenseBadge]: https://img.shields.io/badge/license-%20free%20to%20use%2C%20share%2C%20modify%20and%20redistribute-blue.svg\n\n[GameMathIssues]: https://github.com/MrVallentin/GameMath/issues\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvallentin%2Fgamemath","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvallentin%2Fgamemath","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvallentin%2Fgamemath/lists"}