summaryrefslogtreecommitdiff
path: root/src/common/vector_math.h (unfollow)
Commit message (Collapse)AuthorFilesLines
2023-05-05input_common: Add property to invert an axis buttonGravatar Narr the Reg1-1/+1
2023-05-05yuzu: Add motion preview to controller inputGravatar Narr the Reg1-0/+14
2023-01-29Move to Clang Format 15Gravatar Levi Behunin1-11/+5
Depends on https://github.com/yuzu-emu/build-environments/pull/69 clang-15 primary run
2022-04-28chore: add missing SPDX tagsGravatar Andrea Pappacoda1-29/+3
Follow-up to 99ceb03a1cfcf35968cab589ea188a8c406cda52
2021-09-24general: Update style to clang-format-12Gravatar ameerj1-2/+2
2020-10-15input_common/CMakeLists: Make some warnings errorsGravatar Lioncash1-9/+66
Makes the input_common code warnings consistent with the rest of the codebase.
2020-08-15common: Make use of [[nodiscard]] where applicableGravatar Lioncash1-101/+103
Now that clang-format makes [[nodiscard]] attributes format sensibly, we can apply them to several functions within the common library to allow the compiler to complain about any misuses of the functions.
2019-02-26common/vector_math: Move Vec[x] types into the Common namespaceGravatar Lioncash1-2/+2
These types are within the common library, so they should be using the Common namespace.
2018-08-08vector_math: Use variable template version of is_signed in Vec classesGravatar Lioncash1-3/+3
Same behavior, less code
2018-08-07vector_math: Remove unimplemented function prototypesGravatar Lioncash1-23/+0
2018-08-07vector_math: Make functions constexpr where applicableGravatar Lioncash1-154/+179
2018-08-07vector_math: Convert typedefs to type aliasesGravatar Lioncash1-3/+3
2018-05-01vector_math: Ensure members are always initializedGravatar Lioncash1-9/+9
Ensures that values are always in a well-defined state.
2018-04-19vector_math: Remove AsArray() and Write() functions from Vec[2,3,4]Gravatar Lioncash1-30/+0
These are all unused and the Write() ones should arguably not even be in the interface. There are better ways to provide this if we ever need it (like iterators).
2017-09-30Fixed type conversion ambiguityGravatar Huw Pascoe1-9/+3
2017-09-27Disable unary operator- on Math::Vec2/Vec3/Vec4 for unsigned types.Gravatar Subv1-4/+8
It is unlikely we will ever use this without first doing a Cast to a signed type. Fixes 9 "unary minus operator applied to unsigned type, result still unsigned" warnings on MSVC2017.3
2017-07-11vector_math: remove dead template parameterGravatar wwylele1-1/+1
2017-07-11vector_math: remove broken SFINAE stuffGravatar wwylele1-3/+2
this was originally added to eliminate warnings on MSVC, but it doesn't work for custom types.
2017-07-11SwRasterizer: Flip the vertex quaternions before clipping (if necessary).Gravatar Subv1-1/+1
2017-05-20pica/swrasterizer: implement procedural textureGravatar wwylele1-0/+10
2016-12-26vector math: add implementation of Length and NormalizeGravatar wwylele1-0/+19
2016-09-29Common: Remove dangerous Vec[234] array constructorsGravatar Yuri Kunde Schlesner1-3/+0
They're not currently used, and it's easy to accidentally pass a single pointer argument to them, causing an out-of-bounds read.
2016-09-18Manually tweak source formatting and then re-run clang-formatGravatar Yuri Kunde Schlesner1-12/+6
2016-09-18Sources: Run clang-format on everything.Gravatar Emmanuel Gil Peyrot1-325/+382
2016-03-18vector_math: Add missing member in Vec4's SetZero functionGravatar Lioncash1-1/+4
2015-11-12fix failure on gcc and clangGravatar wwylele1-3/+3
2015-11-12disable unary minus when the type is not signedGravatar wwylele1-0/+4
silent warning C4146 on msvc
2015-05-30Move video_core/math.h to common/vector_math.hGravatar archshift1-0/+0
The file only contained vector manipulation code, and such widely-useable code doesn't belong in video_core.
2015-05-29Remove every trailing whitespace from the project (but externals).Gravatar Emmanuel Gil Peyrot1-1/+1
2015-02-16VideoCore: Fix a typo in Vec4 MakeVec(T, Vec3<T>), where the second argument ↵Gravatar Emmanuel Gil Peyrot1-1/+1
was Vec2<T> instead.
2015-02-04VideoCore: Added same-component swizzlers to math utility functions.Gravatar bunnei1-16/+35
2014-12-20License changeGravatar purpasmart961-1/+1
2014-08-25Math: Warning fixes.Gravatar Tony Wasserka1-14/+23
2014-08-25Pica/Math: Improved the design of the Vec2/Vec3/Vec4 classes and simplified ↵Gravatar Tony Wasserka1-81/+115
rasterizer code accordingly. - Swizzlers now return const objects so that things like "first_vec4.xyz() = some_vec3" now will fail to compile (ideally we should support some vector holding references to make this actually work). - The methods "InsertBeforeX/Y/Z" and "Append" have been replaced by more versions of MakeVec, which now also supports building new vectors from vectors. - Vector library now follows C++ type promotion rules (hence, the result of Vec2<u8> with another Vec2<u8> is now a Vec2<int>).
2014-08-12Video core: Add utility class for vector operations.Gravatar Tony Wasserka1-0/+578
I wrote most of this for ppsspp, so I hold full copyright over it. In addition to the original release in ppsspp, this provides functionality to easily extend e.g. two-dimensional vectors to three-dimensional vectors.