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

509 Commits

Author SHA1 Message Date
Zeno Rogue
dd5d317cb3 Sol geometry 2019-09-12 22:50:09 +02:00
Zeno Rogue
2d30f3830c standard binary tiling, also improved the looks of variant binary tiling, and optimized shvid for pure 2019-09-12 22:50:09 +02:00
Zeno Rogue
adf0f36ea1 fixed a possible buffer overflow while in finishshape() 2019-09-12 22:50:07 +02:00
Zeno Rogue
7b547a6a77 fixed some shapes in 3D (like Mine Mark) 2019-09-12 22:50:06 +02:00
Zeno Rogue
5fc24ac17a a bit higher sky, and Great Walls with more elements 2019-09-12 22:50:05 +02:00
Zeno Rogue
e61930c0b1 clearing unused TriheptaSpecial shapes to fix a crash on iOS 2019-09-12 22:50:05 +02:00
Zeno Rogue
29278101ba fixed a bug with drawing Rosebushes 2019-09-12 22:50:05 +02:00
Zeno Rogue
5519252fd0 added some missing CAP_* guards 2019-09-12 22:50:04 +02:00
Zeno Rogue
638274504c fixup removed some weird stuff 2019-09-12 22:50:03 +02:00
Zeno Rogue
29c8890c01 removed some trailing spaces 2019-09-12 22:50:03 +02:00
Zeno Rogue
b6e303ec7d MAJOR refactoring: all geometry-dependent data (tessf, geom3::, shapes, hpc) are now contained in a structure 2019-09-12 22:50:03 +02:00
Zeno Rogue
599d5d63e8 2D3D:: higher ceilings in the Palace 2019-09-12 22:50:03 +02:00
Zeno Rogue
4ac7f9043b 3D:: Ratlings improved 2019-09-12 22:50:03 +02:00
Zeno Rogue
7d8f48d48b replaced some debug printfs with print hlog 2019-09-12 22:50:02 +02:00
Zeno Rogue
ae100b1e72 removed some obsolete debug printfs 2019-09-12 22:50:02 +02:00
Zeno Rogue
73a742119d 3D: Roses (items) did not appear 2019-09-12 22:50:02 +02:00
Zeno Rogue
5436265311 2D3D:: Mirror Land ceiling draws halffloors correctly 2019-09-12 22:50:02 +02:00
Zeno Rogue
f2d60f1647 sky fixup 2019-09-12 22:50:02 +02:00
Zeno Rogue
8eb3fa65e2 2D3D:: skies and ceilings 2019-09-12 22:50:02 +02:00
Zeno Rogue
fc7100bbf1 3D:: animation for all birds; fixed a crash on Butterfly drawing 2019-09-12 22:50:02 +02:00
Zeno Rogue
9221a532f9 guard against double-finishshape 2019-09-12 22:50:01 +02:00
Zeno Rogue
eca59e79fa removed debug 2019-09-12 22:50:01 +02:00
Zeno Rogue
bfb0b3f070 quicker editing of 3d models 2019-09-12 22:50:01 +02:00
Zeno Rogue
323bd659c8 reverted reverse_transparent_walls 2019-09-12 22:50:01 +02:00
Zeno Rogue
5fed2d84ee correct transparent wall ordering in S^3 [untested] 2019-09-12 22:50:01 +02:00
Zeno Rogue
0c82bb64f0 added set_depthwrite when clearing depth in spherical 2019-09-12 22:50:01 +02:00
Zeno Rogue
3e7b29a188 3D:: fixed how elliptic geometry works 2019-09-12 22:50:00 +02:00
Zeno Rogue
740cc5fbb6 2D3D:: wall shadows 2019-09-12 22:50:00 +02:00
Zeno Rogue
f88de70a79 3D:: improvements to transparency: works correctly (e.g. in 2D HoM), including models 2019-09-12 22:50:00 +02:00
Zeno Rogue
df3e21b310 debug cleanup 2019-09-12 22:50:00 +02:00
Zeno Rogue
9a21401b9c item/monster icons in 3d 2019-09-12 22:49:56 +02:00
Zeno Rogue
16c4108a8d 3d:: fixed transparent walls 2019-09-12 22:49:44 +02:00
Zeno Rogue
534663e663 3d:: using models not walls for worms 2019-09-12 22:49:41 +02:00
Zeno Rogue
73f53b93a8 3d:: correct eyes 2019-09-12 22:49:05 +02:00
Zeno Rogue
a4fdaac4ab fixup to chasmifyPoly 2019-09-12 22:43:02 +02:00
Zeno Rogue
dc036e7c7b 2d3d:: seeps display 2019-09-12 22:43:02 +02:00
Zeno Rogue
ef4d673196 2d3d:: precise halfmirrors 2019-09-12 22:43:02 +02:00
Zeno Rogue
7abbd6c07a 2d3d:: added missing normalize and memory fix to chasmifyPoly 2019-09-12 22:43:01 +02:00
Zeno Rogue
55d7678c99 2D3D:: Hall of Mirrors 2019-09-12 22:43:01 +02:00
Zeno Rogue
da49e6c8de 2d3d:: textures on sidewalls 2019-09-12 22:43:01 +02:00
Zeno Rogue
d89fb49e13 refactured 'texture_order' as a separate function 2019-09-12 22:43:01 +02:00
Zeno Rogue
5ab7249afd horopoint cleanup in 2D 2019-09-12 22:43:01 +02:00
Zeno Rogue
757a154399 2d3d:: shapes such as shFloor are now full 2019-09-12 22:43:01 +02:00
Zeno Rogue
1c4d86e0e9 3D graphics in 2D (first commit) 2019-09-12 22:43:01 +02:00
Zeno Rogue
29a170f423 fixed wrong declaration order with MINIMIZE_GL_CALLS 2019-09-12 22:43:01 +02:00
Zeno Rogue
c8e950cd40 added some missing CAP_ and MAXMDIM guards 2019-09-12 22:43:01 +02:00
Zeno Rogue
156f56feb0 fixed drawing the sphere in natural perspective 2019-09-12 22:43:00 +02:00
Zeno Rogue
6e26508a77 replaced some instances of double to ld, so that everything compiles when ld is redefined to float 2019-09-12 22:43:00 +02:00
Zeno Rogue
aefea03ce1 3d:: corner_bonus 2019-09-12 22:43:00 +02:00
Zeno Rogue
5d77c86658 scrdist_text removed 2019-09-12 22:43:00 +02:00
Zeno Rogue
5895540ae9 removed mdText as it was equivalent to mdUnchanged 2019-09-12 22:43:00 +02:00
Zeno Rogue
f65c8d5dc8 fixed crashes (?) after moving to 3D and back 2019-09-12 22:43:00 +02:00
Zeno Rogue
c19ffb3597 fixes to projection streamlining 2019-09-12 22:43:00 +02:00
Zeno Rogue
3c9e4db46e major cleanup of projection setting 2019-09-12 22:43:00 +02:00
Zeno Rogue
8b0c0f58c4 animated 3D birds 2019-09-12 22:43:00 +02:00
Zeno Rogue
596b4ce786 3d:: converting the old vector graphics into 3D models 2019-09-12 22:42:59 +02:00
Zeno Rogue
cb2e870a99 3d:: removed some unused debug messages 2019-09-12 22:42:59 +02:00
Zeno Rogue
e1227bcb6e an option for hpcshapes to contain texture information 2019-09-12 22:42:59 +02:00
Zeno Rogue
dd9f7d0275 3d:: rebalanced Asteroids, fixed shots not being displayed at their actual locations 2019-09-12 22:42:59 +02:00
Zeno Rogue
8df0a0144b 3d:: fixed the wrong texturing in hororec 2019-09-12 22:42:59 +02:00
Zeno Rogue
b88ef69f59 fixed a freeze in some Archimedean geometries 2019-09-12 22:42:59 +02:00
Zeno Rogue
8a53258361 fixed mines when more than 7 adjacent mines 2019-09-12 22:42:59 +02:00
Zeno Rogue
36b4b60d46 3d::draw:: added shading 2019-09-12 22:42:58 +02:00
Zeno Rogue
9fece7b342 renamed 'spiral' to 'spiral/ring' and added a comment 2019-09-12 22:42:58 +02:00
Zeno Rogue
55492e229b Asteroids in 3D 2019-09-12 22:42:58 +02:00
Zeno Rogue
5356eba11c Asteroids 2019-09-12 22:42:58 +02:00
Zeno Rogue
076e1f2977 3d:: fixed linewidth 2019-09-12 22:38:47 +02:00
Zeno Rogue
8ea5a618ad 3d:: clipping without OpenGL 2019-09-12 22:38:47 +02:00
Zeno Rogue
5d9518b9cf fixed orientation_yz in GL 2019-09-12 22:38:47 +02:00
Zeno Rogue
bc3e7f2e95 3d:: shader acceleration for 3D ball and 3D halfspace 2019-09-12 22:38:47 +02:00
Zeno Rogue
5116d745c4 gldraw:: offset and texture_offset are now separate 2019-09-12 22:38:47 +02:00
Zeno Rogue
46ae64e945 3d:: native perspective is now pmodel == mdPerspective, and other models work too 2019-09-12 22:38:47 +02:00
Zeno Rogue
c2fbc424e2 always use shWall3D for shPlainWall3D 2019-09-12 22:38:46 +02:00
Zeno Rogue
cb9513dd0d 3d:: horohex geometry 2019-09-12 22:38:46 +02:00
Zeno Rogue
678747ceff 3d:: horo-rec geometry 2019-09-12 22:38:45 +02:00
Zeno Rogue
5db2cfbd1a 3d:: textured walls 2019-09-12 22:38:45 +02:00
Zeno Rogue
43eb9bf0a2 fixed a glitch with a bodypart taking the whole screen in spherical geometry 2019-09-12 22:38:45 +02:00
Zeno Rogue
14ea73be06 choice of the magic sword graphics now depends on the scale; in shmup, the tip is now set automatically based on the graphics 2019-09-12 22:38:45 +02:00
Zeno Rogue
105de56857 3d:: HoroTris geometry 2019-09-12 22:38:44 +02:00
Zeno Rogue
a2c6a4e8b0 3d:: a system for drawing transparent things, with sorting being the responsibility of HR 2019-09-12 22:38:43 +02:00
Zeno Rogue
d3f17858e9 3d:: parrots and seeps now ignore depth testing 2019-09-12 22:38:43 +02:00
Zeno Rogue
53d5510697 fixed texts not appearing 2019-09-12 22:38:43 +02:00
Zeno Rogue
52ce5ac9aa 3d:: all the regular honeycombs 2019-09-12 22:38:43 +02:00
Zeno Rogue
d660531a22 3d:: more elegant euclid3::getcoord 2019-09-12 22:38:43 +02:00
Zeno Rogue
cb8e34204f two more Euclidean honeycombs; also split buildpolys into subfunctions 2019-09-12 22:38:43 +02:00
?
699109ef2a 3d:: draw:: model from triangles 2019-09-12 22:38:43 +02:00
?
33cc46e8d1 3d:: lines with priority set to SUPERLINE ignore depth testing as expected 2019-09-12 22:38:42 +02:00
?
8d83959229 if triangles are drawn, outlines are disabled 2019-09-12 22:38:42 +02:00
?
f879a2c21c draw:: z-level can now be set for each layer 2019-09-12 22:38:42 +02:00
?
4ac186437b editable statues 2019-09-12 22:38:42 +02:00
?
b48cf6eba1 3D:: no more extra points on lines (and especially with TRIANGLES) 2019-09-12 22:38:42 +02:00
?
81dd0c71da added some missing guards for CAP_BT and MAXMDIM 2019-09-12 22:38:42 +02:00
?
f451e017a3 3D:: now works with anaglyph 2019-09-12 22:38:42 +02:00
?
676abdf03b used scalefactor when it was not used while it should: WOLF scaling, leg animation, shmup 2019-09-12 22:38:42 +02:00
?
041c7af987 3d:: *_d functions now consistently put d as the first argument 2019-09-12 22:38:42 +02:00
?
ee87c94e05 3d:: queuechr(V/T) no longer displays points if they are behind 2019-09-12 22:38:42 +02:00
?
0620916dd2 3d:: miniwalls used for weird stuff 2019-09-12 22:38:42 +02:00
?
c2b6600ce5 3d:: renamed shBinaryWall to shWall3D 2019-09-12 22:38:42 +02:00
?
42e4342c4a 3d:: fixed pushing directions 2019-09-12 22:38:42 +02:00
?
aac03e72fe 3d:: depthtest disabled for PPR::SUPERLINE and beyond 2019-09-12 22:38:42 +02:00
?
3de228fce1 3D:: fixed item graphics 2019-09-12 22:38:42 +02:00
?
fe174d8873 3D:: elliptic space 2019-09-12 22:38:40 +02:00
?
7e4cc69c06 sphere3 is not two_sided_model 2019-09-12 22:38:40 +02:00
?
259e376909 3d:: four-phase drawing of sphere 2019-09-12 22:38:40 +02:00
?
33d4854c14 3D:: 120-cell 2019-09-12 22:38:40 +02:00
?
7110be2032 3D:: cube tiling 2019-09-12 22:38:40 +02:00
?
d08e58f404 3d:: 2D/3D is now selectable at runtime 2019-09-12 22:38:40 +02:00
?
d87a471714 3D::binary:: nice walls 2019-09-12 22:38:40 +02:00
?
0bc644e132 support POLY_TRIANGLES 2019-09-12 22:38:40 +02:00
?
0ea37718f0 shaderside projection for DIM==3 2019-09-12 22:38:39 +02:00
?
56d628d4d8 adjusting for 3D part II 2019-09-12 22:38:39 +02:00
?
e73d2f2f22 some work on 3D view 2019-09-12 22:38:39 +02:00
?
a3eb161235 added CAP_SHAPES: poly system works, but no shapes are used 2019-09-12 22:38:39 +02:00
?
dd0f573ca9 hyperpoint adjusted for 3D geometry 2019-09-12 22:38:39 +02:00
?
e39777f04d CAP_ animations etc. cleanup 2019-09-12 22:38:39 +02:00
?
99aa7e420b CAP_POLY part 1 2019-09-12 22:38:39 +02:00
?
b25730d5c9 geometry flags part 1 2019-09-12 22:38:39 +02:00
Zeno Rogue
8d588cbdab racing:: trophies 2019-09-12 22:38:38 +02:00
Zeno Rogue
a1b22cbf9f newlands:: more theming 2019-04-29 17:19:06 +02:00
Zeno Rogue
724d3516fa variant:: first version 2019-04-29 17:19:05 +02:00
Zeno Rogue
f546bba84a fixes for mobile 2019-02-08 16:57:19 +01:00
Zeno Rogue
1d468b1685 changed the priority of MFloor to FLOOR_DRAGON 2019-02-06 22:42:11 +01:00
Charlène
9cee52cf81 Fix colors for big endian architectures. 2019-02-06 18:50:36 +01:00
Zeno Rogue
8ac1cf8731 fixed some issues with commandline arguments (svg shots made correctly from cli) 2019-02-06 18:48:52 +01:00
Zeno Rogue
91873c19c6 fixed the cameraangle option 2019-02-06 18:48:52 +01:00
Zeno Rogue
fd9d6208f2 no darkening in rotated hyperboles 2019-02-06 16:39:08 +01:00
Zeno Rogue
3d76e90584 conical spirals and bands 2019-02-06 16:36:52 +01:00
Zeno Rogue
e2b262979b startgame animations 2019-02-06 16:36:52 +01:00
Zeno Rogue
8ba603fba3 svg:: circles now have better linewidth 2018-12-14 19:30:22 +01:00
Zeno Rogue
285211bcf3 invalid_point functions, and using them in smart_range and queuestr/chr 2018-12-14 19:27:12 +01:00
Zeno Rogue
7d587c63ba relative-size queuestr, queuechar, and queuecircle work better now 2018-12-11 22:10:53 +01:00
Zeno Rogue
5e0bd401fc tiny bird and tiny shark shapes, for use in RogueViz 2018-11-20 00:20:11 +01:00
Zeno Rogue
e25bc8e455 glhr:: shaderside projection for the half-plane model 2018-11-19 20:53:35 +01:00
Zeno Rogue
50a86d1e88 glhr:: shader-side band now ignores depth 2018-11-18 18:26:56 +01:00
Zeno Rogue
e7b90fdb05 fixed some minor issues with HyperRogue's 3D 2018-11-18 18:26:56 +01:00
Zeno Rogue
d935febf09 refactored some global and stereo:: variables into display_data structure 2018-11-18 18:26:56 +01:00
Zeno Rogue
680dca90c8 shaderside projection 2018-11-18 18:26:55 +01:00
Zeno Rogue
36517a105d fixed || used with POLY_FORCE_INVERTED 2018-11-11 12:55:11 +01:00
Zeno Rogue
f1b395ce52 moved backbrightness edit to colors; it is based on modelcolor rather than backcolor 2018-11-11 12:55:11 +01:00
Zeno Rogue
147dcb58c4 more models are known to sometimes require inverse 2018-11-11 11:27:36 +01:00
Zeno Rogue
c1af8f9d3a bandfixer (for normal geometries) 2018-11-11 11:27:35 +01:00
Zeno Rogue
f1b6cc0f48 ringcolor improvements 2018-11-11 11:25:59 +01:00
Zeno Rogue
d1d2a300c4 refactored the degree constant 2018-11-11 11:25:59 +01:00
Zeno Rogue
5978830e01 filled model drawing (for some models) 2018-11-11 11:25:59 +01:00
Zeno Rogue
542e80081f conformal:: new models: formula and rotated hyperboles 2018-11-11 11:25:59 +01:00
Zeno Rogue
4513500f23 size check disabled in Joukowsky 2018-11-01 19:08:01 +01:00
Zeno Rogue
115b9b0f45 small refactor 2018-11-01 19:08:01 +01:00
Zeno Rogue
66e3908f8a fixed for older compilers 2018-10-28 04:06:59 +01:00
Zeno Rogue
53687108f6 svg:: improved linewidth 2018-10-28 03:09:07 +01:00
Zeno Rogue
77837e0810 Hyperboloid/Hemisphere models improved on sphere/Euclidean oto 2018-10-28 03:09:07 +01:00
Zeno Rogue
d89882a30d better darkening of the other side 2018-10-28 03:09:07 +01:00
Zeno Rogue
804b489ebf improved hemisphere model; nicer handling of ballangle 2018-10-28 03:09:06 +01:00
Zeno Rogue
cbb53cfe68 Joukowsky transform, and better inverted Poincare 2018-10-28 03:09:06 +01:00
Zeno Rogue
b44063f500 darken_color correctly darkens hyperboloid instead of disabling it 2018-10-23 20:12:38 +02:00
Zeno Rogue
f887ae23a6 draw_back() now darkens both fill color and stroke color 2018-10-23 20:11:49 +02:00
Zeno Rogue
8a37a43547 improved hyperboloid model 2018-10-23 20:08:57 +02:00
Zeno Rogue
a9535878c4 model orientation 2018-10-23 16:58:19 +02:00
Zeno Rogue
ddba5f0faa matrix-based queuestr and queuecircle now know how to scale their output appropriately to geometry 2018-09-23 16:34:53 +02:00
Zeno Rogue
8999ceb59b fixed texts disappearing when scale is set to less than 0 2018-09-10 17:24:58 +02:00
Zeno Rogue
4ae9156c30 more glitch fix 2018-09-07 17:45:21 +02:00
Zeno Rogue
6f3fcb2694 fixed a bug with centerin 2018-09-07 17:28:55 +02:00
Zeno Rogue
093022b3ec more elegant tinf handling 2018-09-07 17:28:40 +02:00
Zeno Rogue
04554a436f improved INVERSE issues in stereographic 2018-09-07 16:18:40 +02:00
Zeno Rogue
a74a73cac1 fixed a bug with infront graphics (caused by draw() changing the parameter) 2018-09-07 15:17:48 +02:00
Zeno Rogue
3e1cb1ba6d fixed incorrect rendering in models with MINIMIZE_GL_CALLS 2018-09-05 15:21:24 +02:00
Zeno Rogue
2938ea20d0 fixed a bug with dqi_poly::draw() in other models 2018-09-05 03:51:30 +02:00
Zeno Rogue
c49c4eccb2 added missing const in queue sort 2018-09-05 00:18:40 +02:00
Zeno Rogue
78fc8e04b0 faster text with MINIMIZE_GL_CALLS 2018-09-04 23:27:51 +02:00
Zeno Rogue
35353fe70e faster graphics with MINIMIZE_GL_CALLS 2018-09-04 23:27:27 +02:00
Zeno Rogue
1ab460ffb1 type color_t should now be consistently used for colors; reimplemented drawqueue in OO fashion 2018-09-04 19:53:42 +02:00
Zeno Rogue
a4cf130b78 constexpr int PMAX 2018-09-01 14:31:13 +02:00
Zeno Rogue
00937fff3c fixed the Compass graphics 2018-08-31 04:19:21 +02:00
Zeno Rogue
e6fd183302 fixed Ivy graphics on euclid6 2018-08-28 19:06:43 +02:00
Zeno Rogue
015e69cf30 simplified the scaling scode 2018-08-28 19:05:57 +02:00
Zeno Rogue
6de0f0a8aa instead of nonbitrunc, gp::on and irr::on, there is one variable, variation 2018-08-28 17:17:34 +02:00
Zeno Rogue
1af2c04407 enum class used for PPR 2018-08-28 14:27:23 +02:00
Zeno Rogue
25c09154dc fixed a crash when drawing inventory items while drawcell is also NULL; priority functions now use PPR_DEFAULT not -1; priority is passed as PPR not int 2018-08-28 13:45:11 +02:00
Zeno Rogue
ff84f63abd Fixed mapediting floorshapes. Also works nicely for all geometries now. Enum used for shapegroups. 2018-08-27 19:27:35 +02:00
Zeno Rogue
6edc257f28 arcm:: improved graphics on dihedra and hosohedra 2018-08-21 04:55:39 +02:00
Zeno Rogue
0fd9cc46f2 improved spherical display of low-face polyhedra 2018-08-21 02:38:50 +02:00
Zeno Rogue
c54d4ec59d struct archimedean_tiling 2018-08-20 02:02:45 +02:00
Zeno Rogue
4d31e5a544 renamed 'syntetic' to 'archimedean' (enums/files/marcos/namespaces) 2018-08-19 23:06:32 +02:00
Zeno Rogue
e1c49a83fa fixed displayspin in syntetic 2018-08-19 16:28:36 +02:00
Zeno Rogue
453c06f9f9 functions with rotation parameters in S84-degree system have been removed or replaced in radian versions 2018-08-19 15:52:39 +02:00
Zeno Rogue
29a9980fc3 more improvements to scaling in syntetic 2018-08-19 13:46:22 +02:00
Zeno Rogue
7ea60c60d8 fixed calc_relative_matrix for syntetic sphere 2018-08-19 13:44:25 +02:00
Zeno Rogue
09fb882b71 replaced shFullCross with an alternative which works in any geometry 2018-08-17 16:48:26 +02:00
Zeno Rogue
4f3cc3783a binary tiling 2018-08-09 19:28:53 +02:00
Zeno Rogue
9589fcb4b1 fixed some glitches in the spherical projections 2018-08-05 16:18:35 +02:00
Zeno Rogue
6b4ed57152 fixed the orb drawings 2018-08-01 15:03:48 +02:00
Zeno Rogue
a50169e3d3 fixed the lines in the svg screenshots 2018-08-01 11:25:07 +02:00
Zeno Rogue
1b44899624 line quality option 2018-08-01 11:07:22 +02:00
Zeno Rogue
5e2a65a781 vertical stretch parameter is now available in all models; more details in equi-area 2018-08-01 04:01:16 +02:00
Zeno Rogue
e27cd9b654 stretch factor in cylindrical equidistant and cylindrical equi-area models 2018-07-30 17:44:11 +02:00
Zeno Rogue
d32fe9192e use the old reverse-side algorithm if texture is on 2018-07-27 22:14:33 +02:00
Zeno Rogue
b1653689da silenced an 'uninitialized variable' warning 2018-07-23 23:58:59 +02:00
Zeno Rogue
19ac4dd945 pkResetModel now does stereo::set_projection(0) 2018-07-23 23:37:54 +02:00
Zeno Rogue
12dd76b216 new system for inverting stereographic projections, and other improvements in the spherical perspective 2018-07-23 16:17:49 +02:00
Zeno Rogue
2e7b5f0c16 improved the gnomonic projection of the sphere; there are still glitches with stereographic 2018-07-23 16:17:49 +02:00
Zeno Rogue
329a2fa783 fixed the compilation without CAP_COMMANDLINE or without CAP_SVG or fakemobile 2018-07-22 12:50:03 +02:00