13,872 Commits over 1,552 Days - 0.37cph!
Initial support for weld and revolute joints
Cleaning Handle Stuff
Allow Tasks/Await
Handles for IPhysAggregateInstance (we're calling it PhysicsGroup)
UTIL_Remove for client
Added Entity.PhysicsGroup property
PhysicsGroup class
Interop: When getting a Handle class, we send native IntPtr but we recieve Handles
Updating Binds
Tests to see if accessing PhysicsGroup after entity is deleted causes a crash
Added PhysicsBody ManagedHandle
Added PhysicsWorld ManagedContext
Added ManagedContext, set it on created PhysicsWorld
Interop: Allow multiple TypeNameAttribute
Interop: Added [Handles attribute syntax (see engine\Definitions\readme.txt)
Switched ManagedHandle to an int
Made PhysicsBody a Handle type
Ragdoll tweaks
Add vphysics/rubikon to sbox_game
Added Transform.WorldToLocal, Transform.LocalToWorld
entity.CopyBonesFrom( ent )
Added DebugOverlay.Skeleton
SetBoneTransform also sets the physics object tx if the bone has one
Rename EngineEntityBase to NativeEntityClass to avoid ambigiuty
Can create pure clientside entities
Updated all Lerp/Slerp functions to have an optional clamp param, defaulted to true
Proper versions of Set/GetBoneTransform
Fixed AnimEntity NativeEntityClass
Wip test code
Merge branch 'master' of sbox
Don't assert when Qt can't enumerate a special font family
Merge branch 'master' of sbox
Merge branch 'master' of sbox
Yank DX9 and other unused stuff, better format groups.vpc
Remove conflicting shaders from core/
Disable SM3_0 compilation entirely and conditionally ignore non-SM5_0 shaders
Fix addon path on ReadVfxFile being inverted
Use addon-aware ReadVfxFile method for VFX Compile Helpers
Cleanup
Merge branch 'master' of sbox
Bind GetWorldspaceBones, GetBoneParent, GetBoneName
Draw bones in dev camera
Added constructor to convert TransformUnaligned to a Transform
Safe to assume SkeletonInstance exists, it's the default body component for model entity
Tweaked fall anim to stop the head looking down
Bind CGameSceneNode
Added Transform (counterpark to CTransformUnaligned)
Rotation equality
Bind a bunch of skeleton stuff
Create BoneFlags.cs
Bind Transform
Remove unused code
Fixed ragdoll delayed render
Update tools
ModelDoc: Don't do ScaleAndMirror on any of the physics stuff. Their scaled sizes/positions aren't reflected in the modeldoc viewport - so end up being different scales to what you think!! Should we be disabling it like this or trying to reflecty the scale in the viewport?
Bind CBaseAnimating BecomeRagdollOnClient
Add ragdoll setup to citizen model
(test) Become a ragdoll if Use pressed
Toggle devcam with devcam command
Added Rotation Up, Down
Added Rotation.LookAt( Vector3 forward )
Camera.Activated when switching to it (allows initialization)
Added DebugOverlay.Axis
Added ModelEntity.OOBBox, CollisionPos, CollisionRot properties
Fixed LastButtons getting stomped in ClientInput
Update DevCamera.cs
Removing some more unused code
Fixed not overriding buttons properly
Camera is primarily responsible for building ClientInput - but Gamemode, Player, Animator and Controller all get a go on it
DebugCamera override BuildInput, prevent player input
Fixed infinite loop in Vector2 constructor
Clear look input deltas if UI wants the mouse
Added Rotation.Angles()
Pass ClientInput to Gamemode
Updated default keys with controller binds
Added Rotation +, *, -, FromAxis
InteropGen - fixed accidentally hardcoded NativeEngine.ViewDesc in AsRef
Bind ClientInput
Changing these from static so we can access them in clientinput.cpp
Hook input processing in CClientInput::ProcessInput
use +iv_ binds
Removed ambigious InputButton's (MoveLeft, MoveRight, Speed)
Pass ButtonBits to ClientInput
Delete clientinput_camera.cpp, clientinput_joystick.cpp, inputmovement.cpp/h
Access iv's directly,. delete FindSource2ClientInputVar
CalcButtonBits uses InputValueDigital's instead of kbutton_t
No need for CLinkInputValuesToKButtons now
Deleted kbutton_t
Deleted legacy IN_ concommands
Deleted a ton more redundancy input code
Noclip is now defined in managed https://files.facepunch.com/garry/58b93b13-1881-4008-b343-03e7e5f3d999.mp4
Merge branch 'master' of sbox
Clean up unused stuff from ShaderCompile_CompileShaders
Merge branch 'master' of sbox
Increase model turn speed if ducked
Fix WishVelocity calc
testmap with duck jump tests
Duck jumping
Merge branch 'master' of sbox
Move vfxcompile headers to Common fodler
Make vfxcompile compile as an importable library
Modify Vfxcompile to be hookable to materialsystem, expand methods to flexibilize how shaders will be compiled, add namespace to shared vfxcompile methods
Add vfxcompile to materialsystem2
Expand shadercompile concommand, hook modified VFXCompile::CompileShaders method to it
Merge branch 'master' of sbox
Added DebugOverlay.ScreenText
Fixed player getting stuck in corner
Moved 'kill' convar to managed
Correctly state which addon a shader comes from for tools
Clean up how vcs shaders are loaded
Added basic third person camera
Toggle first/third camera with mouse2
Start on DebugCamera - switch to it using E
Added CRenderComponent.SetClientAllowDraw (this component is networked so calling SetRenderingEnabled clientside gets stomped)
Added Viewer property to Camera
Simplify C_BaseEntity::UpdateVisibility
Call UpdateVisibilityAllEntities when g_ViewEntity changes
C_BaseEntity::ShouldDraw returns false if it's g_ViewEntity
FirstPersonCamera test, show the player model when holding attack1
net5 has problems with structs and [UnmanagedCallersOnly] - so pass as a IntPtr Unsafe.AsRef if var has flag asref
Added ViewDesc shared struct
Call GameLoop.GetView from SetUpView to set up the view params
Added Camera class
Added GetActiveCamera to Gamemode
Added Camera property, GetActiveCamera to Player
Added FirstPersonCamera
Test gamemodes use FirstPersonCamera
GameSceneNode: if in prespawn or no heirachy, redirect SetLocal* to SetAbs* [RISKY]
Bind EntitySystem.ExecuteQueuedCreation
Update gamescenenode.cpp
We can use sizeof now instead of Marshal.SizeOf
Fixed interop reporting struct size mismatch causing false subsequent mismatches
Skip trying to download files if we're a listen server host
Simple event system to allow PlayerController to store messages for PlayerAnimator (and Player if it wants them)
Rotation.Clamp optional overload returns the amount clamped by
Shuffle feet when rotating (disabled because no aniamtion for it)
Clean/Document StandardPlayerAnimator
Moved Player.Tick, Respawn, OnKilled to BasePlayer
Added Rotation.Difference
Added Rotation.Angle()
Added Rotation.Slerp
Added Rotation.Clamp
Added PlayerAnimator system
Added Entity.WorldToLocal( vec )
Made Player abstract, created BasePlayer in Sandbox.Base addon
Output changed [Replicate] properties to the .codegen
Add body groups to citizen, add ModelEntity.SetBodygroup
Added Rotation.LookAt 😅
Keep player model upright
Don't SetLocalAngles in c_baseplayer
Binding a bunch of animgraph functions
Fix crashes with bad animgraph input (ankles)
Added basic walk animgraph for citizen
Added Rotation.Inverse
Added AnimatingEntity.SetAnimParam
Renamed AnimatingEntity to AnimEntity
Fixed UserInput forward/side/up not properly clamped
Added temporary SetAnimParam to WalkController
Players call AnimFrame on server after simulating
Don't call animrame in WalkController
Update AnimatingEntity.cs
Set SUPPORTS_ANIM_GRAPH 1
Run/Walk keys work
Rename PlayerController.Run to PlayerController.Tick (avoid ambiguity)
Add animationsystem to sbox_game
Fix crash in CGroundIKSolveInstanceData
Citizen animgraph start
Don't get stuck in the ceiling
Added TraceResult.SurfaceFriction
CMoveData, IGameMovement no longer needed
WalkController Clean
Removed AirAccelerate, Accelerate can do it
tweak model sizes/physics
testmap update
Merge branch 'master' of sbox
Allow for shaders to be referenced or open from addons, modularize loaidng
Initial methods to allow easy compilation of Vfx files in engine
Reenable mat_reloadmaterials
Add test shaders addon
Add shadertest map, will be used in the long term for rendering reference
Initial commit of user shader headers
Merge branch 'master' of sbox
Added ModelEntity.ViewOffset
PlayerController can set the ViewOffset
Don't try to rotate skeleton if it has no bones
Gravity property
TestMap update