Commit graph

  • 121934c4c3 Encapsulate construction Aaron Fenyes 2024-09-04 12:58:55 -07:00
  • a4236a34df Ray-caster: dim the interior layers of spheres Aaron Fenyes 2024-09-02 15:15:18 -07:00
  • f148552964 Ray-caster: only draw the top few fragments Aaron Fenyes 2024-08-29 15:01:38 -07:00
  • 6db9f5be6c Enlarge the test construction to six spheres Aaron Fenyes 2024-08-28 17:14:55 -07:00
  • 3a721a4cc8 Ray-caster: enlarge the construction data uniforms Aaron Fenyes 2024-08-28 16:06:33 -07:00
  • 8fde202911 Ray-caster: drop unused depth-pair array Aaron Fenyes 2024-08-28 15:52:19 -07:00
  • 4afc82034b Ray-caster: sort fragments while shading Aaron Fenyes 2024-08-28 14:37:29 -07:00
  • e80adf831d Ray-caster: correct hit detection Aaron Fenyes 2024-08-28 01:59:46 -07:00
  • 3d7ee98dd6 Ray-caster: check layer count Aaron Fenyes 2024-08-28 01:50:17 -07:00
  • c04e29f586 Reduce the frame interval sample frequency Aaron Fenyes 2024-08-28 01:47:38 -07:00
  • 01c2af6615 Rotate and translate construction Aaron Fenyes 2024-08-27 18:39:58 -07:00
  • a40a110788 Ray-caster: only draw when the scene is changed Aaron Fenyes 2024-08-27 13:55:08 -07:00
  • f62f44b5a7 Optimization: decouple internal and uniform SPHERE_MAX Aaron Fenyes 2024-08-27 00:00:48 -07:00
  • ec48592ef1 Ray-caster: add a frame time monitor Aaron Fenyes 2024-08-26 23:39:51 -07:00
  • 5e9c5db231 Ray-caster: switch from draw effect to animation loop Aaron Fenyes 2024-08-26 16:06:37 -07:00
  • bf140efaf7 Ray-caster: remove hard-coded test construction Aaron Fenyes 2024-08-26 13:51:01 -07:00
  • cbec31f5df Ray-caster: pass colors in through uniforms Aaron Fenyes 2024-08-26 13:41:34 -07:00
  • b9370ceb41 Ray-caster: label controls Aaron Fenyes 2024-08-26 01:47:53 -07:00
  • 85db7b9be0 Ray-caster: pass the sphere count as a uniform Aaron Fenyes 2024-08-26 00:43:42 -07:00
  • c5fe725b1b Ray-caster: automate getting uniform array locations Aaron Fenyes 2024-08-25 22:22:14 -07:00
  • 5bf23fa789 Ray-caster: pass spheres in through uniforms Aaron Fenyes 2024-08-25 21:40:46 -07:00
  • 206a2df480 Ray-caster: add a third test sphere Aaron Fenyes 2024-08-25 16:41:31 -07:00
  • c18cac642b Ray-caster: generalize depth sorting Aaron Fenyes 2024-08-25 00:47:36 -07:00
  • 8798683d25 Ray-caster: store sphere data in arrays Aaron Fenyes 2024-08-25 00:00:28 -07:00
  • b9587872d3 Ray-caster: don't bother clearing the screen Aaron Fenyes 2024-08-24 11:31:22 -07:00
  • 766d56027c Ray-caster: move shaders to separate files Aaron Fenyes 2024-08-24 11:26:53 -07:00
  • 25da6ca062 Ray-caster: adjust opacity of highlighting Aaron Fenyes 2024-08-24 11:00:50 -07:00
  • e3df765f16 Ray-caster: highlight intersections and cusps Aaron Fenyes 2024-08-24 01:38:06 -07:00
  • f1029b3102 Ray-caster: map output into sRGB space Aaron Fenyes 2024-08-24 01:01:13 -07:00
  • 87763fc458 Ray-caster: tidy up sphere shading Aaron Fenyes 2024-08-24 00:08:22 -07:00
  • 2ef0fdd3e2 Ray-cast two spheres, with hard-coded depth sorting Aaron Fenyes 2024-08-23 12:56:54 -07:00
  • d2cecf69db Ray-cast a translucent sphere Aaron Fenyes 2024-08-23 00:16:41 -07:00
  • c78a041dc7 Write a ray-caster for inversive spheres Aaron Fenyes 2024-08-22 22:08:34 -07:00
  • f274119da6 Enable depth testing Aaron Fenyes 2024-08-22 18:17:01 -07:00
  • 1fbeb23194 Add rotation control Aaron Fenyes 2024-08-22 00:04:58 -07:00
  • 80b210e667 Make the projection map a uniform Aaron Fenyes 2024-08-21 23:07:14 -07:00
  • 81f9b8e040 Find vertex attribute indices in advance Aaron Fenyes 2024-08-21 22:36:56 -07:00
  • 5885189b04 Draw a mesh in perspective, and in color Aaron Fenyes 2024-08-21 17:31:17 -07:00
  • 5bec0306ce Tidy up Rust .gitignore files lang-trials Aaron Fenyes 2024-08-21 13:04:56 -07:00
  • fd3cbae1b4 Get a WebGL canvas working in Sycamore Aaron Fenyes 2024-08-21 13:01:33 -07:00
  • 8cb73f88d0 Rust native benchmark: drop unused dependencies Aaron Fenyes 2024-08-19 13:12:50 -07:00
  • eeb0f00534 Rust benchmark: write native version Aaron Fenyes 2024-08-19 12:20:56 -07:00
  • 8ce3e251d7 Drop unused dependency and use declaration Aaron Fenyes 2024-08-13 13:51:54 -07:00
  • 543f348cd8 Rust benchmark: drop old debug code Aaron Fenyes 2024-08-13 13:47:34 -07:00
  • 0abcb995b5 Rust benchmark: rename package Aaron Fenyes 2024-08-13 13:40:33 -07:00
  • d864ab5abe Drop second attempt at static matrices Aaron Fenyes 2024-08-13 13:29:58 -07:00
  • fb51e00503 Remove unnecessary type annotations Aaron Fenyes 2024-08-13 13:14:54 -07:00
  • 144bfb8faf Scala benchmark: use fullLinkJS output Aaron Fenyes 2024-08-10 21:30:36 -07:00
  • 27ada6566b Scala benchmark: step rotation by multiplying Aaron Fenyes 2024-08-10 19:11:55 -07:00
  • 3665351e12 Scala benchmark: adjust interface code to match Rust Aaron Fenyes 2024-08-09 15:19:48 -07:00
  • 14fb6d01f0 Rust benchmark: tidy up a bit Aaron Fenyes 2024-08-09 15:18:13 -07:00
  • 0b3fe689cd Rust trial: write benchmark Aaron Fenyes 2024-08-09 15:12:44 -07:00
  • 6b0fad89dc Scala trial: write benchmark Aaron Fenyes 2024-08-08 00:26:26 -07:00
  • 0bd025dd14 Scala trial: clean up Laminar interface Aaron Fenyes 2024-08-07 13:40:09 -07:00
  • 4f30f31686 Rust trial: Make git ignore Cargo.lock Aaron Fenyes 2024-08-07 13:36:48 -07:00
  • c376fcdad8 Hack together a "Hello, world" in Scala with Laminar Aaron Fenyes 2024-08-07 13:32:12 -07:00
  • 244f222eb0 Move the engine into a module Aaron Fenyes 2024-07-29 13:14:32 -07:00
  • 42bdfabd91 Rust trial: port interface to Sycamore Aaron Fenyes 2024-07-29 05:30:16 -07:00
  • 12abef4076 Trial a Rust engine powering a Civet interface Aaron Fenyes 2024-07-28 21:10:04 -07:00
  • d7dbee4c05 Stow algebraic engine prototype Aaron Fenyes 2024-07-28 20:50:04 -07:00
  • 9d69a900e2 Irisawa hexlet: use Abe's terminology in comments gram Aaron Fenyes 2024-07-18 03:39:41 -07:00
  • 8a77cd7484 Irisawa hexlet: drop unviable approach Aaron Fenyes 2024-07-18 03:21:46 -07:00
  • a26f1e3927 Add Irisawa hexlet example Aaron Fenyes 2024-07-18 03:16:57 -07:00
  • 19a4d49497 Clean up example formatting Aaron Fenyes 2024-07-18 01:48:05 -07:00
  • 71c10adbdd Overlapping pyramids: drop outdated comment Aaron Fenyes 2024-07-18 01:12:49 -07:00
  • 33c09917d0 Correct scope of guess constants Aaron Fenyes 2024-07-18 01:05:13 -07:00
  • b24dcc9af8 Report success correctly when step limit is reached Aaron Fenyes 2024-07-18 01:04:40 -07:00
  • b040bbb7fe Drop old code from examples Aaron Fenyes 2024-07-18 00:50:48 -07:00
  • 9007c8bc7c Circles in triangle: jiggle the guess Aaron Fenyes 2024-07-18 00:43:44 -07:00
  • a7f9545a37 Circles in triangle: correct frozen variables Aaron Fenyes 2024-07-18 00:43:00 -07:00
  • 3764fde2f6 Clean up formatting of notes Aaron Fenyes 2024-07-18 00:27:10 -07:00
  • 24dae6807b Clarify notes on tangency Aaron Fenyes 2024-07-18 00:16:23 -07:00
  • 74c7f64b0c Correct sign of normal in plane utility Aaron Fenyes 2024-07-18 00:03:12 -07:00
  • d0340c0b65 Correct point utility again Aaron Fenyes 2024-07-17 23:37:28 -07:00
  • 69a704d414 Use notes' sign convention for light cone basis Aaron Fenyes 2024-07-17 23:07:34 -07:00
  • 01f44324c1 Tetrahedron radius ratio: find radius ratio Aaron Fenyes 2024-07-17 22:45:17 -07:00
  • 96ffc59642 Tetrahedron radius ratio: tweak guess Aaron Fenyes 2024-07-17 19:01:34 -07:00
  • a02b76544a Tetrahedron radius ratio: add circumscribed sphere Aaron Fenyes 2024-07-17 18:55:36 -07:00
  • 6e719f9943 Tetrahedron radius ratio: correct vertex guesses Aaron Fenyes 2024-07-17 18:27:58 -07:00
  • d51d43f481 Correct point utility Aaron Fenyes 2024-07-17 18:27:22 -07:00
  • 6d233b5ee9 Tetrahedron radius ratio: correct signs Aaron Fenyes 2024-07-17 18:08:36 -07:00
  • 5abd4ca6e1 Revert "Give spheres positive radii in examples" Aaron Fenyes 2024-07-17 17:49:43 -07:00
  • ea640f4861 Start tetrahedron radius ratio example Aaron Fenyes 2024-07-17 17:33:32 -07:00
  • 4728959ae0 Give spheres positive radii in examples Aaron Fenyes 2024-07-17 17:22:33 -07:00
  • 2038103d80 Write examples directly in light cone basis Aaron Fenyes 2024-07-17 15:37:14 -07:00
  • bde42ebac0 Switch engine to light cone basis Aaron Fenyes 2024-07-17 14:30:43 -07:00
  • e6cf08a9b3 Make tetrahedron faces planar Aaron Fenyes 2024-07-15 23:54:59 -07:00
  • 7c77481f5e Don't constrain self-product of frozen vector Aaron Fenyes 2024-07-15 23:39:05 -07:00
  • 1ce609836b Implement frozen variables Aaron Fenyes 2024-07-15 22:11:54 -07:00
  • b185fd4b83 Switch to backtracking Newton's method in Optim Aaron Fenyes 2024-07-15 15:52:38 -07:00
  • 94e0d321d5 Switch back to BigFloat precision in examples Aaron Fenyes 2024-07-15 14:31:30 -07:00
  • 53d8c38047 Preserve explicit zeros in Gram matrix conversion Aaron Fenyes 2024-07-15 14:08:57 -07:00
  • 7b3efbc385 Clean up backtracking gradient descent code Aaron Fenyes 2024-07-15 13:15:15 -07:00
  • 25b09ebf92 Sketch backtracking Newton's method Aaron Fenyes 2024-07-15 11:32:04 -07:00
  • 3910b9f740 Use Newton's method for polishing Aaron Fenyes 2024-07-11 13:43:52 -07:00
  • d538cbf716 Correct improvement threshold by using unit step Aaron Fenyes 2024-07-10 23:31:44 -07:00
  • 4d5ea062a3 Record gradient and last line search in history Aaron Fenyes 2024-07-09 15:00:13 -07:00
  • 5652719642 Require triangle sides to be planar Aaron Fenyes 2024-07-09 14:10:23 -07:00
  • f84d475580 Visualize neighborhoods of global minima Aaron Fenyes 2024-07-09 14:01:30 -07:00
  • 77bc124170 Change loss function to match gradient Aaron Fenyes 2024-07-09 14:00:24 -07:00