{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":746374958,"defaultBranch":"master","name":"LC_OpenBodyCams","ownerLogin":"Zaggy1024","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2024-01-21T21:23:02.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/3149592?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1705872204.0","currentOid":""},"activityList":{"items":[{"before":"62c288ff63f71691022381c480995379f6495c84","after":"7e7a9de0e6d84239906f77d1ea3bcef30a7b83f0","ref":"refs/heads/master","pushedAt":"2024-09-18T01:59:11.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Add an option to scale the font size of the overlay","shortMessageHtmlLink":"Add an option to scale the font size of the overlay"}},{"before":"700e06875f8034efb19a23f6de3145ec273cd95f","after":"62c288ff63f71691022381c480995379f6495c84","ref":"refs/heads/master","pushedAt":"2024-09-18T01:56:33.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Add an option to scale the font size of the overlay","shortMessageHtmlLink":"Add an option to scale the font size of the overlay"}},{"before":"507e0601463512cbd5df0e848db9ae580c5304ea","after":"700e06875f8034efb19a23f6de3145ec273cd95f","ref":"refs/heads/master","pushedAt":"2024-09-17T23:44:16.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Use a custom pass to draw to a transparent RenderTexture\n\nRendering using a custom pass allows us to forward-render directly to a render texture with transparency, avoiding the main camera buffer that lacks alpha. Thus, we no longer have to mask the text, and we can use rich text colors and icon sprites if they are ever needed.","shortMessageHtmlLink":"Use a custom pass to draw to a transparent RenderTexture"}},{"before":"504ea4d9b6fd73b167852ad9b424aa9d8672cf1b","after":"507e0601463512cbd5df0e848db9ae580c5304ea","ref":"refs/heads/master","pushedAt":"2024-09-13T07:20:42.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Use a custom pass to draw to a transparent RenderTexture\n\nRendering using a custom pass allows us to render to the custom buffers which are set up to use R8G8B8A8 in Lethal Company, meaning that we can get alpha in the output. Thus, we no longer have to mask the text, and we can use rich text colors and icon sprites if they are ever needed.","shortMessageHtmlLink":"Use a custom pass to draw to a transparent RenderTexture"}},{"before":"83d9537dc0f559d6140b706e3347c1660115d784","after":"504ea4d9b6fd73b167852ad9b424aa9d8672cf1b","ref":"refs/heads/master","pushedAt":"2024-09-11T20:05:51.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Create a mesh from the monitor screen submesh for the overlay\n\nStep by step, the process to create the overlay is:\n1. Split out the monitor's screen submesh into its own mesh\n2. Create an object and align it exactly to the monitor's position\n3. Assign that mesh to the new object\n4. Create a camera/canvas combo that draws grayscale text to a render texture\n5. In a shader on the mesh's renderer, assign the alpha channel from the grayscale render texture\nThus, the overlay mesh becomes a transparent material with only the text visible on it, allowing the original opaque screen to be seen through it.","shortMessageHtmlLink":"Create a mesh from the monitor screen submesh for the overlay"}},{"before":"f1b87e94c211dd94893a562e065d2497a6cfc14e","after":"83d9537dc0f559d6140b706e3347c1660115d784","ref":"refs/heads/master","pushedAt":"2024-09-11T18:48:23.000Z","pushType":"push","commitsCount":6,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Create a mesh from the monitor screen submesh for the overlay\n\nStep by step, the process to create the overlay is:\n1. Split out the monitor's screen submesh into its own mesh\n2. Create an object and align it exactly to the monitor's position\n3. Assign that mesh to the new object\n4. Create a camera/canvas combo that draws grayscale text to a render texture\n5. In a shader on the mesh's renderer, assign the alpha channel from the grayscale render texture\nThus, the overlay mesh becomes a transparent material with only the text visible on it, allowing the original opaque screen to be seen through it.","shortMessageHtmlLink":"Create a mesh from the monitor screen submesh for the overlay"}},{"before":"b28df10fd6d31daf9bb8f0e9721c6ae2032f5212","after":"f1b87e94c211dd94893a562e065d2497a6cfc14e","ref":"refs/heads/master","pushedAt":"2024-09-07T18:43:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Remove the obsolete ResolutionOverride property from BodyCamComponent","shortMessageHtmlLink":"Remove the obsolete ResolutionOverride property from BodyCamComponent"}},{"before":"1f335077c32edae9cbdd1a4c2ea0cd1c11c96def","after":"b28df10fd6d31daf9bb8f0e9721c6ae2032f5212","ref":"refs/heads/master","pushedAt":"2024-09-07T18:40:29.000Z","pushType":"push","commitsCount":6,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Reorganize fields/properties within BodyCamComponent\n\nTo facilitate finding fields more easily, they are now ordered and grouped more consistently, and categorized into regions. Public API comes first in the file.\n\nAll API properties now have comments describing their usage.","shortMessageHtmlLink":"Reorganize fields/properties within BodyCamComponent"}},{"before":"3db577cea4c56750bfe31206439a35c363c26a1f","after":"1f335077c32edae9cbdd1a4c2ea0cd1c11c96def","ref":"refs/heads/master","pushedAt":"2024-09-06T00:21:51.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Use Publicizer to access ConfigFile.OrphanedEntries for migration","shortMessageHtmlLink":"Use Publicizer to access ConfigFile.OrphanedEntries for migration"}},{"before":"a1fa42912e3b6d603b6c8465a2b07598a443a74d","after":"3db577cea4c56750bfe31206439a35c363c26a1f","ref":"refs/heads/master","pushedAt":"2024-08-30T20:51:12.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Add a property to determine whether a body cam is remote from the ship\n\nThis is (initially) intended to be used by Lethal Elements to apply its static/distortion effect to the screen when a solar flare is present.","shortMessageHtmlLink":"Add a property to determine whether a body cam is remote from the ship"}},{"before":"7932e47835e2baf861723c1811035fd31c09e77e","after":"a1fa42912e3b6d603b6c8465a2b07598a443a74d","ref":"refs/heads/master","pushedAt":"2024-08-23T22:58:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Correct the grammar for cosmetics log message","shortMessageHtmlLink":"Correct the grammar for cosmetics log message"}},{"before":"02808834f92cce72b17bff4c5044f23e0e183167","after":"7932e47835e2baf861723c1811035fd31c09e77e","ref":"refs/heads/master","pushedAt":"2024-08-18T04:19:48.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Bump the version to 2.2.4 and update the changelog","shortMessageHtmlLink":"Bump the version to 2.2.4 and update the changelog"}},{"before":"4bf103ff4e159c7b365c11e5bab3bdadda775cd6","after":"02808834f92cce72b17bff4c5044f23e0e183167","ref":"refs/heads/master","pushedAt":"2024-08-09T01:37:31.000Z","pushType":"push","commitsCount":9,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Actually update the resolution of the body cam when the option changes\n\nThe call to UpdateAllCameraSettings() no longer affects the resolution of the main body cam since 97d3f4d.","shortMessageHtmlLink":"Actually update the resolution of the body cam when the option changes"}},{"before":"c285f8526b72c33731453331f8e59a042594fa9f","after":"4bf103ff4e159c7b365c11e5bab3bdadda775cd6","ref":"refs/heads/master","pushedAt":"2024-06-26T01:38:38.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Bump the version to 2.2.1 and update the changelog","shortMessageHtmlLink":"Bump the version to 2.2.1 and update the changelog"}},{"before":"edd1e9f8e9b13ada0cf6fd6193e0dec0587c580e","after":"c285f8526b72c33731453331f8e59a042594fa9f","ref":"refs/heads/master","pushedAt":"2024-05-28T22:45:39.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Use MSBuild Copy tasks to copy to the package directory","shortMessageHtmlLink":"Use MSBuild Copy tasks to copy to the package directory"}},{"before":"cce0607230573032c479a9350f487aec24c0f531","after":"edd1e9f8e9b13ada0cf6fd6193e0dec0587c580e","ref":"refs/heads/master","pushedAt":"2024-05-24T07:08:52.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Bump the version to 2.2.0 and update the changelog","shortMessageHtmlLink":"Bump the version to 2.2.0 and update the changelog"}},{"before":"aa6edaee4e2bff2d34fc4f7dc5672447073e6484","after":"cce0607230573032c479a9350f487aec24c0f531","ref":"refs/heads/master","pushedAt":"2024-05-22T21:34:32.000Z","pushType":"push","commitsCount":9,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Only enable the external camera for the door screen if it is visible\n\nBy checking whether the renderer is considered visible, we can prevent the external camera from rendering if the door screen object is deactivated.","shortMessageHtmlLink":"Only enable the external camera for the door screen if it is visible"}},{"before":"9c13fc95edfd50fa21eae3eb058b021c2dac610c","after":"aa6edaee4e2bff2d34fc4f7dc5672447073e6484","ref":"refs/heads/master","pushedAt":"2024-05-14T03:48:04.000Z","pushType":"push","commitsCount":8,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Bump the version to 2.1.0 and update the changelog","shortMessageHtmlLink":"Bump the version to 2.1.0 and update the changelog"}},{"before":"3b3b53dcd146caae93feaef8627d1ceb5fceef50","after":"9c13fc95edfd50fa21eae3eb058b021c2dac610c","ref":"refs/heads/master","pushedAt":"2024-05-14T01:13:08.000Z","pushType":"push","commitsCount":12,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Don't index out of bounds parsing colors with less than 3 components","shortMessageHtmlLink":"Don't index out of bounds parsing colors with less than 3 components"}},{"before":"33972b2395de095fd2add770609eb5ddb5c633c4","after":"3b3b53dcd146caae93feaef8627d1ceb5fceef50","ref":"refs/heads/master","pushedAt":"2024-05-12T06:31:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Use better phrasing in the changelog for the EnableCamera option","shortMessageHtmlLink":"Use better phrasing in the changelog for the EnableCamera option"}},{"before":"f0fc0e856b5ae874eac2005731db7136f6c8bb34","after":"33972b2395de095fd2add770609eb5ddb5c633c4","ref":"refs/heads/master","pushedAt":"2024-05-12T06:27:53.000Z","pushType":"push","commitsCount":9,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Bump the version to 2.0.3 and update the changelog","shortMessageHtmlLink":"Bump the version to 2.0.3 and update the changelog"}},{"before":"d53ee28bb601fd4b6c1efa36e9c11a53ffdb735d","after":"f0fc0e856b5ae874eac2005731db7136f6c8bb34","ref":"refs/heads/master","pushedAt":"2024-05-12T00:42:14.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Correct the version check for ShipUpgradeEnabled migration\n\nThis should have no effect in practice, since the initial version that is migrated from is 2.0.0, but let's be clear about what it's doing.","shortMessageHtmlLink":"Correct the version check for ShipUpgradeEnabled migration"}},{"before":"6cc156b428449efbf5de97984fd075d57c0801c1","after":"d53ee28bb601fd4b6c1efa36e9c11a53ffdb735d","ref":"refs/heads/master","pushedAt":"2024-05-11T22:01:54.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Bump the version to 2.0.1 and update the changelog","shortMessageHtmlLink":"Bump the version to 2.0.1 and update the changelog"}},{"before":"d8be9b6bdac0b497a3693831e62526dff320e846","after":"6cc156b428449efbf5de97984fd075d57c0801c1","ref":"refs/heads/master","pushedAt":"2024-05-11T19:06:34.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Bump the version to 2.0.0, and update the changelog and readme","shortMessageHtmlLink":"Bump the version to 2.0.0, and update the changelog and readme"}},{"before":"044293421934e267757059b426c6e7d2672607a5","after":"d8be9b6bdac0b497a3693831e62526dff320e846","ref":"refs/heads/master","pushedAt":"2024-05-11T18:53:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Bump the version to 2.0.0, and update the changelog and readme","shortMessageHtmlLink":"Bump the version to 2.0.0, and update the changelog and readme"}},{"before":"9aa0f9fe8dff23ca49f515356655d21d14491c41","after":"044293421934e267757059b426c6e7d2672607a5","ref":"refs/heads/master","pushedAt":"2024-05-11T18:26:37.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Allow changing the external camera's screen's emissive color","shortMessageHtmlLink":"Allow changing the external camera's screen's emissive color"}},{"before":"4dc778eede64a701223ae76fe8f25c2f39b7422e","after":"9aa0f9fe8dff23ca49f515356655d21d14491c41","ref":"refs/heads/master","pushedAt":"2024-05-11T18:09:04.000Z","pushType":"push","commitsCount":45,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Allow changing the external camera's screen's emissive color","shortMessageHtmlLink":"Allow changing the external camera's screen's emissive color"}},{"before":"171520aba4a5543fc19f566f574698d510a43c95","after":"4dc778eede64a701223ae76fe8f25c2f39b7422e","ref":"refs/heads/master","pushedAt":"2024-04-20T16:43:00.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Stop tracking clinging tulip snakes when they are destroyed","shortMessageHtmlLink":"Stop tracking clinging tulip snakes when they are destroyed"}},{"before":"7b4a196e31e553b563a1c716f89c01aa329c456f","after":"171520aba4a5543fc19f566f574698d510a43c95","ref":"refs/heads/master","pushedAt":"2024-04-20T16:31:09.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Add support for changing perspective for clinging tulip snakes\n\nImplement a transpiler to get the method body for FlowerSnakeEnemy.SetClingingAnimationPosition() to pull two blocks of code, one for setting the first person clinging position, and one for setting the third person clinging position.\n\nThen, use that in ViewPerspective to override the original position before rendering in a forced perspective.\n\nTulip snakes clinging to players are tracked using patches to FlowerSnakeEnemy's SetClingToPlayer() and StopClingingOnLocalClient() functions, where the clingingToPlayer field is set.","shortMessageHtmlLink":"Add support for changing perspective for clinging tulip snakes"}},{"before":"ca0cd1a97496b912c8f52d699de76d217dbe7cf6","after":"7b4a196e31e553b563a1c716f89c01aa329c456f","ref":"refs/heads/master","pushedAt":"2024-04-20T16:29:35.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Zaggy1024","name":null,"path":"/Zaggy1024","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3149592?s=80&v=4"},"commit":{"message":"Add support for changing perspective for clinging tulip snakes\n\nImplement a transpiler to get the method body for FlowerSnakeEnemy.SetClingingAnimationPosition() to pull two blocks of code, one for setting the first person clinging position, and one for setting the third person clinging position.\n\nThen, use that in ViewPerspective to override the original position before rendering in a forced perspective.\n\nTulip snakes clinging to players are tracked using patches to FlowerSnakeEnemy's SetClingToPlayer() and StopClingingOnLocalClient() functions, where the clingingToPlayer field is set.","shortMessageHtmlLink":"Add support for changing perspective for clinging tulip snakes"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0xOFQwMTo1OToxMS4wMDAwMDBazwAAAAS5JVET","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0xOFQwMTo1OToxMS4wMDAwMDBazwAAAAS5JVET","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNC0yMFQxNjoyOTozNS4wMDAwMDBazwAAAAQ16R4v"}},"title":"Activity ยท Zaggy1024/LC_OpenBodyCams"}