Commit graph

1515 commits

Author SHA1 Message Date
Matt Penny 1f2258f86c Add plastic/plasticwall004a material 2024-05-08 21:20:36 -04:00
Matt Penny 3270d0a9ad Add material for Aperture decal 2024-05-08 21:13:58 -04:00
Matt Penny 78107866ce Allow static overriding portalability on a per-surface basis 2024-05-08 20:46:42 -04:00
Giacomo Garbin e12354556f
Move the definition of MatrixFromBasisL to debug_render.c which is the only file that uses it. (#64) 2024-05-08 20:30:27 -04:00
Matt Penny 65daf71fa9 Do not use absolute library paths in chamber 14 2024-05-05 18:34:16 -04:00
Matt Penny 64e2f0e5bf Doors block energy balls 2024-05-05 18:31:34 -04:00
Matt Penny fa26ac449e Support rotated doors and remove some unused door code 2024-05-05 18:26:30 -04:00
Matt Penny aecbda3071 Fix debug include for libultra controller 2024-05-04 12:07:36 -04:00
Matt Penny efb3f8da65 Detach door_02 frame from model
Door without frame is needed for chamber 15
2024-05-02 23:21:20 -04:00
Giacomo Garbin 167269c5d1
Decouple controls interface from libultra. (#60)
* Decouple controls interface from libultra.

* Use enums instead of defines for constant values.

* Get both controller stick axes with a single function call.

* Move controller .h\.c files to src/system folder and rename controller.c to controller_libultra.c.

* Adhere to enum and struct naming convention of the codebase.

* Fix typo: the N64 controller only has one analog stick.
2024-05-02 17:49:38 -04:00
Matt Penny ad6b32d022 Fix indicator light UVs in chamber 14
Strip near button was slightly stretched
2024-04-30 22:42:49 -04:00
Matt Penny e1ba9f20ef Properly mirror door textures in Blender
Matches in-game appearance
2024-04-30 22:39:21 -04:00
Deconimus 247e66fb62
Grab rotation flags (#58)
* introduced "enum GrabRotationFlags" for type-based grab behavior and added grab_rotation.c/.h to offload grabRotation code from player.c

* grab_rotation snap cube normals fix

* grab_rotation: some cleanup

* grab_rotation.c: simplify grabRotationInitBase + some cleanup
2024-04-22 18:44:18 -04:00
Matt Penny 86915350b8 Add newlib to Docker image (#59) 2024-04-14 11:21:54 -04:00
Matt Penny a1c2cc5407 Update development progress doc to indicate chamber 14 completion 2024-04-13 17:07:25 -04:00
Matt Penny f4cb8ddd31 Finish cutscene step documentation 2024-04-13 17:03:54 -04:00
Matt Penny 1a91f840c0 Document more cutscene steps
* set_signal
* clear_signal
* wait_for_signal
* teleport_player
* load_level
* label
* goto
* start_cutscene
* stop_cutscene
* wait_for_cutscene
2024-04-13 01:13:07 -04:00
Matt Penny bf5b8e0d28
Merge pull request #47 from GiacomoGarbin/replace_libnustd_with_glibc
Use newlib instead of libnustd.
2024-04-12 19:01:12 -04:00
Matt Penny 7005450479 Fix indicator lights for active signals across save/load 2024-04-11 22:44:03 -04:00
Matt Penny 9401198969 Use water hazard wall material in relevant chambers 2024-04-11 20:55:38 -04:00
Matt Penny 685f818114 Add material for water hazard wall 2024-04-11 19:55:34 -04:00
Matt Penny 73e81b3308
Merge pull request #56 from Deconimus/issue41_fizzler_frame_collision
Add collision for fizzler frames
2024-04-11 19:54:38 -04:00
Matt Penny a551de9890 Minor fizzler frame collision cleanup 2024-04-11 19:44:42 -04:00
Matt Penny f2eaa9483d
Merge pull request #57 from Deconimus/issue52_grab_y_offset
Tweak y offset minimum limit to match original game (and due to issue #52)
2024-04-06 18:30:41 -04:00
Deconimus 8676845cd7 tweak y offset minimum limit to match original game (and due to issue #52) 2024-04-06 23:10:56 +02:00
Matt Penny 4d621b69cc
Merge pull request #54 from Deconimus/issue52_grab_y_offset
Constrain y-offset of grab to match PC version and circumvent buggy behavior
2024-04-05 21:10:22 -04:00
Matt Penny 8abbcb0407 Slightly tweak max grab height
Original game allows a height of ~1 wall panel
2024-04-05 21:09:06 -04:00
Matt Penny 7129deec4a
Merge branch 'master' into issue52_grab_y_offset 2024-04-05 20:31:11 -04:00
Matt Penny d5fea9a796
Merge pull request #50 from Deconimus/grab_rotation_snap_cubenormals
Snap grab rotations to cube normals
2024-04-05 20:21:10 -04:00
Matt Penny 62c49ddcdf Remove collisionSceneGetPortalRotation() 2024-04-05 20:18:25 -04:00
Deconimus 97b31b4579 grab_rotation: simplifying playerInitGrabRotationBase() 2024-04-05 13:00:23 +02:00
Deconimus 4ca1c484f1 player grab rotation cleanup 2024-04-04 12:12:58 +02:00
GiacomoGarbin 0e240507e7 Math functions are part of libultra and not libnustd. 2024-04-03 00:02:43 +02:00
GiacomoGarbin 8bed9b6238 Address GH-47 issues raised in the comments.
Specifically:
* append all include search paths to LCINCS
* add LDDIRS to group all library search paths
* avoid link libm as math funtions are actually inside libultra
* use the shorthand -lc instead of -l:libc.a to link libc
2024-04-02 23:02:25 +02:00
Deconimus 83e94af894 add collision for fizzler frames 2024-04-02 22:52:10 +02:00
Deconimus 3c8c0d3234 Merge branch 'master' into grab_rotation_snap_cubenormals 2024-04-02 13:27:27 +02:00
Deconimus 70019f281a Merge branch 'master' into issue52_grab_y_offset 2024-04-02 13:26:52 +02:00
Matt Penny 618f147da6 Halve ball catcher sound volume (#51) 2024-04-01 18:17:09 -04:00
Matt Penny e81fa6f28a Extend, do not repeat plastic/plasticwall003a material
Reflect what the material actually looks like in-game
2024-04-01 17:31:15 -04:00
Matt Penny 3d5ede0e2e Revert "Add plastic/plasticwall003a material to materials.blend"
This reverts commit 0ddb70f8e6.
2024-04-01 16:58:15 -04:00
Deconimus 01a7a67536 constrain y-offset of grabbed object to match Portal-PC, circumventing buggy behavior documented in issue #52 2024-03-31 17:04:06 +02:00
Deconimus 7e3db77731 fix cube normal snapping (has been broken in cases where object's upwards direction wasn't equal to gUp) 2024-03-30 23:12:18 +01:00
Deconimus bce6a41fcb fix playerGetMoveBasis call in scene.c 2024-03-29 15:01:38 +01:00
Deconimus 847c5e3d2e Merge branch 'master' into grab_rotation_snap_cubenormals 2024-03-29 14:35:08 +01:00
Matt Penny e6447819fa Add some missing collision to chamber 14 2024-03-29 02:44:17 -04:00
Matt Penny 900d63db6e
Merge pull request #49 from GiacomoGarbin/valve_intro_video_mov
Valve intro video: try to load a MOV file if the BIK file doesn't exist.
2024-03-29 02:13:26 -04:00
Matt Penny 08db90d929 Chamber 14 lighting 2024-03-29 00:55:11 -04:00
Matt Penny 0ddb70f8e6 Add plastic/plasticwall003a material to materials.blend 2024-03-29 00:55:03 -04:00
Deconimus 56672ff562 grabRotation: snap all grabbed object rotation to cube normals
+ some related code refactoring
2024-03-29 00:35:51 +01:00
GiacomoGarbin f15aa17f42 Valve intro video: try to load a MOV file if the BIK file doesn't exist.
The macOS Portal version uses a .mov file, so if the .bik file doesn't exist, let's try that.
2024-03-28 18:43:00 +01:00