64 Commits over 397 Days - 0.01cph!
Simplify mirror component, use fixed render target size to show that we can
Fix the conveyor belt in player_controller_physics
Update ragdoll bone objects in editor
Ragdoll uses Model.CreateBoneObjects
Include bodies in ragdoll joint record
Add read only lists for ragdoll bodies and joints
Drive ragdoll physics from animation in fixed update
Add option to ragdoll to drive physics from animation https://files.facepunch.com/layla/1b2211b1/sbox-dev_zcC1rx2gSM.mp4
Ragdoll child component flags are not saved and not cloned, they always get recreated OnEnabled
Flag ragdoll body bones as bone, because they are
Scale ragdoll joint local frames later on
Set ragdoll attachment mode and local frames on all joints
Setup hinge motor on ragdoll (needs testing)
Setup fixed joint frequency and damping on ragdoll
Setup slider joint limits on ragdoll
Save ragdoll child objects so things can be attached to them in editor
Update Conveyor component to set collider surface velocity, this component doesn't really need to exist anymore though
Conveyor shouldn't use static collider
Move mirror component to work in progress
Fix all deprecation warnings
Drive kinematic ragdoll parts with smooth move to the animated bone transform
Ragdoll smooth moves kinematic rigidbodies to renderer bone, as an added benefit it means we don't need to calculate bone velocities, the rigidbody already has it when switching to dynamic
These floors should be static in physics_simple scene
Add IgnoreRoot to ragdoll, mostly so I can test motion enable toggle, needs better name
Set ragdoll transform to root body transform. Use absolute flag for child rigidbodies so parent transform doesn't fuck them
Parts have linear and angular damping, so use them
Dynamic joint scaling https://files.facepunch.com/layla/1b1311b1/sbox-dev_8tUelwOLEE.mp4
Scale ragdoll joint local frames by body world scale
Add motion enabled support to ragdoll, motion disabled drives kinematic bodies using render bones https://files.facepunch.com/layla/1b1211b1/sbox-dev_x0MIf0ioIl.mp4
Destroy physics on ragdoll destroy too
Clear physics bones when switching out renderer
Add rigidbody flags to ragdoll
Add physics lock to ragdoll
Use renderer bone transform to set up ragdoll rigid bodies if they exist https://files.facepunch.com/layla/1b1211b1/sbox-dev_Rr8wJCrHB6.mp4
Joint desc limits are in degrees
Set ragdoll collider surfaces
Add work in progress ragdoll component that creates child rigid bodies from model physics https://files.facepunch.com/layla/1b1211b1/sbox-dev_CS4vIaEj8o.mp4
Add mirror example component, this isn't ready to be used in games, it's for us to debug rendering issues
Use !IsValid instead of == null or is null for any IValid
Use IsValid instead of != null or is not null for any IValid
Fix up player_controller scene
Switch player grabber back to physics body, just don't grab statics. Use IsValid checks because grabbed body can be deleted
Change player grabber to allow unfreezing
Update terrain scene, add bullshit testing surfaces to terrain materials
Move shatterglass to a library
Use plane collider for some scenes
Update shatter_glass.scene
Add shatter glass example component, it can live here for now
Set damage position in player grabber shoot
Update joints scene to use physics grabber