1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2024-11-30 15:39:54 +00:00
Commit Graph

233 Commits

Author SHA1 Message Date
Zeno Rogue
30f964e6e3 ray:: protect_prod applied 2021-09-16 20:53:05 +02:00
Zeno Rogue
35fda985f1 ray:: refactoring in raycaster 2021-09-16 20:50:39 +02:00
Zeno Rogue
610d5cc399 raycaster fix continued 2021-08-06 15:38:54 +02:00
Zeno Rogue
dfa682ea8a fixed a possible bug while raycasting the first frame 2021-08-06 15:03:06 +02:00
Zeno Rogue
5de7eb2bb2 more eqmatrix precision in raycaster 2021-07-13 17:38:59 +02:00
Zeno Rogue
6e6d0a7839 the main (heptagon) cellshape now also uses subcellshape; removed dirdist and get_vertices and introduced get_cellshape instead 2021-07-12 11:07:22 +02:00
Zeno Rogue
4799f7c5f7 ray:: fixed mirrors in product when cells have different degrees 2021-07-09 22:32:00 +02:00
Zeno Rogue
f3fec9434a ray:: fixup to ms when MDIM==3 2021-07-09 22:32:00 +02:00
Zeno Rogue
03fc72e7d2 ray:: reflection now works with multiple types 2021-07-09 22:32:00 +02:00
Zeno Rogue
0aa1d45287 moved ray_iadj from hybrid to hrmap method 2021-07-09 22:32:00 +02:00
Zeno Rogue
9a319e2d2a refactored shvid_full and wall_offset as virtual functions 2021-07-09 22:32:00 +02:00
Zeno Rogue
bc5ecf35e0 ray:: works with complex subcube-based honeycombs 2021-07-07 23:34:15 +02:00
Zeno Rogue
4590271450 ray:: added constants ray_scale, max_wall_offset and max_celltype to textures-as-arrays 2021-07-07 23:33:34 +02:00
Zeno Rogue
ace4ad62fd fixed a bug with the raycaster shader crashing -- (affected Bringris and notknot) 2021-06-09 04:44:04 +02:00
Zeno Rogue
a1d54a819d ray:: in GLES, disable raycaster in most spaces 2021-06-03 13:26:10 +02:00
Zeno Rogue
ba58789d56 ray:: GLES textures are not precise enough for via_texture ): 2021-06-03 13:26:10 +02:00
Zeno Rogue
cf7d19c775 ray:: fixed the interaction of m_via_texture and changing gms_array_size 2021-06-03 13:26:10 +02:00
Zeno Rogue
2c59bb3004 ray:: fixed getters built with wall_via_texture 2021-06-03 13:26:10 +02:00
Zeno Rogue
10bb713422 ray:: fixed missing mediump 2021-06-03 13:26:10 +02:00
Zeno Rogue
f015023421 more text fixes found while translating 2021-05-24 11:42:46 +02:00
Zeno Rogue
3a9f81a248 ray:: fixed crashes when the raycaster is reset while rendering 2021-05-17 14:21:29 +02:00
Zeno Rogue
8681883e58 raycaster:: work with many tile shapes 2021-05-17 14:21:14 +02:00
Zeno Rogue
891f163954 ray:: fixed crashes when rmap is destroyed while in use 2021-05-12 20:19:45 +02:00
Zeno Rogue
1d2b0cf245 ray:: added reset_raycaster_map() function 2021-04-30 19:45:34 +02:00
Zeno Rogue
6e94d7346e fixed the E2xE raycaster 2021-04-30 19:45:22 +02:00
Zeno Rogue
5cc5af932a improved ray error reporting 2021-04-07 18:15:58 +02:00
Zeno Rogue
c4e260341f ray:: raycaster_state now based on cgi_string, not geometry 2021-04-07 18:15:58 +02:00
Zeno Rogue
97ccc07be6 ray:: reset_raycaster now resets rots::saved_matrices_ray 2021-04-07 18:15:58 +02:00
Zeno Rogue
85683d6688 fixup guard 2021-03-30 11:41:52 +02:00
Zeno Rogue
ee1837e3d8 ray:: fixed for nil with nilwidth changed 2021-03-21 12:51:50 +01:00
Zeno Rogue
0f081fb1ab stereographic projection added 2021-03-21 12:51:50 +01:00
Zeno Rogue
91f7b2696f ray:: in VR raycasting, raycast_map is called just once per frame 2021-03-09 14:09:58 +01:00
Zeno Rogue
f1ecf0ecac ray:: memory cleanup with fixed map 2021-02-23 05:33:35 +01:00
Zeno Rogue
9499c7f81c ray_exp_decay_poly is param_f 2021-02-18 16:16:34 +01:00
Zeno Rogue
ad2ee6d98f an option to generate raycaster map just once 2021-02-18 16:16:34 +01:00
Zeno Rogue
040310eec4 yet one more CAP_VR guard 2021-02-07 22:55:11 +01:00
Zeno Rogue
1307790d46 ray:: fixed on GLSL 2021-02-07 22:55:11 +01:00
Zeno Rogue
16a085f253 ray:: maxstep and iter setting for eyes VR 2021-02-07 22:55:11 +01:00
Zeno Rogue
198decfd64 ray:: vr:: fixed raycaster not recompiling correctly on setting changes 2021-02-07 22:55:11 +01:00
Zeno Rogue
d061e57d07 VR raycaster NYI for sl2 2021-02-07 22:55:11 +01:00
Zeno Rogue
dc20dfe648 moved replace_str to util 2021-02-07 22:55:10 +01:00
Zeno Rogue
f64ada6572 ray::vr:: Nil in equidistant 2021-02-07 22:55:10 +01:00
Zeno Rogue
f9c8a458aa fixup params in vr 2021-02-07 22:55:10 +01:00
Zeno Rogue
cb4c18ee94 ray::vr:: equidistant pseudo-ray in product 2021-02-01 21:26:25 +01:00
Zeno Rogue
b28270959d ray:: fixed in VR-less compile 2021-02-01 11:21:51 +01:00
Zeno Rogue
b40fc679af renamed addparamsaver to param_type 2021-02-01 01:45:10 +01:00
Zeno Rogue
7d5fb11c26 removed param list, changed addsaver to addparamsaver 2021-01-31 18:34:54 +01:00
Zeno Rogue
9e9d136c60 ray:: was disabled in VR-less builds 2021-01-31 15:28:14 +01:00
Zeno Rogue
a76ef1e8da raycasting in VR equidistant, for isotropic geometries 2021-01-31 15:27:58 +01:00
Zeno Rogue
e4e1a856e6 replace vrhr::state checking with nicer functions 2020-12-31 19:11:14 +01:00
Zeno Rogue
f9d65a2e37 added some missing CAP_VR guards, more work on 2D in VR 2020-12-31 19:11:13 +01:00
Zeno Rogue
926ca2808a vr:: works with raycasting 2020-12-26 21:13:32 +01:00
Zeno Rogue
f41414a705 ray:: projection is now set via matrix, instead of via five values 2020-12-26 21:12:34 +01:00
Zeno Rogue
0de8ce9a10 initial implementation of VR 2020-11-22 17:58:40 +01:00
Zeno Rogue
1cefbd2ffa anim:: record animation of another content 2020-11-14 14:18:57 +01:00
Zeno Rogue
a1beb28437 ray:: better choosing whether to use multi-cell-type or single-cell-type raycaster; GMS array now starts small and grows as needed 2020-11-14 13:53:19 +01:00
Zeno Rogue
c88827c09f panini: fix shader-primitvie cooperation 2020-11-01 21:39:18 +01:00
Zeno Rogue
6513b3a87e Panini projection 2020-11-01 21:20:54 +01:00
Zeno Rogue
bcbe154b3a ray:: fix matrix in h2xe 2020-10-26 12:02:24 +01:00
Zeno Rogue
8bf9b5f906 fixed EX max_iter_iso 2020-10-18 14:48:35 +02:00
Zeno Rogue
1890381c0e ray:: changed #if to #ifdef 2020-10-18 14:38:21 +02:00
Zeno Rogue
ade824e97c ray:: partially works in web 2020-10-15 16:37:43 +02:00
Zeno Rogue
d64c5e338c extra guards 2020-10-15 16:33:52 +02:00
Zeno Rogue
78757f4017 ray:: fixed export of exp_decay_exp and exp_decay_poly 2020-09-21 12:04:10 +02:00
Zeno Rogue
62b85fff34 ray:: ray-step option 2020-08-23 00:11:47 +02:00
Zeno Rogue
b8b24af6ff mstretch fixup 2020-08-23 00:11:37 +02:00
Zeno Rogue
b5924ccc5c mstretch now works in rot spaces including SL2 2020-08-23 00:10:59 +02:00
Zeno Rogue
0926b98c83 fixed raycaster in twisted geometries; weirdly twisted spherical geometry 2020-08-08 16:08:51 +02:00
Zeno Rogue
64279e33cc ray:: better raycaster in SL/sphere 2020-07-28 22:06:14 +02:00
Zeno Rogue
fbe0df9814 ray:: in berger sphere can be disabled 2020-07-28 22:06:14 +02:00
Zeno Rogue
922e289b14 do not request shader in rotspace -- not that good 2020-07-28 22:06:14 +02:00
Zeno Rogue
82f32607e6 MAJOR CHANGE: replaced (transmatrix,band_shift) pair with shiftmatrix 2020-07-28 22:06:14 +02:00
Zeno Rogue
7e85f07458 primitive rendering now implemented for stretched H2xE; removed the old implementation of SL(2,R) 2020-07-22 00:19:13 +02:00
Zeno Rogue
7bed07e7b4 ray:: volumetric cheat prevention 2020-07-12 21:39:34 +02:00
Zeno Rogue
65dd868cb7 ray:: volumetric improvements 2020-07-08 12:43:30 +02:00
Zeno Rogue
17e056cdb4 ray:: volumetric raycasting 2020-07-07 22:16:38 +02:00
Zeno Rogue
7d874890ac ray:: extra options, fixes 2020-07-03 15:39:35 +02:00
Zeno Rogue
dc0ec050af ray:: get_ms function 2020-07-03 15:39:24 +02:00
Zeno Rogue
244ba53b95 ray:: fix a bug 2020-06-03 17:40:16 +02:00
Zeno Rogue
1ac116909f ray:: special case for WDIM==2 triangles 2020-06-03 16:43:11 +02:00
Zeno Rogue
511eef0517 ray:: fixed a glitch on movement 2020-06-03 15:44:34 +02:00
Zeno Rogue
6ad9d520db reset raycaster if wo>=rays 2020-06-03 15:13:30 +02:00
Zeno Rogue
2a0b0101fd raycasting in 2D 2020-06-03 15:11:20 +02:00
Zeno Rogue
dfa01c8fe5 fixed the raycaster in Nil 2020-05-31 03:31:05 +02:00
Zeno Rogue
98b1e659a5 hyperbolic raycast: fix the matrices 2020-05-28 13:44:32 +02:00
Zeno Rogue
6a19ec2a85 ray:: increased gms_limit, and added CLI option -ray-hard 2020-05-28 01:50:53 +02:00
Zeno Rogue
4217c7ccc7 reg3:: ultra-mirrors 2020-05-28 01:50:00 +02:00
Zeno Rogue
0cb4914ac9 fixed a bug in gl_FragDepth computation in raycaster 2020-05-16 11:16:24 +02:00
Zeno Rogue
823fb3a0e6 warning when honeycomb too complex 2020-05-16 10:56:11 +02:00
Zeno Rogue
3f20ba9d29 getCdata and getBits: prod -> hybri 2020-05-15 18:31:32 +02:00
Zeno Rogue
1b96658a05 fake curvature 2020-05-15 11:46:26 +02:00
Zeno Rogue
c35705cc5c fixed hybrid bitruncated ray: works after clear map 2020-05-09 18:32:16 +02:00
Zeno Rogue
306d8c3ace added function to_glsl to convert ld to GLSL strings 2020-05-09 18:30:36 +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
a4d3ebb06d ray:: CLI options -ray-range and -ray-sol 2020-05-08 21:20:33 +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
6f6586b3f2
Merge branch 'master' into hooks-naming 2020-04-19 13:39:07 +02:00
Arthur O'Dwyer
0d42168139 Make hookset<T> a pointer type, just like purehookset.
No more declaring `hookset<T> *hooks_foo`; now it's just
`hookset<T> hooks_foo` at global scope. This clears the way to
make `hookset<T>` into a class type if we want.
2020-04-12 10:50:18 -04:00
Zeno Rogue
71513369ea RK4 in raycaster 2020-04-12 00:40:15 +02:00