1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2024-11-27 14:37:16 +00:00
Commit Graph

272 Commits

Author SHA1 Message Date
Zeno Rogue
3f20ba9d29 getCdata and getBits: prod -> hybri 2020-05-15 18:31:32 +02:00
Zeno Rogue
58a4583bb7 fixed Goldberg hybrid spaces 2020-05-15 17:40:42 +02:00
Zeno Rogue
aea3ac848b hybrid:: in draw underlying, use a longer range in H2 2020-05-15 11:48:04 +02:00
Zeno Rogue
29c7faa264 stretch < -1 (seems not to be working correctly) 2020-05-09 18:33:37 +02:00
Zeno Rogue
c35705cc5c fixed hybrid bitruncated ray: works after clear map 2020-05-09 18:32:16 +02:00
Zeno Rogue
fd9ea8793e stretch:: renamed rots_twist to stretch, also implemented for slr 2020-05-09 10:41:15 +02:00
Zeno Rogue
ecb88d8501 qtm:: fixed 2020-05-09 02:35:15 +02:00
Zeno Rogue
83c0ade9d6 revert hyperbolic qtm 2020-05-09 00:57:59 +02:00
Zeno Rogue
54804bc08b stretched spherical geometry 2020-05-08 21:18:47 +02:00
Zeno Rogue
02de6fa330 ray:: bitruncated product 2020-05-08 21:14:31 +02:00
Zeno Rogue
a6a0995e85 SOLV_ALL 2020-04-29 15:15:18 +02:00
Zeno Rogue
0472bf764f moved all projection-related parameters to a special struct; another copy of that struct created for rug 2020-04-17 00:53:58 +02:00
Zeno Rogue
68ee90fcba export get_acceleration 2020-04-12 20:34:39 +02:00
Zeno Rogue
ce441eb4bc more accurate lazy for SolNih 2020-04-12 20:34:16 +02:00
Zeno Rogue
825a8aba82 nisot:: parallel_transport now also uses RK4 2020-04-11 15:28:22 +02:00
Zeno Rogue
e4a8b73819 nisot:: nicer precision setting 2020-04-11 15:08:24 +02:00
Zeno Rogue
c5d7479d00 nisot:: geodesic_step is now based on RK4 instead of midpoint 2020-04-11 15:01:01 +02:00
Zeno Rogue
b79eb4de1d fixed cellcount 2020-04-06 09:26:59 +02:00
Zeno Rogue
1b9cdab98c added missing CAP_COMMANDLINE guards 2020-04-06 09:13:20 +02:00
Zeno Rogue
c60714f145 slr::lift_matrix as a separate function 2020-04-01 11:26:58 +02:00
Zeno Rogue
f9580d29f6 fixed a bug in inverse_exp in Solv (caused wobbling) 2020-03-25 13:44:51 +01:00
Zeno Rogue
3caf700868 solv:: fixed another potential problem 2020-03-25 13:43:35 +01:00
Zeno Rogue
6eb3270900 qtm rewritten 2020-03-07 04:47:10 +01:00
Zeno Rogue
a241a3df61 nilv:: get_heptagon_at 2020-02-13 11:09:27 +01:00
Zeno Rogue
e133fffd5d nilv:: nilwidth option 2020-02-13 11:09:18 +01:00
Zeno Rogue
1962900ce0 fixup nonisotropic.cpp 2020-01-16 17:13:57 +01:00
Zeno Rogue
dd0b4ec414 sn:: cleanup, also changed z_to_iz function from tanh to Poincare-based 2020-01-16 17:13:57 +01:00
Zeno Rogue
1b87a22874 adjusted sn shader 2020-01-16 17:13:57 +01:00
Zeno Rogue
549aa5bdb1 sn:: changed table presentation to Poincare 2020-01-16 17:13:47 +01:00
Zeno Rogue
ec6ffded34 older compilers 2019-12-27 13:11:31 +01:00
Zeno Rogue
769982040d renamed solnihv:: to sn:: and solnih to sn::in() 2019-12-14 12:28:45 +01:00
Zeno Rogue
8cfc5a578f renamed penrose.cpp to kite.cpp and 'penrose' to 'kite::in()' 2019-12-14 12:12:24 +01:00
Zeno Rogue
d5c8aebf16 renamed binary:: to bt:: and binarytiling to bt::in() 2019-12-14 12:05:01 +01:00
Zeno Rogue
f772f9b7fd replaced 'archimedean' with 'arcm::in()' 2019-12-14 11:57:23 +01:00
Zeno Rogue
6b90261f2f fixed celldistance in sl2 2019-12-06 12:14:03 +01:00
Zeno Rogue
63c4886722 replaced product drawing with the general routine 2019-12-06 12:13:09 +01:00
Zeno Rogue
ac9d18adfb simplified the drawing algo for product 2019-12-06 11:47:26 +01:00
Zeno Rogue
99ab57086b in_wallopt(): auto in racing 2019-12-06 11:45:19 +01:00
Zeno Rogue
4d5928fcc0 fixed a potential crash caused by reentrant hybrid::link 2019-11-30 19:45:43 +01:00
Zeno Rogue
56e9f95656 fixed freeze when enabling cspin/cmirror without enabling csteps 2019-11-30 19:32:43 +01:00
Zeno Rogue
c3b12328e0 renamed hrmap_rotation_space::relative_matrix to adj 2019-11-30 18:06:48 +01:00
Zeno Rogue
aef7e7ef37 fixed potential crash in get_umap 2019-11-30 18:06:48 +01:00
Zeno Rogue
46892a35c4 hybrid:: celldistance 2019-11-30 18:06:48 +01:00
Zeno Rogue
77c1e95701 product:: cspin and also cmirror 2019-11-30 18:06:48 +01:00
Zeno Rogue
1518d406b5 product:: cspin is now validated 2019-11-30 18:06:48 +01:00
Zeno Rogue
42a41835dc product config dialog 2019-11-30 18:06:48 +01:00
Zeno Rogue
25bc0f56de kth-turn product space (via CLI) 2019-11-30 18:06:48 +01:00
Zeno Rogue
937fdcd0e2 fixed a crash in kd2xE 2019-11-30 18:06:48 +01:00
Zeno Rogue
2b62b23888 product:: adj 2019-11-30 18:06:48 +01:00
Zeno Rogue
f3c97f9342 product:: works with Euclidean 2019-11-30 18:06:48 +01:00
Zeno Rogue
5add972bdd product:: using in_h2xe() and in_s2xe() more consistently 2019-11-30 18:06:48 +01:00
Zeno Rogue
d63b14da5c PIU now works in the underlying map -- underlying geometry only is too fragile 2019-11-30 18:06:47 +01:00
Zeno Rogue
7e8ede4bd6 relative_matrix and adj changed 2019-11-30 18:05:23 +01:00
Zeno Rogue
622b683e33 drawcell parameter is now cell, not cellwalker (need to check half-elliptic) 2019-11-30 18:04:54 +01:00
Zeno Rogue
222e4aa78b mapeditor:: save geometry details 2019-11-23 21:08:47 +01:00
Zeno Rogue
bc2ce4f3dc alternative honeycomb in Nil 2019-11-23 20:39:38 +01:00
Zeno Rogue
89225f4632 missing override attributes 2019-11-15 14:24:17 +01:00
Zeno Rogue
e075bc8c6d formula pattern: extra parameters available, also shielded some parameters from crashes 2019-11-15 13:50:23 +01:00
Zeno Rogue
be5dc871b6 relative_matrix in Sol variants (other than cat) 2019-11-15 13:50:23 +01:00
Zeno Rogue
cd023e982e szgmod used in relative_matrix in binary 2019-11-14 22:36:04 +01:00
Zeno Rogue
decd30164d fixed product : spin_to/spin_from 2019-11-14 19:24:54 +01:00
Zeno Rogue
1f9501f746 fixed product spaces 2019-11-14 19:06:48 +01:00
Zeno Rogue
f96b497d2e fixed product 2019-11-14 18:22:48 +01:00
Zeno Rogue
3eee611eca nisot::local_perspective moved to display_data 2019-11-14 17:20:55 +01:00
Zeno Rogue
aeaaf7586a refactored map functions: ddspin, iddspin, spacedist, spin_angle, virtualRebase[simple], adj 2019-11-14 16:51:50 +01:00
Zeno Rogue
109dd9823c simplified ddspin/iddspin/cellgfxdist, replaced cellrelmatrix with adj/iadj 2019-11-14 00:27:59 +01:00
Zeno Rogue
ef9e2236ba viewctr is no more... major reduction of redundancy/complexity 2019-11-14 00:26:50 +01:00
Zeno Rogue
74a139ca3e Z period in product geometries 2019-11-13 20:48:38 +01:00
Zeno Rogue
cc9e03ddb8 product:: product projections 2019-11-09 13:14:42 +01:00
Zeno Rogue
6dd47c903d nilv:: works with small periods 2019-11-08 15:42:31 +01:00
Zeno Rogue
add037d4e8 asonov:: changed direct checking of gArnoldCat to asonov::in() 2019-11-08 15:34:51 +01:00
Zeno Rogue
d199411248 new tiling: Arnold's cat 2019-11-08 15:01:03 +01:00
Zeno Rogue
83f8216fdc nilv:: comment about periodicity 2019-11-08 14:57:56 +01:00
Zeno Rogue
73197c86c6 nilv:: qSMALL flag set for Nil quotients when appropriate 2019-11-08 14:57:44 +01:00
Zeno Rogue
b80caa11a6 moved zgmod to util 2019-11-08 14:56:54 +01:00
Zeno Rogue
3f18d91643 raycaster reset on hybrid::configure 2019-11-02 22:31:15 +01:00
Zeno Rogue
d4b2e0f88b niltorus improvements 2019-11-02 22:19:32 +01:00
Zeno Rogue
8ba303f0f4 nil:: fixed zgmod 2019-11-02 22:18:28 +01:00
Zeno Rogue
e8de4d088c fixed a possible crash in hybrid 2019-11-02 20:28:52 +01:00
Zeno Rogue
72b52e178f underlying space view is now available in product space 2019-10-28 17:26:59 +01:00
Zeno Rogue
79cdbf7a53 correct cgi.wallstart in hybrid 2019-10-28 17:20:28 +01:00
Zeno Rogue
a9d3efe02c solnihv:: set result[3] to zero, as otherwise it may become infinite 2019-10-26 18:24:45 +02:00
Zeno Rogue
72e6859dd5 Penrose staircase pattern in Nil, and diagonal pattern in Crystal 2019-10-25 12:47:03 +02:00
Zeno Rogue
85a08d205d refactored celldraw 2019-10-25 12:44:41 +02:00
Zeno Rogue
fd8f363b8f nil:: quotient spaces 2019-10-25 08:52:18 +02:00
Zeno Rogue
bb7e96a3d0 atan/atan2 functions in slshader 2019-10-21 22:43:19 +02:00
Zeno Rogue
adee8aa699 wall optimization option (-wallopt): do not draw things behind walls 2019-10-12 11:21:00 +02:00
Zeno Rogue
eb591f5dc8 stabilized file names for tabled inverse files 2019-10-05 18:53:51 +02:00
Zeno Rogue
a5579af826 disabled marking log(2) and log(3) as constexpr 2019-10-04 17:42:25 +02:00
Zeno Rogue
ec465b2afc separate shader for stretched Sol, to avoid glitches 2019-10-04 13:03:50 +02:00
Zeno Rogue
67aceb80a5 fixup 2019-10-03 20:12:25 +02:00
Zeno Rogue
d69cb4e946 SolN manifold 2019-10-03 20:10:48 +02:00
Zeno Rogue
d6ab96f821 non-isotropic hyperbolic space 2019-10-01 05:03:46 +02:00
Zeno Rogue
a741446b7b better rendering of Solv into the glitchy region 2019-09-26 13:23:44 +02:00
Zeno Rogue
a47be2f89f fixed more warnings 2019-09-13 19:36:16 +02:00
Zeno Rogue
973d8cb451 fixed some warnings 2019-09-13 18:53:12 +02:00
Zeno Rogue
2a950369ba solv:: CAP_SOLV 2019-09-13 17:45:31 +02:00
Zeno Rogue
334ffd644a hyperweb compiles 2019-09-13 03:47:55 +02:00
Zeno Rogue
d1bf6fef5e replaced product::product_sphere() 2019-09-12 22:50:16 +02:00
Zeno Rogue
d5a99e67e0 more intuitive tiling selection 2019-09-12 22:50:16 +02:00
Zeno Rogue
f8963a1c75 rots:: show the underlying geometry 2019-09-12 22:50:16 +02:00
Zeno Rogue
e600c0af0a improved the rendering of S2xE rings 2019-09-12 22:50:16 +02:00
Zeno Rogue
7b76991dcd hybrid::do_draw 2019-09-12 22:50:16 +02:00
Zeno Rogue
848eb8f48b export everything: modules compiled separately 2019-09-12 22:50:16 +02:00
Zeno Rogue
82f24b4b6c exporting necessary stuff all over (in progress) 2019-09-12 22:50:16 +02:00
Zeno Rogue
9647cbd47e added #include hyper.h to all cpp files 2019-09-12 22:50:16 +02:00
Zeno Rogue
561c8e975c reduced glitches in slr 2019-09-12 22:50:16 +02:00
Zeno Rogue
ecc6908807 fixes for older compilers 2019-09-12 22:50:16 +02:00
Zeno Rogue
443ba65730 rots:: fixed the confusion when switching tilings 2019-09-12 22:50:16 +02:00
Zeno Rogue
04a1c2242b rots:: optimization of matrices 2019-09-12 22:50:15 +02:00
Zeno Rogue
b0b843fc22 rots:: fixed ordering of vertices on walls 2019-09-12 22:50:15 +02:00
Zeno Rogue
2e066c106c renamed gSL2 to gRotSpace 2019-09-12 22:50:15 +02:00
Zeno Rogue
c33c79a902 generalized PSL2 to spherical rotation spaces too 2019-09-12 22:50:15 +02:00
Zeno Rogue
d046211a9c better flagging of geometries, and isometry spaces nicely selectable 2019-09-12 22:50:15 +02:00
Zeno Rogue
afa3cd599d SLR works with Archimedean 2019-09-12 22:50:15 +02:00
Zeno Rogue
0311210576 arg:: slr:: configurable slrange 2019-09-12 22:50:15 +02:00
Zeno Rogue
a0140254c8 slr:: works with bitruncated tilings (Archimedean not tested) 2019-09-12 22:50:15 +02:00
Zeno Rogue
86ca34669a slr:: generalized to other regular 2019-09-12 22:50:15 +02:00
Zeno Rogue
54934b9871 product:: fixed backwall optimization in TPP view 2019-09-12 22:50:15 +02:00
Zeno Rogue
61ea588ffb shmup for product: player movement 2019-09-12 22:50:15 +02:00
Zeno Rogue
ce46243b55 get_shiftview_of used gpush instead of rgpush; fixed wallradar 2019-09-12 22:50:15 +02:00
Zeno Rogue
3e7a604408 fixup to know actual_geometry 2019-09-12 22:50:15 +02:00
Zeno Rogue
7feb2ddcb3 hybrid knows actual geometry 2019-09-12 22:50:15 +02:00
Zeno Rogue
3e715440cb slr:: awesome default range values 2019-09-12 22:50:15 +02:00
Zeno Rogue
afac8bf24a fixup to shaders and everything 2019-09-12 22:50:15 +02:00
Zeno Rogue
02269267c9 slr:: drawing of looped images, better shader in general, special sightrange setting 2019-09-12 22:50:15 +02:00
Zeno Rogue
3c254e7f55 PSL2 in geometry list 2019-09-12 22:50:15 +02:00
Zeno Rogue
29a54ab5d9 nilv:: simpler honeycomb 2019-09-12 22:50:15 +02:00
Zeno Rogue
47d309e408 fixed hdist computation in SL, also fixed hpxy and hpxy 2019-09-12 22:50:15 +02:00
Zeno Rogue
96d7496043 refactored all the operations on View 2019-09-12 22:50:15 +02:00
Zeno Rogue
65ce70cb2c product:: removed useless debug 2019-09-12 22:50:15 +02:00
Zeno Rogue
1e6970ca28 hybrid:: refactored the common parts of prod and sl2, also used them when applicable 2019-09-12 22:50:15 +02:00
Zeno Rogue
136b931609 PSL(2,R) 2019-09-12 22:50:15 +02:00
Zeno Rogue
2f954d0538 nicer handling of WDIM, GDIM, MDIM, sig 2019-09-12 22:50:15 +02:00
Zeno Rogue
0ab4a30406 product:: backwall optimization 2019-09-12 22:50:15 +02:00
Zeno Rogue
712f740657 product:: fixed cosh to cos_auto 2019-09-12 22:50:15 +02:00
Zeno Rogue
597140e28d product:: wallradar and TPP 2019-09-12 22:50:15 +02:00
Zeno Rogue
fe266d3485 compilation in C++11 2019-09-12 22:50:14 +02:00
Zeno Rogue
d91adc45a5 product:: in_underlying functions now simply call f when not in product 2019-09-12 22:50:14 +02:00
Zeno Rogue
42b2aa7596 nisot:: functions get product functions 2019-09-12 22:50:14 +02:00
Zeno Rogue
3528d8efa3 product:: debug removed from wall generation 2019-09-12 22:50:14 +02:00
Zeno Rogue
a25bf14cff added missing clearmemory in nonisotropic geometries; this also fixed a crash in Archimedean 2019-09-12 22:50:14 +02:00
Zeno Rogue
123a972261 product:: correct walls in Archimedean 2019-09-12 22:50:14 +02:00
Zeno Rogue
1a1725dec8 product:: selectable from menu 2019-09-12 22:50:14 +02:00
Zeno Rogue
d27f628527 adjust number of levels drawn 2019-09-12 22:50:13 +02:00
Zeno Rogue
ecfef817a9 auto-adjusted plevel 2019-09-12 22:50:13 +02:00
Zeno Rogue
a2919f5a9c product:: works for bitruncated tilings 2019-09-12 22:50:13 +02:00
Zeno Rogue
e02290ec98 product:: 'flat' wall faces 2019-09-12 22:50:13 +02:00
Zeno Rogue
e59e180b87 product:: some computations need gmatrix0 for underlying geometry 2019-09-12 22:50:13 +02:00
Zeno Rogue
d79a6faa6f yet better S2xE renderer 2019-09-12 22:50:13 +02:00