]> git.nega.tv - josh/narcissus/log
josh/narcissus
2 years agoSwitch thread token to `std::array::from_fn`
Joshua Simmons [Thu, 8 Sep 2022 16:55:24 +0000 (18:55 +0200)]
Switch thread token to `std::array::from_fn`

2 years agoAdd `min`, `max` and `clamp` functions
Joshua Simmons [Thu, 8 Sep 2022 06:51:34 +0000 (08:51 +0200)]
Add `min`, `max` and `clamp` functions

2 years agoFix some clippy lints
Joshua Simmons [Wed, 7 Sep 2022 21:54:57 +0000 (23:54 +0200)]
Fix some clippy lints

2 years agoImplement `from_axis_angle` for `Mat4`
Joshua Simmons [Wed, 7 Sep 2022 20:58:21 +0000 (22:58 +0200)]
Implement `from_axis_angle` for `Mat4`

2 years agoAdd missing axis vectors for `Vec3`
Joshua Simmons [Wed, 7 Sep 2022 20:57:17 +0000 (22:57 +0200)]
Add missing axis vectors for `Vec3`

2 years agoAdd extra vector operators
Joshua Simmons [Wed, 7 Sep 2022 20:55:41 +0000 (22:55 +0200)]
Add extra vector operators

Add Add/Sub/Mul/Div by scalar
Add Neg

2 years agoAdd unit types for degrees and radians
Joshua Simmons [Wed, 7 Sep 2022 20:53:40 +0000 (22:53 +0200)]
Add unit types for degrees and radians

2 years agoRework maths library
Joshua Simmons [Tue, 6 Sep 2022 21:43:38 +0000 (23:43 +0200)]
Rework maths library

Split into multiple files.
Add `Affine2` and `Affine3` transformation types.
Add `Point2` and `Point3` types.
Use macro instead of repeating basic `Point` and `Vec` implementation.
Change `Mat4 * Point` to use homogeneous coordinates where `w=1`.
Change `Mat4 * Vec` to use homogeneous coordinates where `w=0`.

2 years agoAdd `from_translation` to `Mat4` and tidy tests
Joshua Simmons [Tue, 6 Sep 2022 07:18:41 +0000 (09:18 +0200)]
Add `from_translation` to `Mat4` and tidy tests

2 years agoAdd `ONE` associated consts to vector types
Joshua Simmons [Tue, 6 Sep 2022 07:17:41 +0000 (09:17 +0200)]
Add `ONE` associated consts to vector types

2 years agoAdd SDL2 dependency to github workflow
Joshua Simmons [Mon, 5 Sep 2022 21:39:59 +0000 (23:39 +0200)]
Add SDL2 dependency to github workflow

2 years agoAvoid hardcoding the path to the mold linker
Joshua Simmons [Mon, 5 Sep 2022 21:35:59 +0000 (23:35 +0200)]
Avoid hardcoding the path to the mold linker

2 years agoAdd mold to github workflow
Josh Simmons [Mon, 5 Sep 2022 21:32:42 +0000 (23:32 +0200)]
Add mold to github workflow

2 years agoCreate rust workflow
Josh Simmons [Mon, 5 Sep 2022 21:28:07 +0000 (23:28 +0200)]
Create rust workflow

2 years agoSplit maths library into multiple modules
Joshua Simmons [Mon, 5 Sep 2022 21:24:49 +0000 (23:24 +0200)]
Split maths library into multiple modules

2 years agoRename `virtual_vec` inner types
Joshua Simmons [Mon, 5 Sep 2022 06:40:33 +0000 (08:40 +0200)]
Rename `virtual_vec` inner types

Remove `virtual` from the inner module names to avoid repetition.
Rename `RawVirtualVec` to `VirtualRawVec` so it's more consistent.

2 years agoUpdate build script profile defaults
Joshua Simmons [Sun, 4 Sep 2022 21:05:10 +0000 (23:05 +0200)]
Update build script profile defaults

Add optimizations to debug build.
Add LTO to release build.

2 years agoAdd maths dependency to narcissus
Joshua Simmons [Sun, 4 Sep 2022 21:03:50 +0000 (23:03 +0200)]
Add maths dependency to narcissus

2 years agoStart implementing basic maths functions
Joshua Simmons [Sun, 4 Sep 2022 21:01:33 +0000 (23:01 +0200)]
Start implementing basic maths functions

2 years agoReplace `make_array` with `std::array::from_fn`
Joshua Simmons [Sun, 4 Sep 2022 11:06:33 +0000 (13:06 +0200)]
Replace `make_array` with `std::array::from_fn`

2 years ago[narc-gpu] Remove unnecessary unsafe block
Joshua Simmons [Tue, 30 Aug 2022 05:25:30 +0000 (07:25 +0200)]
[narc-gpu] Remove unnecessary unsafe block

2 years ago[vulkan-sys] Add implicit unsafe to vk_check macro
Joshua Simmons [Tue, 30 Aug 2022 05:23:39 +0000 (07:23 +0200)]
[vulkan-sys] Add implicit unsafe to vk_check macro

Unifies it with the narcissus-gpu version.

2 years agoUse &CStr for `get_instance_proc_address`
Joshua Simmons [Mon, 29 Aug 2022 06:38:07 +0000 (08:38 +0200)]
Use &CStr for `get_instance_proc_address`

2 years agoCreate LICENCE
Josh Simmons [Sun, 28 Aug 2022 10:05:16 +0000 (12:05 +0200)]
Create LICENCE

2 years agoInitial Commit
Joshua Simmons [Sat, 22 Jan 2022 20:36:05 +0000 (21:36 +0100)]
Initial Commit