3,522 Commits over 1,338 Days - 0.11cph!
Dump embedded wav phonemes to sound meta if we don't have a meta, meta takes priority over embedded
Setup model viseme data and phoneme mapping from model keyvalues
Drive faceposer with model viseme data while we have this tool
Update mouth state
Apply visemes to baseanimating with game weights
Flex overrides takes priority over game weights
Add phoneme mapping to model metadata so it doesn't have to be hardcoded in engine
Register model meta as file dependency
Allow managed to add to modeldoc tools menu
Add viseme editor https://files.facepunch.com/layla/1b2511b1/sbox-dev_QrIn49oBOM.mp4
Compile viseme data into citizen model
Fix clothing container causing assert when calling SetBodyGroup on a entity with no model
Rubikon: Sphere shape keeps a unscaled copy so rescale can never be incorrect, fixes sphere scale out of sync on client. Sphere and Capsule refresh debug shape on rescale.
Only call UpdateShadow for physics body if we have a shadow controller, physics body scale is getting stomped
ShaderGraph: Dynamic branch UseSecondaryCoord in texture coord in preview mode to avoid a shader recompile for this option
Allow VoxelChunk to be created without dependency on VoxelSurface
Add AnimatedEntity.CopyAnimParameters to be able to easily sync params from another entity like player to viewmodel
Fix streaming resampled audio, keep decoding until there's enough for output
Add DistanceMin and DistanceMax to music player
Audioplayer (#1167)
Add MusicPlayer class to stream mp3 etc from disk or URL with control over playback (seeking, pausing, looping etc)
Hook up video_bitrate and video_framerate to recorder
Try to preserve child local scale when bone merged https://files.facepunch.com/layla/1b1311b1/sbox-dev_H6RHi9sauH.png
Request seek but do the actual seeking in the decode thread so we don't block
Fix GetMetadata not using key
Remove random using, how did this get here
Get title from title metadata or try StreamTitle if it doesn't exist
Helps if I initialize the volume to 1
return zero duration for nopts
AudioPlayer -> MusicPlayer in binds
internal constructor, static Play and PlayUrl
Make GetMeta internal, add Title instead
AudioPlayer -> MusicPlayer
Add PlaybackTime and Duration
Logging channel for audio player
Don't lock mutex before checking play job has finished
Whitelist a bunch of common codecs
Don't block waiting for play job to finish
Add TryGetMeta and GetMetaOrDefault
Add events for finished and repeat
Add AudioPlayer.GetMetadata
Codec whitelist
Fix sound streams (and probably other sounds) getting stomped when calling StopSoundEvent with invalid guid, never do this
Fix some NRE's found in logs of people shutting down on game startup
Add audioplayer to play mp3 or whatever with control over playback (seek, pause, etc)
ShaderGraph: Protect against textures that fail to compile
Apply first update to damped value with no damping to initialize to target
AnimGraph: Set damped value to target value on first update
null check g_pApplication just incase
ShaderGraph: Compile textures so that images can be used for texture nodes https://files.facepunch.com/layla/1b0711b1/sbox_EXhMp9FGvJ.png
ShaderGraph: Center on material node when opening a graph so you don't get lost
Disable texture streaming when rendering asset thumbnail or video
Creating mipped textures from managed flushes render context before generating mips, fixes corrupted menu textures with some amd drivers
Add rgb -> hsv and hsv -> rgb nodes
Include functions in vertex shader too
ShaderGraph: Allow compiler to insert functions into generated code
Use result function for blend node
Delete blendmodes.hlsl (yuck)
ShaderGraph, default input to zero for unary nodes when input is missing so errors don't get triggered
ShaderGraph: Add round node