BMagnu
79283d9002
Animation Rework: Phase 3 ( #3793 )
...
* Refactor submodel handling by animation code
* Add Animation Flags
* Add Codeowner for animations
* Add new Animation Table
* Time Fix
* Weapon Launched trigger + bugfixes
* cleanup rebase artifact
* Add WeaponFired triggers
* Table deprec
* Allow multiple animations on the same trigger
* Add Translation segment
* Integrate new Animation workflow
* Small Fixes
* Submodel not found safety
* Add Pause
* Also allow dockport name
* Update Animation SEXP/Scripting + fix change ship class issue
* Multi fix + disable old animation sexp
* Weapon Scripting Function
* Fix bugs and replace bind
* Add onspawn trigger type
* Fix issue on ship death
* Fix Absolute Rotation
* Fix erroneous application of animation, add random start phase
* Disable Translation
* Fix Clang
* Incorporate feedback
* Incorporate feedback 2
2021-12-10 14:44:13 +09:00
BMagnu
c1d3f655e0
Merge pull request #3791 from EatThePath/animation_safety2
...
guard against trying to animate non-existent submodels in more places.
2021-11-21 14:06:53 +09:00
David Gibson
c3afeffe7f
Style fix
2021-11-20 19:59:09 -06:00
David Gibson
dba56a1fd9
guard against trying to animate non-existent submodels in more places.
2021-11-20 19:00:15 -06:00
Goober5000
9d6eec939c
refactor submodel flags and add $rotate_accel
...
1) Changes the submodel flags to use a flagset instead of several booleans
2) Adds `rotate_accel` to allow submodel rotation acceleration to be specified
Submodel acceleration can now be instant; dumb-rotating submodels always instantly accelerate (and have always done so)
2021-11-17 21:45:01 -05:00
Asteroth
d079d7fad2
Expose nebula visibility factors ( #3676 )
...
* Expose nebula visibility factors
* separately expose size factors
* naming changes
2021-11-10 13:07:04 -05:00
BMagnu
0ba5754c30
Add nullptr safety for animations ( #3738 )
...
* Add nullptr safety
* Greatly simplify docking animation logic
* Fix warnings
* Address Feedback
2021-10-21 21:18:31 +00:00
Goober5000
a52e85c760
Merge pull request #3736 from EatThePath/gr_set_lighting-cleanup
...
Removing dead code paths
2021-10-20 11:48:19 -04:00
Asteroth
bc24ac3ebc
Add 'passive' lightning arcs to ships ( #3733 )
...
* add passive lightning arcs
* fixes and cache submodel number
* range based loop
2021-10-19 12:51:05 +09:00
David Gibson
1c2b83f6aa
Removing dead code paths
2021-10-17 11:05:37 -05:00
David Gibson
2034a3e9e5
Protected against trying to animate non-existant submodels in at least one case
2021-10-16 21:18:28 -05:00
Goober5000
ebd31c1bd0
Merge pull request #3726 from Goober5000/pre_translation_cleanup
...
pre-translation cleanup
2021-10-14 11:43:41 -04:00
Goober5000
8e857ddd4e
nullptrs for clang
2021-10-13 20:28:47 -04:00
Brian Hernandez
08548ea517
Scale distant combat related effects so they stay visible ( #3656 )
...
* Scale distant combat related effects so they stay visible
- Effects scaled so that they always maintain a minimum pixel size
- Supports lasers, beams, all trails, muzzle flashes, and thrusters
- Disabled by default, but can be configured through the game_settings.tbl
* Added comments clarifying when min pixel size scaling happens.
* Convert some NULLs to nullptr to make CLANG happy
2021-10-13 19:46:01 -04:00
Goober5000
ae63f02829
rename intrinsic rotation to intrinsic motion
2021-10-13 19:39:16 -04:00
Goober5000
9afec1fd34
add a new in() function to streamline things a bit
2021-10-13 16:52:37 -04:00
Goober5000
47fb4c1d35
use sm and parent_sm instead of submodel array indexes
2021-10-13 16:04:26 -04:00
Goober5000
575c050da4
reorganize submodel rotation
...
This moves submodel rotation out of the AI pipeline and into object movement. With the exception of turret rotation (which remains in the AI code) this now allows all types of submodel rotation to happen in the same place. Many associated functions have also been cleaned up.
In addition to making the code cleaner and clearer, this will make it much easier for intrinsic rotations and new animations to be applied to non-ship objects, such as weapons.
2021-10-10 02:29:34 -04:00
BMagnu
1da6f4a6a2
Simplistic Ship Transparency ( #3436 )
...
* Basic per-render-model + per-ship tools
* Tidy up settable transparency for standalone use
* Force Alpha Premultiplied on external Alphamult
* Fix sexp description.
2021-10-08 21:49:13 +09:00
BMagnu
12be7576f7
Animation Overhaul: Phase 2 ( #3609 )
...
* Add Generic Rotation Segment
* SEXPd rotations work
* Fully replace old animation system
* Add sound segment
* Fixes
* Trigger Hangarbay doors for lone player without AI
* Address Warnings
* Fix Docking ANimations + some bugs
* Fix sound issue + docking bug
* fix bugs, add multi handling
* Change direction into enum class
* Address feedback
* Futher clean aicode
* Address feedback
* Add Multi packet constexprs
* Fix multi constexprs
* Clarify AIS_DOCK comments
* Address multi issues
* Clang somehow detects issues where there are none...
2021-10-06 08:50:58 +09:00
Goober5000
ad2335cfbf
fixes to look_at and intrinsic rotation
...
1) Make sure the `PM_FLAG_HAS_INTRINSIC_ROTATE` flag is only set after submodels pass validation and checking
2) Maintain compatibility with old models that used `$look_at` with the submodel number instead of name
2021-08-22 22:09:18 -04:00
Birk Magnussen
aee9dc6910
Fixed bad stepAnimations call, added initial-type optimizations
2021-08-09 14:36:57 +09:00
Birk Magnussen
1187ebbc2c
GCC Warnings
2021-08-02 23:33:26 +09:00
Birk Magnussen
d92fab80ef
Find turrets by sip name (since index can change) and make pointers shared
2021-08-02 22:35:41 +09:00
Birk Magnussen
77a255af63
GCC Warnigns
2021-07-30 18:05:46 +09:00
Birk Magnussen
45c904c25e
Fixed memory issue and turret-specific animation handling cases
2021-07-30 17:08:24 +09:00
Birk Magnussen
7228244f0c
Add forced animation start mode
2021-07-29 20:46:37 +09:00
Birk Magnussen
f0f5679731
Fix flipped turret values
2021-07-29 20:21:01 +09:00
Birk Magnussen
5709e24e9a
save by PMI id not PMI*, rename 'time' variable
2021-07-23 13:17:11 +09:00
Birk Magnussen
5f4729bddb
Remove Variable Shadowing
2021-07-23 04:38:23 +09:00
Birk Magnussen
473acced54
Apply new initial animations for techroom instances
2021-07-23 04:27:43 +09:00
Birk Magnussen
b58b60b555
Fix Constructor Order
2021-07-23 03:31:06 +09:00
BMagnu
9c3b90f403
Merge branch 'master' into anim_rework_1
2021-07-23 03:18:32 +09:00
Birk Magnussen
3b0e02545e
Move Animations from ship* to pmi*
2021-07-23 03:12:54 +09:00
Goober5000
07f4f4716b
handle clang
2021-06-20 02:47:19 -04:00
Goober5000
f9c73e81f2
add code for loading external model angle offset from POF file
2021-06-20 00:45:34 -04:00
Birk Magnussen
c6b75d3561
Add forgotten Animation Instancing
2021-06-18 04:09:03 +09:00
Birk Magnussen
390f979b7c
Small parse improvement + english fixes
2021-06-16 13:51:55 +09:00
Birk Magnussen
bd6dae97a7
Fixed Code for GCC and C++11
2021-06-16 02:10:30 +09:00
Birk Magnussen
d0948e67e3
Tidy up some new code into separate functions
2021-06-15 13:27:08 +09:00
Goober5000
c1d8834d81
make clang happy
2021-06-11 18:46:03 -04:00
Goober5000
7b69c10e56
add some more sophisticated POF version handling
...
This adds additional version definitions so that features can be added which support both the aligned and non-aligned POF formats.
2021-06-11 17:53:56 -04:00
Goober5000
c0bb5bc8eb
Merge pull request #3326 from Shivansps/arm_fixes_v2
...
POF 2118 and SLC2 support
2021-06-11 17:43:28 -04:00
Goober5000
eaf14760c4
add warning for supported POF file versions
...
With several upcoming POF format enhancements (byte alignment, external weapon rotation, submodel translation) it makes sense to warn users if they happen to load an unsupported POF file.
2021-06-11 10:40:21 -04:00
Birk Magnussen
a9e5505a7c
Added Comments, light refactoring
2021-06-11 13:39:55 +09:00
Birk Magnussen
fb657c081c
Turret fix
2021-06-09 16:04:59 +09:00
Birk Magnussen
7945baa751
Fix turret detection
2021-06-09 15:56:28 +09:00
Birk Magnussen
e9a2ff0ebf
Fix proper duration handling of segments and full anims
2021-06-09 15:03:46 +09:00
Birk Magnussen
384b2e20c7
Integrate Initial Type animations
2021-06-08 21:28:15 +09:00
Birk Magnussen
20e742ed61
Generate Animations for initial-type animations
2021-06-08 14:45:35 +09:00